Gmail 経由でメールを送信するように Postfix を設定する

Gmail 経由でメールを送信するように Postfix を設定する方法を紹介します.この方法を使って送ったメールの From は Gmail のアドレスで書き換えられる点に注意して下さい.

環境

今回の検証に利用した環境です.

  • Ubuntu 16.04 (amd64)
  • Postfix 3.1.0

Postfix をインストールする

Postfix とテストに使用する mail コマンドをインストールします.

sudo apt install postfix bsd-mailx libsasl2-modules

設定中にいくつかの選択肢が表示されるので,Internet with smarthost を選択し,”SMTP relay host” には [smtp.gmail.com]:587 を選択します.

Gmail にリレーするための設定

/etc/postfix/sasl_passwd を作成し,Gmail の認証情報を記述します.ファイル名は自由に設定できます.

[smtp.gmail.com]:587 <username>@gmail.com:<password>

作成したファイルのパーミッションを変更し,postmap を実行します.

$ sudo chmod 600 sasl_passwd
sudo postmap /etc/postfix/sasl_passwd

/etc/postfix/main.cf に以下の内容を追記します.

smtp_use_tls = yes
smtp_sasl_auth_enable = yes
smtp_sasl_password_maps = hash:/etc/postfix/sasl_passwd
smtp_sasl_tls_security_options = noanonymous

設定の反映とテスト

Postfix を再起動し,メールを実際に送ってテストします.

$ sudo systemctl restart postfix.service
$ echo "Test message" | mail [email protected]

メールがうまく送信できなかったときは /var/log/mail.log を確認して,設定を修正します.