web-dev-qa-db-ja.com

Postfixを使用して、IPが通信しているHELO名を追跡/ログに記録するにはどうすればよいですか?

私はPostfixを内部メールリレーサーバーとして使用していますが、いくつかのサーバーが内部であらゆる種類のカスタムコードを実行しています。一部はパッケージ/サービスであり、一部はこの/これらのシステムを使用して通信するネイティブLinuxまたはWindowsシステムサービスです。メールリレー。

私が直面している問題は、メールを送信するときのようにサーバーと通信しているサーバーHELO名のクリーンアップに取り組んでいることです。たとえば、localhost.localdomainであり、IPレピュテーション(ブラックリストなど)を傷つけています。

Pflogsummをインストールしましたが、これは非常に役立ちましたが、このサーバーに接続しているIPと、IPが作成している対応するHELO(またはIPが報告しているサーバー名)のリストを取得できる方法があればいいのにと思います。私の言っていることが分かるよね)。

Postfixからこの情報を取得する方法を誰かが知っているとしたら、ボーナスでこれをpflogsummに公開して、毎日のメールレポートで表示できるようにすることができます。ありがとうございました!

7
Keegan Jacobson

Wietse Venema (作者 Postfix )はこれを answerquestion 2012年にpostfix-usersメーリングリスト

warn_if_reject check_helo_access static:reject

おそらく最新のものです。試してみてください。

更新

私はそれを試してみました:

まず、構成は smtpd_helo_restrictions 構成ディレクティブで行う必要があります。

smtpd_helo_restrictions = warn_if_reject check_helo_access static:reject

これにより、次のようなログエントリが作成されます。

Oct 16 00:12:45 vega postfix/smtpd[6676]: NOQUEUE: reject_warning: RCPT from unknown[xxxx:xxxx:xxxx::x]: 554 5.7.1 <test>: Helo command rejected: Access denied; from=<[email protected]> to=<[email protected]> proto=SMTP helo=<test>

この場合、test接続のHELOコマンドでSMTPを使用しました。これがreject_warningであるため、pflogsummはおそらくこれを要約するのに問題はありません。

5
Joffrey