今天做郵件服務器,用到smtp加密,裏邊有這樣的配置。
- smtpd_sasl_auth_enable = yes
- smtpd_recipient_restrictions = permit_mynetworks,permit_sasl_authenticated,reject_unauth_destination
- broken_sasl_auth_clients=yes
- smtpd_client_restrictions=permit_sasl_authenticated
- smtpd_sasl_security_options = noanonymous
配置的時候我是直接粘貼以前寫的word文檔裏的內容,加密配置之後,用telnet 去連接本地25端口。
連接之後再去匿名發送郵件會出現這樣的信息:
- [admin@localhost~]$ telnet 127.0.0.1 25
- Trying 127.0.0.1...
- Connected to localhost.localdomain (127.0.0.1).
- Escape character is '^]'.
- 220 mail.mymail.com ESMTP Postfix
- mail from ^H
- 501 5.5.4 Syntax: MAIL FROM:<address>
- mail from: [email protected]
- 250 2.1.0 Ok
- rcpt to: ********@qq.com
- 554 5.7.1 <*********@qq.com>: Relay access denied
這樣就證明匿名用戶連接我的郵件服務器被拒絕了。但是我做個加密之後還是一直出現ok。
我用diff校驗以前的配置文件和現在的配置文件,發現上邊配置的幾行老是出現不一樣,我使勁看,還是一樣。弄了一整天啊,最後發現是字符編碼的問題,我直接粘貼的word文檔的內容。word真是坑爹啊。把這些配置粘貼到文本文檔之後再服務器上貼就可以了。