telnet發送郵件
關於電子郵件的基礎知識請參照:【Mail】郵件的基礎知識和原理
smtp協議是一個簡單的郵件傳輸協議,利用它我們可以將郵件發送給別人,這里將通過telnet這個程序利用smtp協議從網易向gmail發送一封郵件
基本步驟如下:
1、使用telnet連接smtp服務器
2、發送一個helo或者ehlo指令
3、驗證用戶(使用郵件名登陸,用戶名和密碼要采用base64編碼)
4、使用mail命令准備發送郵件
5、使用rcpt命令指定對方郵箱地址
6、使用data命令開始輸入內容
7、輸入test或者hello world類似字樣(即郵件內容)
8、輸入郵件內容結束標志.
9、退出smtp服務器
- 在win環境下,開始--->運行--->cmd ,打開命令運行窗口
- 在命令窗口內,輸入一下指令命令,注意用戶名和密碼要采用base64編碼,可以在http://www.bejson.com/enc/base64/網站上進行轉碼。
發送成功過之后,登錄網頁郵箱查看
- SMTP協議的返回碼
telnet接收郵件
POP3 協議類似於 SMTP 協議,它定義了一些命令用於管理郵箱等具體操作,為了能夠在 Windows 下使用 telnet 程序來接收郵件
POP3相關命令(<space> 為空格,<CRLF> 為回車加換行):
1 1、user<space>郵箱的用戶名<CRLF> : 2 該命令用於與 POP3 服務器建立聯系; 3 4 2、pass<space>郵箱密碼<CRLF> : 5 該命令用於 user 命令成功建立連接之后向 POP3 服務器發送郵箱的密碼; 6 7 3、stat<CRLF> : 8 該命令用於查看郵箱中的郵件數量以及所占用的字節大小; 9 10 4、uidl<space>msg#<CRLF> : 11 該命令用於查詢郵箱中編號為 msg# 的郵件的唯一標識符,注:郵箱中的編號是從 1 開始的; 12 13 5、list<space>[msg#]<CRLF> : 14 該命令用於將郵箱中的郵件信息進行列表,當指定參數 msg# 時,返回該編號的郵件的信息,不指定則返回所有郵件的信息; 15 16 6、retr<space>msg#<CRLF> : 17 該命令用於獲取編號為msg#的郵件的內容; 18 19 7、dele<space>msg#<CRLF> : 20 該命令用於將編號為 msg# 的郵件設置上刪除的標記,注:執行該命令之后郵件並不立即被刪除,而是等到執行 quit 命令才會被刪除; 21 22 8、rset<space>msg#<CRLF> : 23 該命令用於將執行了 dele 命令的編號為 msg# 的郵件的刪除標記清楚掉; 24 25 9、quit<space>msg#<CRLF> : 26 該命令用於結束與 POP3 服務器的鏈接,即結束郵件的接收過程,執行完該命令之后,郵箱中被設置了刪除標記的郵件會被真正刪除掉。
- 打開win系統的命令窗口同上,連接163郵箱的pop3服務器,端口是110
- 輸入用戶名和密碼,使用user命令和pass命令
- 查看郵箱中的郵件數量以及所占用的字節大小
- 查詢郵箱
- 查詢郵件信息列表
- 獲取編號為msg#的郵件的內容
- 將編號為 msg# 的郵件設置上刪除的標記,注:執行該命令之后郵件並不立即被刪除,而是等到執行 quit 命令才會被刪除
- 編號為 msg# 的郵件的刪除標記清楚掉
- 退出pop3服務器