postfixとRedmineを連携させる 1.postfixでGmailを使えるようにする
個人プロジェクトの管理が必要になって来たためRedmineをVM上に立てた。
全体的な概要としては以下の通り
まずpostfixからGmail経由でメールを送れるようにする
コはコンピューターのコ | Postfix から Gmail 経由でメールを送る
ここを参考に、/etc/postfix/main.cfに以下のように追記
# GMail
relayhost = [smtp.gmail.com]:587
smtp_use_tls = yes
smtp_tls_CApath = /etc/pki/tls/certs/ca-bundle.crt
smtp_sasl_auth_enable = yes
smtp_sasl_password_maps = hash:/etc/postfix/sasl_passwd
smtp_sasl_tls_security_options = noanonymous
smtp_sasl_mechanism_filter = plain
続いて/etc/postfix/にsasl_passwdというファイルを作成し以下のように記述する
ファイルを読めないようにするのも忘れずに。今回は自分しかユーザがいない前提なので所有権を変更する必要はない。複数人がsudoerの場合は参考にあるように所有ユーザを変更すべきだろう。
chmod 600 /etc/postfix/sasl_passwd
(今思ったら今回の環境だと別にこれやっても意味ないな……)
続いてハッシュ形式に変更
postmap /etc/postfix/sasl_passwd
これでテストメールを送信
mail testmailaddress@gmail.com
ログを確認する
sudo cat var/log/maillog
...delays=0.12/0.2/3.3/0, dsn=4.7.14, status=deferred (SASL authentication failed;
(中略)
Please log in via your web browser
あっれー?とりあえずgmailにログインしてみる。するとこんなメールが届いてた
どうやらアクセスをgoogle側で弾いているようだ。今回はこのアカウントを送信専用としてしか使わないのでアプリへのアクセスを許可。再度送信してログを確認
sudo cat /var/log/maillog
(中略)
status=sent
やったー!(+1)