2020/05/14

SPAM対策

不覚にも、メールサーバのユーザパスワードが突破され、

50件程度の踏み台にされてしまったので、対策を行った。

先ずは、ユーザのパスワードを即座に変更

# passwd <ユーザ名>
Changing password for user <ユーザ名>.
New password:
Retype new password:
passwd: all authentication tokens updated successfully.

メーラー等の設定を修正する。

スパム送信元のIPアドレスを探る。
  # tail -10000 /var/log/maillog | grep "LOGIN"
May 14 05:29:03 www postfix/smtpd[xxxx]: xxxxxxxxxxxx: client=unknown[141.XXX.XXX.XXX], sasl_method=LOGIN, sasl_username=ごめんなさい・・・確かに、ヨーロッパのサーバ(ここも踏み台?)に突破されています。

postfixに拒絶するIPアドレスを指定する。
# vi /etc/postfix/main.cf

末尾に
smtpd_client_restrictions=
permit_mynetworks,
check_client_access hash:/etc/postfix/reject_ip,
permit

smtpd_client_restrictions で接続の許可、拒否の定義をする。

permit_mynetworks, $mynetworksに書いたアドレスは許可する。

check_client_access hash:/etc/postfix/reject_ip, 指定するipを拒否

permit 上記以外を許可

拒否するIPアドレス一覧を作成

記載方法は、拒否したいIPアドレス、ドメイン + REJECTと記載。


# nano /etc/postfix/reject_ip

send.hogehoge.com REJECT
141.XXX.XXX.XXX REJECT
141.XXX.XXX REJECT

reject_ipをDB形式に変換
# postmap /etc/postfix/reject_ip

Postfixをリロード
# systemctl restart postfix

設定が反映される。

パスワードは、乱数生成が必須とまではいかないまでも、
ある程度読まれないものにしないとだめだなぁ・・・
突破されるとは思わなんだ・・・。