デフォルトでは、Postfix SMTP サーバ はローカルのネットワークやドメインからの、またはローカル宛の メール、Postfix がホスティングしているドメイン宛のメールだけを 受け取ります。その結果、システムはランダムな第三者からの バルクメールを転送するためのメールリレーとして使われることは ありません。
このドキュメント内の文章は例えば sendmail 形式の access リストや RBL (real-time blackhole list) ネームサーバを使った、 望まない eメールの配送を完全に防ぐような、アンチ UCE ポリシーを セットアップできるようにする方法をより詳細に記述します。
特に示されていなくても、ここで記述された全てのパラメータは main.cf ファイルに入れます。動作中の Postfix システムの パラメータを変更したら、postfix reload コマンドを実行する ことを忘れないでください。
現在はヘッダパターンに OK を指定しても何の有用な目的にも使えません。 OK で終わるルールはヘッダがマッチしたという影響があるだけです。 次のヘッダが REJECT にマッチするかも知れず、その場合もメールは 拒否されます。
注意: メッセージ本体は同時に位置行にマッチします。
メッセージヘッダと同様な複数行の概念はありません。
現在はパターンに OK を指定しても何の有用な目的にも使えません。
OK で終わるルールはヘッダがマッチしたという影響があるだけです。
次のヘッダが REJECT にマッチするかも知れず、その場合もメールは
拒否されます。
デフォルトでは、この制限はクライアントが RCPT TO コマンドを送る時に
適用されます。できるだけ早く制限の効果を出すためには、
smtpd_delay_reject = no を Postfix main.cf
設定ファイルで指定します。そうすると実装がまずいクライアント
ソフトウェアで予期しない結果を引き起こすかもしれません。
デフォルトでは、この制限はクライアントが RCPT TO コマンドを送る時に
適用されます。できるだけ早く制限の効果を出すためには、
smtpd_delay_reject = yes を Postfix main.cf
設定ファイルで指定します。そうすると実装がまずいクライアント
ソフトウェアで予期しない結果を引き起こすかもしれません。
HELO (EHLO) コマンドに特有の制限パラメータに加えて、クライアント
ホスト名やネットワークアドレスに基づく制限も指定することができます。
デフォルトでは、この制限はクライアントが RCPT TO コマンドを送る時に
適用されます。できるだけ早く制限の効果を出すためには、
smtpd_delay_reject = yes を Postfix main.cf
設定ファイルで指定します。そうすると実装がまずいクライアント
ソフトウェアで予期しない結果を引き起こすかもしれません。
送信者メールアドレスだけの制限に加えて、HELO/EHLO コマンドで
渡される情報やクライアントのホスト名やネットワークアドレスに
基づいた制限を指定することもできます。
上記に加えて、Postfix SMTP サーバ
はデフォルトで、その Postfix が最終配送先となる、
次のメールを受け取ります:
受信者メールアドレスだけの制限に加えて、送信者メールアドレスや、
HELO/EHLO コマンドで渡される情報やクライアントのホスト名や
ネットワークアドレスに基づいた制限を指定することもできます。
プライマリ MX ホストがネットワークブロックのリストにマッチする
必要もあれば、オプションの permit_mx_backup_networks
パラメータを使ってください。
関連設定パラメータ: permit_mx_backup_networks,
$mydestination,
$inet_interfaces.
ETRN ドメイン名に特有の制限に加えて、HELO/EHLO コマンドに渡される
情報に基づく制限や、クライアントホスト名やネットワークアドレスに
基づく制限を指定することもできます。
すなわち、デフォルトでは全てのネットワークが認められます。
main.cf ファイルにパターンを列挙する代わりに、
パターンファイルの絶対パスを指定することもできます。
Note: RBL 検索はデフォルトでは無効になっています。
ホストや配送先のアドレスが $relay_domains にマッチしたことに
なるのは、その名前や親ドメインが $relay_domains に挙げられた
名前やファイル、検索テーブルのいずれかにマッチした場合です。
それぞれのマップのエントリは送信者アドレスとそれを所有する
ログイン名を指定します。検索順序:
本体行のフィルタリング
body_checks パラメータは(本体行の中の MIME ヘッダを含む)
本体行で許されるものを制限します。
クライアントホスト名/アドレス制限
smtpd_client_restrictions パラメータはこのシステムが
どのクライアントからの SMTP コネクションを受けるかを制限します。
HELO (EHLO) コマンドの要求
smtpd_helo_required パラメータはクライアントが SMTP
セッションのはじめに HELO (または EHLO)
コマンドを送らなければいけないかどうかを決定します。
これを要求することで、止めることができる UCE ソフトウェアもあります。
HELO (EHLO) ホスト名制限
smtpd_helo_restrictions パラメータは HELO (EHLO)
でクライアントが送れるホスト名を制限します。ここを厳密にすることで、
止めることができる UCE ソフトウェアもあります。
厳密な RFC 821-形式のエンベロープアドレスの要求
strict_rfc821_envelopes パラメータは MAIL FROM や RCPT TO
コマンドで与えられるアドレスに関して、Postfix がどの程度許容するかを
制御します。不幸なことに、広く使われている Sendmail プログラムは
非標準的な振舞いの多くを許容するため、多くのソフトウェアが
それでうまくいくのが当然と思っています。RFC に厳密にすると、
望まないメールを止めるだけでなく、できの悪いメールアプリケーション
からの合法なメールもブロックしてしまいます。
送信者アドレス制限
smtpd_sender_restrictions パラメータは MAIL FROM
コマンドの送信者アドレスでこのシステムが受け取るものを制限します。
受信者アドレス制限
smtpd_recipient_restrictions パラメータは RCPT TO
コマンドの受信者アドレスでこのシステムが受け取るものを制限します。
そうでなければ要求を拒否します。relay_domains_reject_code
パラメータには拒否した要求に対する応答コードを指定します
(デフォルト: 554).
そうでなければ次の制限に進みます。
relay_domains_reject_code パラメータには拒否した要求に
対する応答コードを指定します (デフォルト: 554).
ETRN コマンド制限
正確には UCE 制限ではありませんが、smtpd_etrn_restrictions
パラメータは ETRN コマンドで指定することができるドメインや、
ETRN コマンドを実行することができるクライアントを制限します。
一般的な制限
以下の制限はクライアントホスト名やアドレス、HELO (EHLO) ホスト名、
送信者のメールアドレスおよび受信者のメールアドレスに使えます。
制限:
補助的な UCE 制御パラメータ
上のレベルへ | 基本
設定 | UCE 制御 | 速度
制御 | リソース制御 | アドレス操作