[email protected] からの外部メールをブロックするにはどうすればよいですか?

[email protected] からの外部メールをブロックするにはどうすればよいですか?

セキュリティ会社が私のメール サーバーをテストした結果、Postfix デーモンがオープン リレーであると主張しました。証拠は次のとおりです (セキュリティのため、mail.mydomain.com の有効なパブリック IP は 10.1.1.1 に変更されています)。

Relay User: postmaster Relay Domain: 10.1.1.1
Transaction Log: EHLO elk_scan_137 250-mail.mydomain.com 250-PIPELINING
250-SIZE 20480000
250-VRFY
250-ETRN
250-STARTTLS
250-AUTH PLAIN LOGIN 250-AUTH=PLAIN LOGIN 250-ENHANCEDSTATUSCODES 250-8BITMIME
250 DSN
MAIL FROM: postmaster@[10.1.1.1]
250 2.1.0 Ok
RCPT TO: postmaster@[10.1.1.1]
250 2.1.5 Ok

すでにルートへのメールをブロックしていますが、明らかに postmaster をブロックすべきではありません。サーバーから自分自身にメールを送信する機能はオープンリレーにはならないと思います。しかし、どうすれば偽装メールを安全にブロックできるのでしょうか?[メールアドレス]送信者?

[注: mxtoolbox.com を使用して自分自身をスキャンしましたが、安全でオープンリレーではないと言われています]

答え1

誰かが自分のメール サーバーの IP アドレス宛てにメールを送信できるという事実は、メール サーバーがオープン リレーであるかどうかとはまったく関係ありません。

オープンリレー管理ドメイン外のすべてのシステム宛のメールを受信し、転送します。これは明らかにここで示されていることではありません。

明らかにとても良いものなので、セキュリティ会社に彼らが吸っていたものが何なのか教えてもらいましょう。

答え2

まだ誰も言及していないように、これは SPF が解決するように設計された問題の 1 つです。DNS に正しい SPF レコードを公開し、サーバーに SPF レコードをチェックさせると、外部のサーバーが「From: *@yourdomain.com」で電子メールを送信することは許可されていないことがサーバーにわかります。さらに、これにより当面の問題が解決されるだけでなく、スパムもブロックされ、他のユーザーがスパムをブロックするのにも役立ちます。

SPF および電子メール/スパム問題の一般的な解決方法の詳細については、以下をお読みください。

スパム対策 - 電子メール管理者、ドメイン所有者、またはユーザーとして何ができるでしょうか?

マイケルが指摘したように、これは「オープンリレー」の問題ではありません。監査人がそう考えているなら、真剣にその監査人を解雇することを検討すべきです。これはそれほど難しいことではありませんし、用語や問題の重大性に関して彼らは完全に間違っています。

答え3

smtpd 制限を使用する必要があると思います。

私の設定の抜粋:

smtpd_helo_restrictions         =
    permit_mynetworks,
    reject_unauth_pipelining,
    permit_sasl_authenticated,
    reject_invalid_helo_hostname,
    reject_non_fqdn_hostname,
    reject_rbl_client zombie.dnsbl.sorbs.net,
    reject_rbl_client zen.spamhaus.org,
    reject_rbl_client bl.spamcop.net
smtpd_recipient_restrictions    =
    permit_mynetworks,
    reject_unauth_pipelining,
    reject_non_fqdn_recipient,
    permit_sasl_authenticated,
    reject_unauth_destination,
    check_policy_service inet:[127.0.0.1]:2501,
    permit
smtpd_sender_restrictions       =
    permit_mynetworks,
    reject_unauth_pipelining,
    reject_non_fqdn_sender,
    reject_unknown_sender_domain,
    permit_sasl_authenticated,
    permit_tls_clientcerts,
    check_sender_access regexp:$config_directory/tag_as_foreign.re,
    permit
smtpd_data_restrictions =
    reject_unauth_pipelining,
    reject_multi_recipient_bounce,
    permit

設定に応じて、さまざまなチェックを行うことができます。SMTPワークフローの各フェーズには制限が設定されています。詳細については、http://www.postfix.org/postconf.5.html

すべてのフェーズ、つまり、、、およびに制限を定義する必要がありますsmtpd_helo_restrictions。Postfix 2.10以降には、あなたに最適な新しいsmtpd_data_restrictionsオプションがあります。smtpd_sender_restrictionssmtpd_recipient_restrictionssmtpd_client_restrictionssmtpd_relay_restrictions

自分のメールを SMTP サーバー経由で中継したい場合は、何らかの方法で識別可能である必要があります (たとえば、 に所属し$mynetworks、認証を使用するなど)。

私の構成では、ブラックホスト リスト、グレーリスト、認証も使用されます。

基本的に、SMTP 制限では以下を許可する必要があります。

  1. ネットワーク(ローカルホスト、イントラネットなど。 を参照permit_mynetworks)、
  2. 認証されたユーザー(SMTPログインを使用してログインしたユーザーの場合、そのユーザーのメールを外部サーバーに中継できます。 を参照permit_sasl_authenticated)、
  3. あなたに配信される電子メール(= あなたはそれらの電子メールの「最終宛先」です。 を参照reject_unauth_destination)。
  4. オプションで、電子メールを中継する他のすべての電子メール ドメイン。たとえば、サーバーが一部のドメインの最終宛先ではなく、フロントエンド プロキシである場合、受信者をホワイトリストと照合し、ネクストホップの宛先に転送する必要があります。

権限のないユーザーによってどこからでも外部サーバーに送信されるその他のすべての電子メールは、オープンリレーを意味します。

答え4

VRFYとEXPNはスパマーに悪用される可能性があるため無効にしてください。http://cr.yp.to/smtp/vrfy.html

関連情報