私は大学で postfix SMTP サーバーを管理しています。毎週少なくとも 1 つのアカウントが侵害され、スパムの送信に使用されています。私たちは、キューに 40 件を超えるメッセージがあるローカル アカウントを停止する社内モニターを開発しました。この方法で、最初の瞬間にスパムの送信を阻止しました。
しかし昨日、攻撃者がアカウントを侵害し、当社のサーバー経由でメールを送信することができました。メッセージは当社のドメインを使用してキューに入れられていなかったため、モニターはそれを検出できませんでしたが、[メールアドレス]。
このアドレスを使用してメールを送信していたアカウントを見つけるにはどうすればよいでしょうか?
前もって感謝します。
答え1
grep
QUEUEID
メールログ内の の1 つ。次のような内容が表示されるはずです。
May 20 15:25:40 mta2 postfix/smtps/smtpd[26154]: 578C7E0013: client=unknown[203.0.113.3], sasl_method=PLAIN, sasl_username=someuser
May 20 15:25:40 mta2 postfix/qmgr[3291]: 578C7E0013: from=<[email protected]>, size=1198, nrcpt=1 (queue active)
May 20 15:25:40 mta2 postfix/smtp[26074]: 578C7E0013: to=<[email protected]>, relay=mx.example.com[98.51.100.14]:25, delay=0.15, delays=0.02/0.01/0.06/0.06, dsn=2.0.0, status=sent (250 2.0.0 Ok: queued as 6B87C336809C)
sasl_username
あなたが探している部品です。
将来は、設定したいでしょうreject_authenticated_sender_login_mismatch
あなたのsmtpd_sender_restrictions
これには有効なsmtpd_sender_login_maps
. こちらもチェックしてみてくださいpolicyd
自作モニターに加えて、または自作モニターの代わりとして使用できます。
例:
**main.cf**
smtpd_sender_restrictions = reject_unknown_sender_domain reject_authenticated_sender_login_mismatch
smtpd_sender_login_maps = ldap:$config_directory/ldap-sender-login-map.cf
**ldap-sender-login-map.cf**
version = 3
server_host = ldap://ldap.example.com/
search_base = dc=example,dc=com
query_filter = mailLocalAddress=%s
result_attribute = mailLocalAddress
result_format = %s,%u