邮件传输协议SMTP和SMTPS
在《使用Spring Boot 優(yōu)雅地發(fā)送郵件》中,我們實(shí)現(xiàn)了spring boot集成spring-boot-starter-mail,使用JavaMailSender發(fā)送電子郵件的功能。在配置文件中設(shè)置了端口和郵件傳輸協(xié)議,現(xiàn)在思考一個(gè)問(wèn)題——它們是什么呢?這里就剝繭抽絲般的揭開(kāi)其神秘面紗。
1. 三種郵件傳輸協(xié)議概述
作為一個(gè)勤學(xué)好問(wèn)的程序猿,我們當(dāng)然也要了解下郵件發(fā)送的協(xié)議,這個(gè)是關(guān)乎郵件發(fā)送的最根本的內(nèi)容。
在上述郵件發(fā)送的過(guò)程中,郵件客戶端和郵件服務(wù)器之間,以及兩個(gè)郵件服務(wù)器之間進(jìn)行郵件傳遞,是要遵守一定的規(guī)則,這個(gè)規(guī)則就是郵件傳輸協(xié)議。常見(jiàn)的電子郵件協(xié)議SMTP、POP3、IMAP,它們都隸屬于TCP/IP協(xié)議族,默認(rèn)狀態(tài)下,分別通過(guò)TCP端口25、110和143建立連接。下面分別對(duì)其進(jìn)行簡(jiǎn)單介紹。
- SMTP:簡(jiǎn)單郵件傳輸協(xié)議(Simple Mail Transfer Protocol),用于發(fā)送電子郵件的傳輸協(xié)議;主要用來(lái)從郵件客戶端向郵件服務(wù)器發(fā)送郵件,也可以用來(lái)在郵件服務(wù)器之間轉(zhuǎn)發(fā)郵件。
- POP3:Post Office Protocol,用于接收電子郵件的標(biāo)準(zhǔn)協(xié)議;
- IMAP:全稱是 Internet Message Access Protocol,互聯(lián)網(wǎng)消息協(xié)議,是POP3的代替協(xié)議;
后兩者用來(lái)從郵件服務(wù)器獲取郵件。
這三種協(xié)議都有對(duì)應(yīng)SSL加密傳輸?shù)膮f(xié)議,分別是SMTPS,POP3S和IMAPS。下面介紹SMTP和SMTPS協(xié)議。
2. SMTP協(xié)議
SMTP:簡(jiǎn)單郵件傳輸協(xié)議,是一個(gè)基于文本的協(xié)議。在其上指定了一個(gè)消息的一個(gè)或多個(gè)接收者(收件人和抄送人),然后消息文本會(huì)被傳輸。可以使用簡(jiǎn)單的telnet程序來(lái)測(cè)試一個(gè)SMTP服務(wù)器。
如今絕大多數(shù)郵件服務(wù)器都使用該協(xié)議。當(dāng)你給別人發(fā)郵件時(shí),你的服務(wù)器的某個(gè)動(dòng)態(tài)端口(大于1024)就會(huì)和郵件服務(wù)器的25端口建立一個(gè)連接,你發(fā)送的郵件會(huì)通過(guò)這個(gè)連接傳送到郵件服務(wù)器上,保存起來(lái)。需要注意的是,現(xiàn)在國(guó)內(nèi)外的大云主機(jī)商(例如:阿里云),多數(shù)不允許連接外網(wǎng)的25端口。
3. SMTPS協(xié)議
SMTPS(SMTP-over-SSL)是SMTP協(xié)議基于SSL安全協(xié)議之上的一種變種協(xié)議,它繼承了SSL安全協(xié)議的非對(duì)稱加密的高度安全可靠性,可防止郵件泄露。SMTPS和SMTP協(xié)議一樣,也是用來(lái)發(fā)送郵件的,只是更安全些,防止郵件被黑客截取泄密,還可實(shí)現(xiàn)郵件發(fā)送者抗抵賴功能。防止發(fā)送者發(fā)送之后刪除已發(fā)郵件,拒不承認(rèn)發(fā)送過(guò)這樣一份郵件。端口465和587便是基于SMTPS協(xié)議開(kāi)放的。
465端口(SMTPS):它是SMTPS協(xié)議服務(wù)所使用的其中一個(gè)端口,它在郵件的傳輸過(guò)程中是加密傳輸(SSL/TLS)的,相比于SMTP協(xié)議攻擊者無(wú)法獲得郵件內(nèi)容,郵件在一開(kāi)始就被保護(hù)了起來(lái)。
587端口(SMTPS):它是SMTPS協(xié)議服務(wù)所使用的另一個(gè)端口,它在郵件的傳輸過(guò)程中是加密傳輸(STARTTLS)的,相比于SMTP協(xié)議攻擊者無(wú)法獲得郵件內(nèi)容,郵件在STARTTLS命令執(zhí)行后才被加密。465用于Outlook上,而587可以用于任何程序上。
Reference
https://www.jianshu.com/p/c1763b172013
總結(jié)
以上是生活随笔為你收集整理的邮件传输协议SMTP和SMTPS的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 添能天地宝羊奶粉孩子可以喝吗
- 下一篇: HTTP请求中Content-Type的