Proxmox VE 에서 Email 알람 사용하기.

안녕하세요. 달소입니다.

이번에는 Proxmox의 특장점중 하나인 Email 알람기능을 사용하는방법입니다.
Email 알람을 활성화 시킬 경우에 백업에대한알람 Disk 상태에 관한 알람등등 여러 방면에서 사용할 수 있기때문에 Proxmox를 사용하신다면 필수로 적용해주시면 되겠습니다.

범용적으로 사용하는 gmail을 기준으로 가이드를 작성하며 비슷한 방법으로 타 이메일 서비스도 사용가능하리라 생각합니다.

사전준비사항

사전준비사항으로는 Gmail 발송시 사용할 계정에서 메일발송을 위한 별도의 앱 패스워드를 하나 만들어주시는게 좋습니다.
계정 설정 -> 보안 -> 앱 패스워드

postfix를 이용한 메일발송하기

메일발송은 별도의 서버를 만들지않고 postfix를 이용해서 smtp 릴레이식으로 메일을 발송예정입니다.
셋팅을 위해서 먼저 쉘로 접속해주세요.

인증패키지 설치

apt-get install libsasl2-modules

발신이메일 정보 등록 및 설정

postfix에서 사용할 발신 이메일 정보를 넣어줍니다.
gmail 계정과 아까 앱 비밀번호로 만든 PW를 넣어주세요.

vim /etc/postfix/sasl_passwd

smtp.gmail.com [메일주소]@gmail.com:[앱패스워드]

내용을 넣어준다음 :wq로 저장해줍니다.

그리고 postmap 명령어를 통해서 해당 계정정보를 해시처리하고 root로만 볼수있게 끔 권한을 변경해줍니다.

postmap hash:/etc/postfix/sasl_passwd
chmod 600 /etc/postfix/sasl_passwd

postfix에 gmail 설정값 적용하기.

이제 postfix 설정값에 릴레이서버(smtp.gmail.com)정보를 추가해주겠습니다.
빨간색 사각형을 잘 봐주시고 기존 relayhost=은 주석처리해줘야합니다.

vim /etc/postfix/main.cf 을 열어서 아래 내용을 넣어주세요.

inet_protocols = all
relayhost = smtp.gmail.com:587
smtp_use_tls = yes
smtp_sasl_auth_enable = yes
smtp_sasl_security_options =
smtp_sasl_password_maps = hash:/etc/postfix/sasl_passwd
smtp_tls_CAfile = /etc/ssl/certs/Entrust_Root_Certification_Authority.pem
smtp_tls_session_cache_database = btree:/var/lib/postfix/smtp_tls_session_cache
smtp_tls_session_cache_timeout = 3600s

작성이 완료되었으면 postfix reload를 통해 데몬을 재시작해주시면 됩니다.

이메일 발송 테스트

테스트는 아래 명령어로 해주시면 됩니다.

echo "테스트 이메일" | mail -s "테스트 메일 제목" example@gmail.com

정상적으로 메일 수신이 안될시에는 /var/log/email.log 를 확인해주신뒤 에러로그를 확인해서 트러블 슈팅해주시면되겠습니다.

추가로 백업시에 아래처럼 받는메일주소를 넣어주면

백업완료시 훌륭하게 메일이 들어옵니다.