2013年4月12日金曜日

Gmail(Google Apps)経由でメールを送信するPostfixのSMTP設定

postfix_smtp_gmail 自宅内で開発している際にLAN内のLinux Serverからメールが送れなかったので、Gmail経由で送信するようにしたときの覚書。

環境:CentOS 5.9, Postfix 2.3.3

参考にしたのは下記ブログ

 

今使っているメールサーバがPostfixか確認する
# alternatives --display mta

変更する場合は
# alternatives --config mta

Sendmailを使ってた場合はchkconfigも忘れずに
# chkconfig --add sendmail
# chkconfig sendmail off
# chkconfig postfix on

Postfixの設定ファイルを編集。
# vi /etc/postfix/main.cf

myhostname = dev.hoge.net
mydomain = hoge.net
myorigin = $mydomain
inet_interfaces = localhost
mydestination = localhost.$mydomain, localhost
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_tls_security_options = noanonymous
smtp_sasl_mechanism_filter = plain
smtp_tls_CApath = /etc/pki/tls/certs/ca-bundle.crt

ログインユーザー情報ファイルを作成
# vi /etc/postfix/sasl_passwd

[smtp.gmail.com]:587 info@hoge.net:(password)

Google Appsなら送信用のユーザーを作ってもいいかもしれない。

ファイルのハッシュ化、権限変更してPostfix再起動
# postmap /etc/postfix/sasl_passwd
# chmod 600 /etc/postfix/sasl_passwd
# /etc/rc.d/init.d/postfix restart

送信テスト
# mail hoge@gmail.com

Subject: test
testhoge
.
Cc:

メールログを確認
# tail -f /var/log/maillog

メールキューの確認
# mailq

送信出来なかったキューの削除
# postsuper -d ALL

 

< 2014/07/02 Modified >
CentOS6 minimalをインストールした環境で試すと下記エラー

Jul  2 15:42:01 hoge postfix/smtp[9488]: AD30DA000: SASL authentication failed; cannot authenticate to server smtp.gmail.com[xxx.xxx.xx.xxx]: no mechanism available
Jul  2 15:42:02 hoge postfix/smtp[9488]: warning: SASL authentication failure: No worthy mechs found

ライブラリをインストールすると大丈夫。
# yum install cyrus-sasl-plain cyrus-sasl-md5

 

 

< Related Posts >

コメントを投稿
Related Posts Plugin for WordPress, Blogger...

Blog Archives