如何使用 Telnet 來測試 SMTP 通訊

 

上次修改主題的時間: 2005-05-24

Telnet 是十分有用的工具,可用來疑難排解與 SMTP 及郵件流程相關的問題。例如,您可以使用 telnet 來:

  • 驗證 SMTP 已正確安裝並具有所有必要的命令。
  • 確定可透過網際網路存取您的伺服器。
  • 嘗試直接透過 TCP 連接埠進行郵件傳遞。
  • 判斷所有伺服器正在接受連線。
  • 判斷防火牆是否正在封鎖連線。
  • 確定單一使用者可接收郵件。
  • 確定特定網域可接收郵件。
  • 確定特定使用者或網域可將郵件傳送至您的網域。

注意

下列程序會顯示在需要基本驗證才可於組織外部轉送郵件時,如何測試內部使用者將郵件傳送給遠端使用者的處理程序。

開始之前

在執行這個主題中的程序之前,請閱讀<疑難排解郵件流程及 SMTP>。

執行此程序需要下列權限:

  • 本機 Administrators 群組的成員

程序

使用 telnet 測試 SMTP 通訊

  1. 開啟 telnet 工作階段:在命令提示字元中,輸入 telnet,然後按 ENTER。

  2. 在執行 Microsoft Windows® 2000 Server 的電腦上輸入 set local_echo,或在執行 Windows Server™ 2003 或 Windows XP 的電腦上輸入 SET LOCALECHO,然後按 ENTER。此命令可讓您檢視命令的回應。

    注意

    如需可用的 telnet 命令的清單,請輸入 set ?

  3. 輸入 o <您的郵件伺服器網域> 25,然後按 ENTER。

  4. 輸入 EHLO <您的郵件伺服器網域>,然後按 ENTER。

  5. 輸入 AUTH LOGIN。伺服器會回應您使用者名稱的加密提示。

  6. 輸入您以 base 64 加密的使用者名稱。您可以使用任一種可用來將使用者名稱編碼的工具。

  7. 伺服器會回應您密碼的 base 64 加密提示。請輸入以 base 64 加密的密碼。

  8. 輸入 MAIL FROM:<sender@domain.com>,然後按 ENTER。如果不允許寄件者傳送郵件,則 SMTP 伺服器會傳回錯誤。

  9. 輸入 RCPT TO:<recipient@remotedomain.com>,然後按 ENTER。如果收件者不是有效的收件者或伺服器未接受此網域的郵件,則 SMTP 伺服器會傳回錯誤。

  10. 輸入 DATA

  11. 您可以視需要輸入郵件文字、按 ENTER、輸入句點 (.),然後再次按 ENTER。

  12. 如果郵件運作正常,您應該會看到與下列類似的回應,指出該郵件已在佇列中等待傳遞:

    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 的安全性>。