Postfix SMTP に AUTH (SASL?) の使用を強制し、匿名接続を拒否させるにはどうすればよいでしょうか?

Postfix SMTP に AUTH (SASL?) の使用を強制し、匿名接続を拒否させるにはどうすればよいでしょうか?

次のスニペットが postfix の main.cf ファイルに追加されました。

smtpd_sasl_auth_enable = yes
smtpd_sasl_security_options = noanonymous
smtp_sasl_password_maps = hash:/etc/postfix/sasl_passwd
smtpd_sasl_security_options = permit_sasl_authenticated, permit_mynetworks, reject_unauth_destination

上記のパラメータに「smtp」や「smptd」が含まれることがあるのはなぜか、少し混乱していますが、現在の名前は正しいと思います。

上記のパラメータを指定して SMTP クライアントに AUTH を強制するはずなのに、なぜ AUTH なしで SMTP に接続できるのでしょうか?

匿名の接続を拒否します。

答え1

そうですね、これも追加する必要があるようです:

smtpd_delay_reject = yes
smtpd_client_restrictions = permit_sasl_authenticated, reject

ここに述べられている通り: http://www.postfix.org/postconf.5.htmlsmtpd_sasl_auth_enable の下

答え2

スタンドアロンの postfix には SASL 機能がないため、Cyrus または Dovecot をインストールする必要があります。

postfix の公式ドキュメントをご覧ください。

http://www.postfix.org/SASL_README.html#server_sasl

答え3

わかりました。認証のためだけに SMTP を完全にブロックするのはナンセンスです。そうするとメール サーバーがメールを受信できなくなるからです。

私の考えが正しければ、SMTP は匿名ユーザーに対して開いたままにして、ローカル メールボックスにメールを送信できるようにする必要があります。

もちろん、別のドメインへの電子メールの送信をブロックする(匿名接続の場合)のであれば良いのですが、それがデフォルトの構成になるはずです。

関連情報