[postfix]メールをGmail経由で送る為のpostfix設定

投稿者: | 2017年9月17日

phpでmb_send_mail関数でメールを送信するもメールが送信されない場合、mb_send_mail関数の戻り値を確認してもtrueが返されている‥。

こういった場合はpostfixというメールサーバーソフトの設定をします。
Gmail経由で送るようにしますので、Gmailで使えるアカウントとパスワードが必要になります。

vi /etc/postfix/main.cf

relayhost = [smtp.gmail.com]:587

# 以下Gmail用設定
smtp_use_tls = yes
smtp_sasl_auth_enable = yes
smtp_sasl_tls_security_options = noanonymous
smtp_sasl_password_maps = hash:/etc/postfix/saslpass
smtp_sasl_mechanism_filter = plain
smtp_tls_CApath = /etc/pki/tls/certs/ca-bundle.crt

上位追記してmain.cfを閉じます。

vi /etc/postfix/saslpass

で以下を記入。

[smtp.gmail.com]:587 [gmailで使えるメールアドレス]:[パスワード]

上記アドレスはgmail.comでなくても、gmailに登録しているアドレスであれば何でもよいです。このアドレスがメールを送信した時の送信者アドレスになります。
※メールアドレスとパスワードを囲っている[]はいりません。

記入し終われば閉じて、

postmap /etc/postfix/saslpass

でsaslpass.dbが生成され、最後に

service postfix restart

で再起動。

以上で、メールが送信できるようになったはずです。