%20%E4%B8%A6%E6%8B%92%E7%B5%95%E5%8C%BF%E5%90%8D%E9%80%A3%E7%B7%9A%EF%BC%9F%20.png)
以下程式碼片段已新增至 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”,但我猜當前的名稱是正確的。
儘管我指定了上面的參數,為什麼可以在沒有 AUTH 的情況下連接到 SMTP,並且它們應該強制 SMTP 用戶端進行 AUTH?
我想拒絕匿名連線。
答案1
好吧,看來我還必須添加這個:
smtpd_delay_reject = yes
smtpd_client_restrictions = permit_sasl_authenticated, reject
如這裡所述: http://www.postfix.org/postconf.5.html在 smtpd_sasl_auth_enable 下
答案2
獨立的 postfix 不具備 SASL 功能,您必須安裝 Cyrus 或 Dovecot。
看看postfix官方文件。
答案3
好吧,我發現完全阻止 SMTP 僅用於身份驗證是無稽之談,因為這樣郵件伺服器甚至無法接收郵件。
如果我是對的,SMTP 必須保持對匿名開放,並允許將郵件發送到本地郵箱。
當然,如果它會阻止向其他網域發送電子郵件(用於匿名連接),那當然很好,但這應該是預設配置。