我剛剛設定了一個 Windows 2008 R2 伺服器,並嘗試啟動並運行一個基本的郵件伺服器,以便我可以從我的應用程式發送電子郵件。
我在 IIS6 中設定了一個虛擬 SMTP 伺服器,並嘗試對連接埠 25 執行本機 telnet,這似乎運作正常。在此階段沒有錯誤,我可以看到郵件訊息出現在佇列資料夾中。
問題是郵件永遠不會離開佇列資料夾。然後我嘗試透過連接埠 25 遠端登入遠端郵件伺服器,但無法連接:-
telnet 209.85.227.27 25
Could not open connection to the host, on port 25: Connection failed)
我檢查了我的防火牆,有一個預設設定允許所有傳出 TCP 流量而不受限制。我甚至為傳出連接埠 25 流量設定了特定規則,但沒有效果。
然後我執行 SmtpDiag.exe 命令
.\SmtpDiag.exe [email protected] [email protected]
並收到以下輸出
Searching for Exchange external DNS settings.
Computer name is WIN-SERVERNAME.
Failed to connect to the domain controller. Error: 8007054b
Checking SOA for gmail.com.
Checking external DNS servers.
Checking internal DNS servers.
SOA serial number match: Passed.
Checking local domain records.
Checking MX records using TCP: gmail.com.
Checking MX records using UDP: gmail.com.
Both TCP and UDP queries succeeded. Local DNS test passed.
Checking remote domain records.
Checking MX records using TCP: gmail.com.
Checking MX records using UDP: gmail.com.
Both TCP and UDP queries succeeded. Remote DNS test passed.
Checking MX servers listed for [email protected].
Connecting to gmail-smtp-in.l.google.com [209.85.227.27] on port 25.
Connecting to the server failed. Error: 10060
Failed to submit mail to gmail-smtp-in.l.google.com.
我可以做任何其他診斷來確定這是我的防火牆還是其他什麼?我已刪除防毒軟體以確保它不會導致問題。任何想法將不勝感激。
答案1
它很可能是 ISP 的防火牆。作為對您自己的防火牆設定的最後檢查,您可以將其設定為停用,但如果您已經開啟它並設定了例外,則沒有其他「Windows」原因導致您無法遠端登入連接埠 25
答案2
如果您要設定郵件伺服器,則需要固定的 IP 位址以及相關的 DNS 設定。否則,您看起來就像在您的 ISP 網路上運行的任何其他垃圾郵件機器人一樣。您需要 ISP 的協助,因為他們需要為您的 IP 位址設定反向 DNS 項目。
如果您沒有固定位址,請使用 ISP 的中繼。我不知道 Windows 的咒語。尋找路由選項卡,其中有一個使用 dns 進行路由的單選按鈕。選擇透過地址路由傳出郵件的選項。在此輸入您的 ISP 的電子郵件轉發。幫助可以參考 smarthost 下的這個。
恭喜您的 ISP 禁止到連接埠 25 的傳出連線。