postfixからGmail経由で送信する
最近何かと話題のGmailをpostfixのrelayhostに指定して、メールを送信してみます。
OSはちょっと色々と有って、CentOS6で試しました。
色々探したところ、RedHatにCentOS7でのやり方が書いてありました。
https://access.redhat.com/solutions/3201002これだけだと不足だったのが後で分かったんですが・・・。
/etc/postfix/main.cf
relayhost = [smtp.gmail.com]:587
smtp_use_tls = yes
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_policy_maps = hash:/etc/postfix/tls_policy
# CentOS6 では以下も必要
smtp_tls_CApath = /etc/pki/tls/certs/ca-bundle.crt
CentOS6ではsmtp_tls_CApathの指定も必要でした。
また、これに伴ってca-certificatesも、最新のものに更新しておいて下さい。
/etc/postfix/tls_policy
[smtp.gmail.com]:587 encrypt
/etc/postfix/sasl_passwd
[smtp.gmail.com]:587 <user>@gmail.com:<password>
<user>は自分のGmailアカウントを、passwordは通常のパスワードを指定したのですが、送信出来ませんでした。
また色々と調べた結果、Googleの
アプリパスワードが別途必要でした。次で作成したものを記載します。
Googleアプリパスワードの設定
- セキュリティタブをクリックし、Googleにログインする方法から2段階認証プロセスを選択。
- アプリパスワードを選択し、アプリ名に適当な名前を入れ、作成を押すとパスワードが表示されるので記録。
※16文字と言いつつスペースが空いているのですが、スペースは取り除いて16文字にします。
設定・テスト
cd /etc/postfix
postmap sasl_passwd
postmap tls_policy
service postfix restart
自身のGmailへ送信してみます。
echo mailtest | mail -s mailtest <user>@gmail.com
こんな感じで届きました。
この投稿は 2024年1月30日 火曜日 16:27 に 未分類 カテゴリーに公開されました。 この投稿へのコメントは RSS 2.0 フィードで購読することができます。
このページの一番下でコメントを残すことができます。トラックバック / ピンバックは現在受け付けていません。