使用SMTP發(fā)送郵件

該測試在mac下進行

  1. 安裝telnet

目的: 使用telnet登錄SMTP服務器

在早前的版本中懦鼠,mac是自帶telnet的拓巧。但最新的系統(tǒng)已經移除了telnet,你可以在/usr/bin/telnet目錄下查看是否存在。如果想安裝可以有以下兩種方法:

  1. 復制一份舊系統(tǒng)的文件,參考https://blog.csdn.net/max_zhanglei/article/details/80803825
  2. 通過命令安裝:
  • 如果已經安裝homebrew妻率,則直接在終端輸入$brew install telnet
  • 如果沒有安裝homebrew, 則在終端輸入以下兩條命令:
    $/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)”
    $brew install telnet
  1. 登錄SMTP服務器
    $telnet smtp.126.com 25

SMTP使用的是TCP的25號端口不翩。這里我們鏈接網易126郵箱服務器,你也可以替換為其他郵箱服務器酸休,例如telnet smtp.qq.com 25。不過騰訊郵箱需要設置驗證碼祷杈,比較麻煩斑司。

鏈接成功后,終端會返回以下信息:
220 126.com Anti-spam GT for Coremail System (126com[20140526])
其中220表示服務就緒但汞,后面緊跟著郵箱服務器的域名126.com xxxxx宿刮。

  1. 開始通訊
    helo xxx
    通訊的第一條語句必須是helo xxx,其中xxx可以是任意輸入私蕾,一般為自己的郵箱名就可以僵缺。
    服務器會返回250 OK
  2. 登錄126郵箱
    auth login
    服務器會返回334 dXNlcm5hbWU6,其中dXNlcm5hbWU6為base64編碼的username。此時我們輸入郵箱賬戶的base64編碼即可:
    Y29uZTE5OIDAMMI2LmNvbQ==
    然后按回車結束踩叭。

同樣的磕潮,服務器返回334 UGFzc3dvcmQ6,這次是password容贝。我們輸入密碼的base64自脯,然后回車。

如果一切順利斤富,則服務器返回235 Authentication successful膏潮,表示登錄成功。

  1. 設置發(fā)件人
    輸入mail from:<aaa@126.com>并回車
    服務器會返回250 Mail OK

  2. 設置收件人
    輸入rcpt to:<bbb@126.com>并回車
    服務器同樣返回250 Mail OK

  3. 設置正文
    輸入data并回車
    服務器返回354 End data with <CR><LF>.<CR><LF>满力,表示我們可以開始輸入正文戏罢,并且最終要以回車.回車的形式結束屋谭。

這里在輸入data并回車后,我們先不忙輸入龟糕,繼續(xù)往下看。

8.在輸入正文前悔耘,我們往往希望設置標題讲岁,附件,格式等等衬以,此時就需要MIME了缓艳。

MIME

MIME全稱是Multipurpose Internet Mail Extensions,是對文本格式郵件的一種擴展類型,現(xiàn)在不僅可以發(fā)送文本看峻,還可以發(fā)送靜態(tài)圖片阶淘、聲音、程序等各種形式的數(shù)據(jù)互妓。

MIME還被用于WWW和NetNews中溪窒。

MIME基本由首部和正文(數(shù)據(jù))兩部分組成。首部不能有空行冯勉,因為一旦出現(xiàn)空行澈蚌,其后的部分將被視為正文。如果MIME首部的Content-Type中指定Multipart/Mixed,并以boundary=后面字符作為分隔符灼狰,那么可以將多個MIME消息組合成一個MIME消息宛瞄,這就叫做multipart。即各個部分都由MIME首部和正文組成交胚。

下面列出具有代表性的Content-Type:

Content-Type 內容
text/plain 純文本
message/rfc822 MIME與正文
multipart/mixed 多部分消息
application/postscript PostScript
application/octet-stream 二進制數(shù)據(jù)
image/gif GIF圖像
image/jpeg JPEG圖像
audio/basic AU格式的音頻文件
video/mpeg MPEG動畫
message/external-body 包含外部消息

一個典型的MIME舉例:

TCP_IP第五版.png

  1. 輸入標題等等
    在我們輸入data并回車后份汗,我們需要做一些附加設置:
    輸入以下文本,每輸入一行則回車蝴簇,注意不能有空行
    To:bbb@126.com
    Subject:hello friend!
    Content-Type:text/plain;charset=utf8
    From:aaa@126.com
    以上設置了MIME的首部杯活,為了和正文區(qū)分,我們再次鍵入空行军熏。

