Sendmail 配置的排錯方法
如果你是撥號上網,下次撥號,你的IP就會改變,當然你的郵件服務器就又不讓你發(fā)信了。如果公司的員工常要出差,到外地后,經常是撥通當地ISP來收發(fā)郵件。
Sendmail 配置排錯
Sendmail 配置錯誤1.在Outlook中正確配置POP及SMTP服務器的地址后,出現如下錯誤:
無法連接到服務器。賬號:'192.168.0.1',服務器:'192.168.0.1',
協議:POP3,端口:110,安全(SSL):否,套接字錯誤:10061,
錯誤號:0x800CCC0E
Sendmail 配置產生錯誤的原因:主要原因是沒有運行POP3D和IMAPD
解決方法:打開/etc/inetd.conf查找到
#pop-3streamtcpnowaitroot/usr/sbin/tcpdipop3d
把#號刪掉。
打開/etc/services查找到
#pop3110/tcp
#pop3110/udp
將兩行最前面的#號刪掉。
這樣,在restartinetd后,pop3110端口就可以收信了!如果還是不行,請檢查是否安裝POP3服務軟件包!
錯誤2:很多撥號用戶會碰到以下問題:
由于服務器拒絕收件人之一,無法發(fā)送郵件。被拒絕的E-mail地址是“lcl@lettee.com.cn”。主題'ffd',賬號:'mailns.lettee.com.cn(1)',服務器:'mailns.lettee.com.cn',協議:SMTP,服務器響應:'551wedonotrelay',端口:25,安全(SSL):否,服務器錯誤:551,錯誤號:0x800CCC79
此錯誤表示:Sendmail不能為你正在使用的客戶機Relay郵件。
錯誤原因:Sendmail8.9.3以后,缺省限制了Relay功能,主要是為了防止Spammer。使用此服務器的本地用戶可以發(fā)信,而以外的用戶不可以通過它發(fā)信了。解決方法:在access中加入客戶機的IP,重新編譯access即可。
很多朋友常犯的錯誤是“我已經在access中加入了郵件服務器的IP地址,也對數據庫文件進行了makemap工作,可依然還是不行”。其實你搞錯了,應該加入的是客戶機的IP——試著將你的撥號PC的IP加入到access中,makemap后,你不必重新啟動Sendmail,試試,發(fā)信成功了!
正如前面所說的,如果你是撥號上網,下次撥號,你的IP就會改變,當然你的郵件服務器就又不讓你發(fā)信了。如果公司的員工常要出差,到外地后,經常是撥通當地ISP來收發(fā)郵件。收郵件肯定沒有問題,但是,郵件目前SMTP沒有進行口令驗證,而郵件服務器又要進行轉發(fā)控制,不對未記錄在數據庫中的主機轉發(fā)。所以,郵件是發(fā)不出去了。在這種情況下,如果像本文前面所說的那樣設置全部轉發(fā)功能的話,倒是可以讓撥號用戶發(fā)信,但同時,帶來的問題就是會有很多Spam,實在是難以做到兩全其美。
解決Sendmail 配置有兩種方案,一種為采用SMTP認證,即用戶發(fā)送郵件以前,郵件服務器進行用戶身份認證,通過則服務器為其發(fā)送郵件,否則拒絕發(fā)信;第二種方案是采用動態(tài)轉發(fā)授權控制(DynamicRelayauthorizationcontrol),其工作原理為:撥號用戶撥號上網后,首先收郵件,如果用戶能正確收郵件,則DRAC自動在access.db中加入剛才收郵件用戶的IP,并允許此IP可以發(fā)信。不過,30分鐘內,此IP不發(fā)/收郵件的話,DRAC將從access.db中刪除此IP。此種機制保證撥號用戶在沒有SMTP認證的情況下,也可以通過遠程郵件服務器發(fā)送E-mail(詳情,請參閱筆者的另一篇文章:利用DRAC杜絕垃圾郵件)。
【編輯推薦】