「Outbound Port25 Blocking」対応

最近は多くのプロバイダで「Outbound Port25 Blocking」を導入しているので、その対応方法。
ここでの対応方法は、プロバイダが用意したリレーサーバを用いて対応する。
なお、メールサーバは「Postfix」を利用しているものとしている。
「Postfix」の設定ファイル等のパスは環境ごとに適宜読み替える。

「Postfix」の設定

「Postfix」の設定

多くのプロバイダではSMTP-AUTH対応なので、SMTP-AUTHを利用する。

Unix# vi /etc/postfix/main.cf <= 設定ファイルの編集
relayhost = [プロバイダのリレーサーバのアドレス<= 追加( [ ] が必要)
smtp_sasl_auth_enable = yes <= SMTP-AUTHを利用する
smtp_sasl_password_maps = hash:/etc/postfix/isp_auth <= SMTPクライアント用テーブルの指定
smtp_sasl_security_options = noanonymous <= noanonymous は許可しない
smtp_sasl_mechanism_filter = cram-md5,digest-md5,plain,login <= プロバイダでサポートしている認証方式

ここで、上記の relayhost を
relayhost = [プロバイダのリレーサーバのアドレス]:587
と設定すると、Submissionポートへも転送できる。
また、smtp_sasl_mechanism_filter はプロバイダごとに異なる。
確認方法は以下のように行う。
なお、Submissionポートを利用する場合は、25番ではなく587番ポートにtelnetする。

Unix# telnet mail.example.com 25 <= プロバイダの25番ポートにtelnetする
Trying xxx.xxx.xxx.xxx...
Connected to mail.example.com.
Escape character is '^]'.
220 mail.example.com ESMTP Postfix
EHLO mail.example.com <= EHLOコマンドの入力
250-mail.example.com
250-PIPELINING
250-SIZE 10240000
250-STARTTLS
250-ETRN
250-AUTH PLAIN LOGIN DIGEST-MD5 CRAM-MD5 <= 認証方法
250-AUTH=PLAIN LOGIN DIGEST-MD5 CRAM-MD5 <= 認証方法
250 8BITMIME
quit <= ログアウト

SMTPクライアントテーブルの作成

Unix# vi /etc/postfix/isp_auth <= SMTPクライアントテーブルの作成
プロバイダのリレーサーバのアドレス ユーザ名:パスワード <= プロバイダから指定された内容を記述

SMTPクライアントテーブルのDB化

Unix# postmap /etc/postfix/isp_auth <= SMTPクライアントテーブルのDB化

Submissionポート対応

Submissionポート対応の場合、「Postfix」では以下の設定も必要。

Unix# vi /etc/postfix/master.cf <= 設定ファイルの編集
#submission inet n      -       n       -       -       smtpd
#       -o smtpd_etrn_restrictions=reject
#       -o smtpd_client_restrictions=permit_sasl_authenticated,reject
↓
submission inet n      -       n       -       -       smtpd <= コメント解除
       -o smtpd_etrn_restrictions=reject <= コメント解除
       -o smtpd_client_restrictions=permit_sasl_authenticated,reject <= コメント解除

「Postfix」の再起動

「Postfix」を再起動し、設定を反映させる。

Unix# /etc/init.d/postfix restart <= 「Postfix」の再起動
▲ページのトップへ