スズキです。

「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

こちらの記事はなかの人(suz-lab)監修のもと掲載しています。
元記事は、こちら