スズキです。
「Postfix セキュリティ 設定」などで検索して、よく出てくるものを確認してみました。
○Postfix接続時に表示される文字列で、Postfixだとわからないようにする。
smtpd_banner = $myhostname ESMTP
▼設定前
# telnet localhost 25
Trying 127.0.0.1...
Connected to localhost.
Escape character is '^]'.
220 ip-10-0-0-5.localdomain ESMTP Postfix
▼設定後
# telnet localhost 25
Trying 127.0.0.1...
Connected to localhost.
Escape character is '^]'.
220 ip-10-0-0-5.localdomain ESMTP
○Postfixにコマンドを送信する前に、HELO/EHLOコマンドを必ず要求する。
smtpd_helo_required = yes
▼設定前
# telnet localhost 25
Trying 127.0.0.1...
Connected to localhost.
Escape character is '^]'.
220 ip-10-0-0-5.localdomain ESMTP
MAIL FROM:suzuki@suz-lab.com
250 2.1.0 Ok
▼設定後
# telnet localhost 25
Trying 127.0.0.1...
Connected to localhost.
Escape character is '^]'.
220 ip-10-0-0-5.localdomain ESMTP
MAIL FROM:suzuki@suz-lab.com
503 5.5.1 Error: send HELO/EHLO first
○VRFYコマンド(ユーザーの存在確認)を無効にする。
disable_vrfy_command = yes
▼設定前
# telnet localhost 25
Trying 127.0.0.1...
Connected to localhost.
Escape character is '^]'.
220 ip-10-0-0-5.localdomain ESMTP
VRFY root
252 2.0.0 root
▼設定後
# telnet localhost 25
Trying 127.0.0.1...
Connected to localhost.
Escape character is '^]'.
220 ip-10-0-0-5.localdomain ESMTP
VRFY root
502 5.5.1 VRFY command is disabled
○”MAIL FROM”でRFC821に違反するメールアドレスを設定できないようにする。
strict_rfc821_envelopes = yes
▼設定前
# telnet localhost 25
Trying 127.0.0.1...
Connected to localhost.
Escape character is '^]'.
220 ip-10-0-0-5.localdomain ESMTP
HELO localhost
250 ip-10-0-0-5.localdomain
MAIL FROM:@suz-lab.com
250 2.1.0 Ok
▼設定後
# telnet localhost 25
Trying 127.0.0.1...
Connected to localhost.
Escape character is '^]'.
220 ip-10-0-0-5.localdomain ESMTP
HELO localhost
250 ip-10-0-0-5.localdomain
MAIL FROM:@suz-lab.com
501 5.1.7 Bad sender address syntax