本文演示用命令行發送郵件的過程。
SMTP
首先介紹下smtp協議——簡單郵件傳輸協議 (Simple Mail Transfer Protocol, SMTP) 是事實上的在Internet傳輸email的標准。
SMTP使用命令在客戶端和服務器之間傳輸報文,即客戶端發出一個命令,服務器返回一個應答。發送方與接收方一問一答的交互,由發送方控制這個對話。
使用cmd發送郵件
1.使用telnet工具連上某個郵箱服務的smtp服務器,以163.com為例
> telnet smtp.163.com 25
25是端口號,注意前面有個空格。
回車之后如下圖:
2. 和smtp服務器打招呼
> helo smtp
注意這個界面下不要使用退格鍵。
3. 登錄到smtp服務器
> auth login
注意:用戶名是你郵箱經過base64編碼之后的字符串,密碼也是。
4.登錄成功之后就可以寫郵件了
發件人和收件人格式如下:
Mail from:you@163.com
Rcpt to:sendto@qq.com
接下來寫郵件正文內容,輸入 data 之后回車即可,
This email from command line. Cross the GFW, we can reach every corner in the world !
正文結束標志是在最末尾輸入一個英文狀態下的 .
下面是data下的可選項:
輸入 from:發件人名稱 ,此項可任意填入,將顯示在收件箱的'發件人'一欄
輸入 to:收件人名稱 ,可任意填入,將顯示在收件箱的'收件人'一欄
輸入 subject:信件主題 ,顯示在收件箱的'主題'一欄中
此時需空一行,即在一空行直接回車,表示正文部分的開始
空行后輸入信件的正文內容。
按下回車,郵件就順利的通過cmd發送出去了~