[SendGrid] Azure에 빌린 CentOS가 spamhaus에 등록되어 있기 때문에 SendGrid를 사용하여 이메일을 보냅니다.

스토리



Azure에 빌린 서버에서 메일이 오지 않니? 이상하다?
라고 생각하면서도 방치 플레이.
문득 메일 로그를 보면 spamhaus에서 시작되고 있지 않습니까.
해제 신청하려고 하지만, 아무래도 Azure로부터의 메일 송신은 Microsoft의 정책에 의해 연주되고 있는 모습.

검색하면, 이런 기사가. . .
Azure에 메일 서버/SMTP 서버를 구축할 때의 참고 사항

Azure의 VM에서 직접 SMTP 등을 사용하여 메일을 보내는 것은 Azure 플랫폼으로 지원되지 않습니다.

우헤. 그렇다고 spamhaus에 등록하지 않아도. . .

그런 이유로 SendGrid 를 사용하기로 한 것이었습니다.

SendGrid 도입



매월 25,000통까지라면 무료로 사용할 수 있다고 합니다.

Azure Marketplace에서 구입합니다.

참조 → Azure의 Marketplace에서 SendGrid를 활용해 보세요.

Azure를 Microsoft 솔루션 파트너에서 배포하는 경우 Marketplace에서 구매할 수 없습니다. . .

Postfix 설정



SendGrid에 제대로 문서가 준비되어 있으므로 그것을 추적합니다.

참조 → Integrate SendGrid with Postfix

설정 파일 변경


/etc/postfix/main.cf 에 다음을 추가합니다.

/etc/postfix/main.cf
smtp_sasl_auth_enable = yes
smtp_sasl_password_maps = hash:/etc/postfix/sasl_passwd
smtp_sasl_security_options = noanonymous
smtp_sasl_tls_security_options = noanonymous
smtp_tls_security_level = encrypt
header_size_limit = 4096000
relayhost = [smtp.sendgrid.net]:587

비밀번호가 포함된 파일 만들기



새로 /etc/postfix/sasl_passwd 파일을 만들고 다음과 같은 내용으로 만듭니다.

/etc/postfix/sasl_passwd
[smtp.sendgrid.net]:587 ユーザ名:パスワード

사용자 이름과 암호는 Azure 포털에서 확인할 수 있습니다.

사용 권한을 변경하여 해시 DB화합니다.
$ sudo chmod 600 /etc/postfix/sasl_passwd
$ sudo postmap /etc/postfix/sasl_passwd

라이브러리의 존재 확인


$ rpm -q cyrus-sasl-plain
cyrus-sasl-plain-2.1.26-20.el7_2.x86_64

그렇지 않으면 yum 명령으로 설치하십시오.

Postfix 재부팅


$ sudo systemctl restart postfix

전송 확인


/bin/mail 명령이나 /usr/sbin/sendmail 명령을 사용하여 메일을 보낼 수 있는지 확인합니다.

수고하셨습니다.

2017/10/16 추가 - SendGrid 설정



기본적으로 일반 텍스트 메일은 multipart/alternative가 되며 읽음 추적을 위한 이미지가 포함됩니다.
필요하지 않으면 비활성화합니다.

설정 개소는 아래에 있습니다.
  • 메일 설정
  • Plain Content → Active로 설정합니다.

  • Tracking
  • Click Tracking → Inactive로 설정합니다.
  • Open Tracking → Inactive로 설정합니다.

  • 좋은 웹페이지 즐겨찾기