然后轩猩,我們直接輸入正文即可:
hello my friend! this is a test email.
正文輸入完畢,注意我們之前所說的荡澎,郵件必須以回車.回車的方式結束均践,因此我們輸入
回車
.
回車

如果一切順利,服務器會返回我們一個回執(zhí)摩幔,告訴我們發(fā)送成功彤委。此時輸入quit+回車退出郵箱服務器。

現(xiàn)在或衡,你可以到發(fā)件箱去查看剛剛發(fā)送的郵件了!

后記:

  1. 通過telnet連接成功后焦影,必須輸入helo xxx车遂,否則服務通訊失敗。
  2. 登錄后斯辰,必須設置發(fā)件人和收件人后才能設置data舶担,否則失敗。
  3. 如果不設置MIME彬呻,測試的時候發(fā)送不成功衣陶,被126退信,報錯為554,認為是垃圾郵件闸氮。因此MIME必須設置正確剪况。
  4. 正文的結束必須以回車+.+回車來結束。

SMTP指令及含義:

指令 含義
HELO <domain> 開始通訊
EHLO <domain> 開始通訊(擴展HELO)
MAIL FROM:<reverse-path> 發(fā)件人
RCPT TO:<forward-path> 收件人
DATA 郵件的正文
REST 初始化
VRFY <string> 確認用戶名
EXPN <string> 將郵件組擴展為郵件列表
NOOP 請求應答(no operation)
QUIT 關閉
?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
  • 序言:七十年代末蒲跨,一起剝皮案震驚了整個濱河市译断,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌或悲,老刑警劉巖孙咪,帶你破解...
    沈念sama閱讀 222,183評論 6 516
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異隆箩,居然都是意外死亡该贾,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 94,850評論 3 399
  • 文/潘曉璐 我一進店門捌臊,熙熙樓的掌柜王于貴愁眉苦臉地迎上來杨蛋,“玉大人,你說我怎么就攤上這事理澎〕蚜Γ” “怎么了?”我有些...
    開封第一講書人閱讀 168,766評論 0 361
  • 文/不壞的土叔 我叫張陵糠爬,是天一觀的道長寇荧。 經常有香客問我,道長执隧,這世上最難降的妖魔是什么揩抡? 我笑而不...
    開封第一講書人閱讀 59,854評論 1 299
  • 正文 為了忘掉前任,我火速辦了婚禮镀琉,結果婚禮上峦嗤,老公的妹妹穿的比我還像新娘。我一直安慰自己屋摔,他們只是感情好烁设,可當我...
    茶點故事閱讀 68,871評論 6 398
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著钓试,像睡著了一般装黑。 火紅的嫁衣襯著肌膚如雪副瀑。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 52,457評論 1 311
  • 那天恋谭,我揣著相機與錄音糠睡,去河邊找鬼。 笑死箕别,一個胖子當著我的面吹牛铜幽,可吹牛的內容都是我干的。 我是一名探鬼主播串稀,決...
    沈念sama閱讀 40,999評論 3 422
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼狮杨!你這毒婦竟也來了母截?” 一聲冷哼從身側響起,我...
    開封第一講書人閱讀 39,914評論 0 277
  • 序言:老撾萬榮一對情侶失蹤橄教,失蹤者是張志新(化名)和其女友劉穎清寇,沒想到半個月后,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體护蝶,經...
    沈念sama閱讀 46,465評論 1 319
  • 正文 獨居荒郊野嶺守林人離奇死亡华烟,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 38,543評論 3 342
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了持灰。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片盔夜。...
    茶點故事閱讀 40,675評論 1 353
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖堤魁,靈堂內的尸體忽然破棺而出喂链,到底是詐尸還是另有隱情,我是刑警寧澤妥泉,帶...
    沈念sama閱讀 36,354評論 5 351
  • 正文 年R本政府宣布椭微,位于F島的核電站,受9級特大地震影響盲链,放射性物質發(fā)生泄漏蝇率。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 42,029評論 3 335
  • 文/蒙蒙 一刽沾、第九天 我趴在偏房一處隱蔽的房頂上張望本慕。 院中可真熱鬧,春花似錦悠轩、人聲如沸间狂。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,514評論 0 25
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽鉴象。三九已至忙菠,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間纺弊,已是汗流浹背牛欢。 一陣腳步聲響...
    開封第一講書人閱讀 33,616評論 1 274
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留淆游,地道東北人傍睹。 一個月前我還...
    沈念sama閱讀 49,091評論 3 378
  • 正文 我出身青樓,卻偏偏與公主長得像犹菱,于是被迫代替她去往敵國和親拾稳。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 45,685評論 2 360

推薦閱讀更多精彩內容