昨日、社内に置いているCentOS4.7サーバーから自分のGmailへメール送信してみたら、Undelivered Mail Returned to Senderってメーラーデーモンさんがリターンメール返してきた。↓中身。
<bubbkis @ gmail.com>: host gmail-smtp-in.l.google.com[209.85.143.114] said:
550-5.7.1 [**.**.**.**] The IP you're using to send mail is not
authorized 550-5.7.1 to send email directly to our servers. Please use the
SMTP 550-5.7.1 relay at your service provider instead. Learn more at
550 5.7.1 http://mail.google.com/support/bin/answer.py?answer=10336
i6si3435826tid.5 (in reply to end of DATA command)
英語よくわからんけど、「メール送るときはプロバイダーのSMTP使って送ってこい、カス。」と言っとるわけですね。
はい、分かりましたということで今回は、
PostfixのRelayhost設定にプロバイダーのSMTPを指定して、メール送信は全部プロバイダーのSMTP経由で送信するというメモです。(当方のプロバイダーはアサヒネットなので、アサヒネットじゃない人は適当に変えて下さい。)
ついでに社外からこのSMTPサーバーを使うときにOP25Bに引っかかる人がいるのでOP25B対策もしました。(IPマスカレード対応ルーターで、ルーター外側のポート587を、ルーター内側のポート25に対応させただけですけど。)
- # vi/etc/postfix/main.cf
## relayhostへプロバイダーのSMTPサーバーを指定。 relayhost = [op25b.asahi-net.or.jp] ## SMTP Submission port Setting ## ファイルの最後に追加 smtp_sasl_auth_enable = yes smtp_sasl_password_maps = hash:/etc/postfix/authinfo smtp_sasl_security_options = noanonymous smtp_sasl_mechanism_filter = cram-md5,digest-md5,plain,login
smtp_sasl_mechanism_filter = へ設定する値の調べ方は、
# telnet プロバイダのSMTPサーバー名 25 または 587 Trying 202.224.39.196... Connected to mail.asahi-net.or.jp (202.224.39.196). Escape character is '^]'. 220 mail.asahi-net.or.jp ESMTP Postfix ehlo localhost ## ←タイプする。 250-mail.asahi-net.or.jp 250-PIPELINING 250-SIZE 250-ETRN 250-AUTH PLAIN LOGIN DIGEST-MD5 CRAM-MD5 250-AUTH=PLAIN LOGIN DIGEST-MD5 CRAM-MD5 ## ←これをsmtp_sasl_mechanism_filterへ設定する。 250-ENHANCEDSTATUSCODES 250-8BITMIME 250 DSN quit ## ←タイプする。 221 2.0.0 Bye Connection closed by foreign host.
- # vi /etc/postfix/master.cf
## 以下の3行のコメントアウトを外す。 submission inet n - n - - smtpd -o smtpd_etrn_restrictions=reject -o smtpd_client_restrictions=permit_sasl_authenticated,reject - プロバイダーのSMTPサーバーへの認証情報を設定する。(ユーザー名、パスワードはプロバイダー契約時に設定したもの。)
# echo [SMTPサーバー名]:587 ユーザー名:パスワード > /etc/postfix/authinfo # postmap /etc/postfix/authinfo
どこかのサイトで
# chmod 640 /etc/postfix/authinfo
ってroot以外参照できないようにパーミッション変更してたのを真似たら、一切ログイン出来なくなってしまってハマった。
- # /etc/rc.d/init.d/postfix reload でPostfix設定反映
以上で、メール送信はプロバイダーのSMTPサーバー経由になりました。
- Newer: [Ubuntu]Ubuntu8.10でPostGISを使えるようにする。[PostGIS]
- Older: [Ubuntu]Ubuntu8.10へRailsをインストールしたよ。[Rails]
Trackbacks:1
- Trackback URL for this entry
- http://ore.saizensen.net/archives/155/trackback
- Listed below are links to weblogs that reference
- [CentOS]いつの間にかCentOS4.7サーバーからGmailへメール送信出来なくなってた。[Postfix] from おれ最前線ねっと
- pingback from おれ最前線ねっと - [CentOS]PostfixでSubmissionポート(587番)を使う。[Postfix] 08-11-28 (金) 14:05
-
[...] 先日のエントリー[CentOS]いつの間にかCentOS4.7サーバーからGmailへメール送信出来なくなってた。[Postfix]で、 OP25B対策にIPマスカレード対応ルーターで、ルーター外側のポート587を、ルータ [...]




