[root@XXX]# telnet localhost 25
1)HELOsmtp.com -------------- 客戶端:服務器你好(客戶端發起連接)
2)250smtp.com -------------- 服務器:客戶端你好
3)authlogin -------------------------------- 客戶端:請求使用認證
4)334VXNlcm5hbWU6 ------------------- 服務器:username:(經過base64加密的)
5)xxxxx -------------------------------- 客戶端:用戶名(base64加密的用戶名o)
6)334UGFzc3dvcmQ6 --------------------- 服務器:password:(經過base64加密)
7)xxxxxx ---------------------------客戶端:密碼(base64加密的密碼)
8)235Authentication successful --------- 服務器:認證成功
9)MAILFROM:XXX@test .COM --------- 客戶端:發件地址XXX@test .COM
10)250 MailOK ---------------------------服務器:瞭解了
11)RCPT TO:X@ testc.om --------- 客戶端:可願發件給X@ test.com?
12)250 MailOK ---------------------------服務器:我願意
13)DATA --------------------------------------- 客戶端:我要發送正文了。(以.作爲結束符)
14)250 Ok:queued as B312846AB8 --- 服務器:看到回車+.+回車了,認爲發送完畢
15)QUIT -------------------------------------- 客戶端:會話結束
16)221 Bye ------------------------------- 服務器:Finished
注意:
(1)以上是實際通過telnet命令發送郵件的過程,如果開啓了sasl認證,則從第3)到 第8)可以實施,如果未開啓SASL,則第3)到第8)不能使用;
(2)通過HELO命令可以換成EHLO命令。兩者都是客戶端向服務器發起hello;
(3)如果使用EHLO命令,則可以從回饋信息中明確得知是否使能了“STARTTLS”;
(4)第3步是客戶端可選擇性的,並非強制認證,即:可以從第2)直接進入到第 9)
(5)在第13)之後,輸入數據時候,如果有需要可以按照如下格式:
subject:test
from:ABC
to:123
正文
.