Image

ナレッジベース → Postfix を使用したスパム対策保護

[仮想サーバー]
公開日: 14.06.2023

Postfixの設定ファイルを使用すると、サービス自体でスパムを減らすためのより詳細な設定が可能です。このガイドでは、PTRレコードがない送信者、不正な挨拶を送る送信者、そしてDNSBLリストに基づいてメールをブロックします。

1. 設定ファイルに以下の設定を追加し、(行をコメントアウトします):

nano /etc/postfix/main.cf

#smtpd_relay_restrictions = permit_mynetworks permit_sasl_authenticated defer_unauth_destination

次に、以下の設定を追加します:

nano /etc/postfix/main.cf

smtpd_client_restrictions = permit_mynetworks permit_sasl_authenticated reject_unauth_pipelining permit

smtpd_helo_restrictions = permit

smtpd_sender_restrictions = permit_mynetworks permit_sasl_authenticated reject_non_fqdn_sender reject_unknown_sender_domain permit

smtpd_relay_restrictions = permit_mynetworks permit_sasl_authenticated defer_unauth_destination

smtpd_recipient_restrictions = permit_mynetworks permit_sasl_authenticated reject_non_fqdn_recipient reject_unauth_destination reject_unknown_recipient_domain reject_unverified_recipient reject_unknown_client_hostname reject_invalid_helo_hostname reject_non_fqdn_helo_hostname reject_unknown_helo_hostname reject_rbl_client b.barracudacentral.org reject_rbl_client dnsbl.abuse.ch reject_rbl_client bl.spamcop.net reject_rbl_client dul.ru permit

smtpd_data_restrictions = permit

smtpd_end_of_data_restrictions = permit

設定を適用するためにPostfixを再起動します:

systemctl restart postfix

ルールを追加または削除することで、送信者に対する要件の厳しさを調整できます。例えば、一般的なメールサービスは、サーバーの挨拶が正しくなく、PTRレコードがMXにマッピングされていないメールを受け入れることがよくあります。以下は各設定の説明です:

  • permit_mynetworks — mynetworksで指定されたすべてのアドレスを許可します。
  • allow_sasl_authenticated — 認証に成功したすべてのクライアントからのリクエストを許可します。
  • reject_unauth_pipelining — SMTPセッションの適切な順序をスキップして、事前に送信されたメールを拒否します。
  • reject_non_fqdn_sender — 送信者のアドレスが正しくない場合に接続を拒否します。
  • reject_unknown_sender_domain — 送信者のドメインがDNSのMXレコードまたはAレコードを持たない場合にリクエストを拒否します。
  • reject_non_fqdn_recipient — 受信者のアドレスが正しくない場合に接続を拒否します。
  • reject_unauth_destination — 認証なしでの接続を禁止します。
  • reject_unknown_recipient_domain — 受信者ドメインがDNSのMXレコードまたはAレコードを持たない場合にリクエストを拒否します。
  • reject_unverified_recipient — RCPT TOアドレスへのメールが拒否された場合、または受信者アドレスが利用できない場合にリクエストを拒否します。
  • reject_unknown_client_hostname — 送信者のPTRレコードと、それに対応するAレコードが存在するかを確認します。
  • reject_invalid_helo_hostname — HELO挨拶の構文を確認します。
  • reject_non_fqdn_helo_hostname — HELO挨拶で正しいFQDN名を要求します。
  • reject_unknown_helo_hostname — AレコードまたはMXレコードを持たない名前での挨拶を禁止します。
  • reject_rbl_client — 送信者がブラックリストに登録されているかどうかを確認します。
  • permit — 接続を許可します。各ブロックの最後に配置されており、禁止ルールに該当しないメールを配送します。




No Comments Yet