由於郵件系統有設定 SASL2 的關係,導致 OpenWebMail 無法正確寄出信件,原因是 OpenWebMail 在寄信的時候無法通過 SASL2 的 Relay check,錯誤訊息如下:
Wed Apr 12 14:30:22 2006 – [550] (192.168.1.??) danny – send message error – smtp error …
>>> Net::SMTP(2.29)
>>> Net::Cmd(2.26)
>>> Exporter(5.58)
>>> IO::Socket::INET(1.29)
>>> IO::Socket(1.29)
>>> IO::Handle(1.25)
<<< 220 ns1.yourhost.com ESMTP Postfix
>>> EHLO ns1.yourhost.com
<<< 250-ns1.yourhost.com
<<< 250-PIPELINING
<<< 250-SIZE 10240000
<<< 250-ETRN
<<< 250-AUTH NTLM LOGIN PLAIN OTP DIGEST-MD5 CRAM-MD5
<<< 250-AUTH=NTLM LOGIN PLAIN OTP DIGEST-MD5 CRAM-MD5
<<< 250 8BITMIME
>>> MAIL FROM:
<<< 250 Ok
>>> RCPT TO:
<<< 554
所以需要在 /usr/local/www/cgi-bin/openwebmail/etc/openwebmail.conf 裡面開啟 smtpauth
然後在 /usr/local/www/cgi-bin/openwebmail/etc/smtpauth.conf 裡面設定一組系統帳號
smtpauth_username username
smtpauth_password userpassword
設定完成後,再次測試由 OpenWebMail 寄信,沒想到錯誤訊息還是一樣,後來注意看 smtpauth.conf 裡面的說明:
# This file defines the username and password for SASL authentication
# on smtpserver. Currently, only the PLAIN mechanism is supported.
原來 OpenWebMail 現階段只能接受純文字密碼的認證,這個問題的解決方法是把 /usr/ports/security/cyrus-sasl2-saslauthd 重新安裝,並且只要選 SASL2即可.
安裝完後,重新啟動 sasl
再測試一下,確認目前只剩下純文字的認證方式
ns1# telnet 0 25
Trying 0.0.0.0...
Connected to 0.
Escape character is '^]'.
220 ns1.yourhost.com ESMTP Postfix
EHLO localhost
250-ns1.yourhost.com
250-PIPELINING
250-SIZE 10240000
250-ETRN
250-AUTH LOGIN PLAIN
250-AUTH=LOGIN PLAIN
250 8BITMIME
quit
221 Bye
看到以上結果,己經確定 OpenWebMail 可以通過認證了,而經過測試,的確問題是發生在 OpenWebMail 身上。
OpenWebMail 的改版速度越來越慢了,幾個很重要的功能都沒有實作完成,例如 Maildir 的支援,可是沒辦法,誰叫 OpenWebMail 是目前最方便,也最美觀的 WebMail,許多客戶指定使用這一套.
註:有誰可以告訴我,如何在 coolcode 裡面讓字體變顏色或加粗?
我也不知道怎麼弄。 不過我是把
mynetworks = 192.168.1.0/24, 127.0.0.0/8, 127.0.0.1, 192.168.1.60, hash:/etc/postfix/access
relay_domains = qq.com, $mydestination
smtpd_recipient_restrictions = permit_mynetworks, permit_sasl_authenticated, reject_unauth_destination
smtpd_client_restrictions = permit_mynetworks, permit_sasl_authenticated, reject_unauth_destination # 這行不定。 客戶發郵件不驗證。 無論在同一個域還是其它域。
也不知道合不合理。
迴響 by eagle — 六月 22, 2012 @ 11:20 上午