如何使用 Telnet 來測試 SMTP 通訊
上次修改主題的時間: 2005-05-24
Telnet 是十分有用的工具,可用來疑難排解與 SMTP 及郵件流程相關的問題。例如,您可以使用 telnet 來:
- 驗證 SMTP 已正確安裝並具有所有必要的命令。
- 確定可透過網際網路存取您的伺服器。
- 嘗試直接透過 TCP 連接埠進行郵件傳遞。
- 判斷所有伺服器正在接受連線。
- 判斷防火牆是否正在封鎖連線。
- 確定單一使用者可接收郵件。
- 確定特定網域可接收郵件。
- 確定特定使用者或網域可將郵件傳送至您的網域。
注意
下列程序會顯示在需要基本驗證才可於組織外部轉送郵件時,如何測試內部使用者將郵件傳送給遠端使用者的處理程序。
在執行這個主題中的程序之前,請閱讀<疑難排解郵件流程及 SMTP>。
執行此程序需要下列權限:
- 本機 Administrators 群組的成員
開啟 telnet 工作階段:在命令提示字元中,輸入 telnet,然後按 ENTER。
在執行 Microsoft Windows® 2000 Server 的電腦上輸入 set local_echo,或在執行 Windows Server™ 2003 或 Windows XP 的電腦上輸入 SET LOCALECHO,然後按 ENTER。此命令可讓您檢視命令的回應。
注意
如需可用的 telnet 命令的清單,請輸入 set ?。
輸入 o <您的郵件伺服器網域> 25,然後按 ENTER。
輸入 EHLO <您的郵件伺服器網域>,然後按 ENTER。
輸入 AUTH LOGIN。伺服器會回應您使用者名稱的加密提示。
輸入您以 base 64 加密的使用者名稱。您可以使用任一種可用來將使用者名稱編碼的工具。
伺服器會回應您密碼的 base 64 加密提示。請輸入以 base 64 加密的密碼。
輸入 MAIL FROM:<sender@domain.com>,然後按 ENTER。如果不允許寄件者傳送郵件,則 SMTP 伺服器會傳回錯誤。
輸入 RCPT TO:<recipient@remotedomain.com>,然後按 ENTER。如果收件者不是有效的收件者或伺服器未接受此網域的郵件,則 SMTP 伺服器會傳回錯誤。
輸入 DATA。
您可以視需要輸入郵件文字、按 ENTER、輸入句點 (.),然後再次按 ENTER。
如果郵件運作正常,您應該會看到與下列類似的回應,指出該郵件已在佇列中等待傳遞:
250 2.6.0 <INET-IMC-01UWr81nn9000fbad8@mail1.contoso.com.
下列範例會顯示 telnet 測試,並順利將郵件從 contoso.com 傳送至遠端網域:
250-mail1.fourthcoffee.com Hello [172.16.0.0]
250-TURN
250-ATRN
250-SIZE 5242880
250-ETRN
250-PIPELINING
250-DSN
250-ENHANCEDSTATUSCODES
250-8bitmime
250-BINARYMIME
250-CHUNKING
250-VRFY
250-X-EXPS GSSAPI NTLM
250-AUTH GSSAPI NTLM
250-X-LINK2STATE
250-XEXCH50
250 OK
334 VXNlcm5hbWU6
334 UGFzc3dvcmQ6
235 2.7.0 Authentication successful.
250 2.1.0 kim@fourthcoffee.com....Sender OK
250 2.1.5 ted@contoso.com
354 Start mail input; end with <CRLF>.<CRLF>
.
250 2.6.0 <INET-IMC-01UWr81nn9000fbad8@mail1.fourthcoffee.com> Queued mail for delivery
如需相關資訊,請參閱<設定 Exchange Server 的安全性>。