WIKI使用導(dǎo)航
站長百科導(dǎo)航
站長專題
- 網(wǎng)站推廣
- 網(wǎng)站程序
- 網(wǎng)站賺錢
- 虛擬主機
- cPanel
- 網(wǎng)址導(dǎo)航專題
- 云計算
- 微博營銷
- 虛擬主機管理系統(tǒng)
- 開放平臺
- WIKI程序與應(yīng)用
- 美國十大主機
SMTP:修訂間差異
來自站長百科
Ahbaybface(討論 | 貢獻) (新頁面: '''SMTP'''(Simple Mail Transfer Protocol)即簡單郵件傳輸協(xié)議,它是一組用于由源地址到目的地址傳送郵件的規(guī)則,由它來控制信件的中轉(zhuǎn)方式。SMTP協(xié)議...) ? |
Ahbaybface(討論 | 貢獻) 無編輯摘要 |
||
第75行: | 第75行: | ||
:1.received行的關(guān)聯(lián)性。 | :1.received行的關(guān)聯(lián)性。 | ||
: | :現(xiàn)在的SMTP郵件傳輸系統(tǒng),在信封部分除了兩端的內(nèi)部主機處理的之個,考慮兩個公司[[防火墻]]之間的部分,若兩臺防火墻機器分別為A和B,但接收者檢查信封received:行時發(fā)現(xiàn)經(jīng)過了C.則是偽造的。 | ||
2. | 2.received:行中的主機和[[IP]]地址對是否對應(yīng)如: | ||
<pre> | <pre> | ||
Receibed:fromgalangal.org(turmeric.com[104.128.23.115]bymail.bieberdorf.edu.... | Receibed:fromgalangal.org(turmeric.com[104.128.23.115]bymail.bieberdorf.edu.... |
2009年5月26日 (二) 15:53的版本
SMTP(Simple Mail Transfer Protocol)即簡單郵件傳輸協(xié)議,它是一組用于由源地址到目的地址傳送郵件的規(guī)則,由它來控制信件的中轉(zhuǎn)方式。SMTP協(xié)議屬于TCP/IP協(xié)議族,它幫助每臺計算機在發(fā)送或中轉(zhuǎn)信件時找到下一個目的地。通過SMTP協(xié)議所指定的服務(wù)器,我們就可以把Email寄到收信人的服務(wù)器上了,整個過程只要幾分鐘。SMTP服務(wù)器則是遵循SMTP協(xié)議的發(fā)送郵件服務(wù)器,用來發(fā)送或中轉(zhuǎn)你發(fā)出的電子郵件。
SMTP協(xié)議原始命令碼和工作原理
- SMTP是工作在兩種情況下:一是電子郵件從客戶機傳輸?shù)椒?wù)器;二是從某一個服務(wù)器傳輸?shù)搅硪粋€服務(wù)器
- SMTP是個請求/響應(yīng)協(xié)議,命令和響應(yīng)都是基于ASCII文本,并以CR和LF符結(jié)束。響應(yīng)包括一個表示返回狀態(tài)的三位數(shù)字代碼
- SMTP在TCP協(xié)議25號端口監(jiān)聽連接請求
- 連接和發(fā)送過程:
- 建立TCP連接
- 客戶端發(fā)送HELO命令以標識發(fā)件人自己的身份,然后客戶端發(fā)送MAIL命令服務(wù)器端正希望以O(shè)K作為響應(yīng),表明準備接收
- 客戶端發(fā)送RCPT命令,以標識該電子郵件的計劃接收人,可以有多個RCPT行服務(wù)器端則表示是否愿意為收件人接受郵件
- 協(xié)商結(jié)束,發(fā)送郵件,用命令DATA發(fā)送
- 以.表示結(jié)束輸入內(nèi)容一起發(fā)送出去
- 結(jié)束此次發(fā)送,用QUIT命令退出。
- 另外兩個命令:
- VRFY---用于驗證給定的用戶郵箱是否存在,以及接收關(guān)于該用戶的詳細信息。
- EXPN---用于擴充郵件列表。
- 郵件路由過程:
- SMTP服務(wù)器基于‘域名服務(wù)DNS中計劃收件人的域名來路由電子郵件。SMTP服務(wù)器基于DNS中的MX記錄來路由電子郵件,MX記錄注冊了域名和相關(guān)的SMTP中繼主機,屬于該域的電子郵件都應(yīng)向該主機發(fā)送。
- 若SMTP服務(wù)器mail.abc.com收到一封信要發(fā)到shuser@sh.abc.com:
- Sendmail請求DNS給出主機sh.abc.com的CNAME記錄,如有,假若CNAME到shmail.abc.com,則再次請求shmail.abc.com的CNAME記錄,直到?jīng)]有為止
- 假定被CNAME到shmail.abc.com,然后sendmail請求@abc.com域的DNS給出shmail.abc.com的MX記錄,shmailMX5shmail.abc.com;10shmail2.abc.com
- Sendmail最后請求DNS給出shmail.abc.com的A記錄,即IP地址,若返回值為1.2.3.4
- Sendmail與1.2.3.4連接,傳送這封給shuser@sh.abc.com的信到1.2.3.4這臺服務(wù)器的SMTP后臺程序
7.SMTP基本命令集:
命令描述
HELO向服務(wù)器標識用戶身份 發(fā)送者能欺騙,說謊,但一般情況下服務(wù)器都能檢測到。 MAIL初始化郵件傳輸 mailfrom: RCPT標識單個的郵件接收人;常在MAIL命令后面 可有多個rcptto: DATA:在單個或多個RCPT命令后,表示所有的郵件接收人已標識,并初始化數(shù)據(jù)傳輸,以.結(jié)束。 VRFY:用于驗證指定的用戶/郵箱是否存在;由于安全方面的原因,服務(wù)器常禁止此命令 EXPN:驗證給定的郵箱列表是否存在,擴充郵箱列表,也常被禁用 HELP:查詢服務(wù)器支持什么命令 NOOP:無操作,服務(wù)器應(yīng)響應(yīng)OK QUIT:結(jié)束會話 RSET:重置會話,當前傳輸被取消
- MAILFROM命令中指定的地址是稱作envelopefrom地址,不需要和發(fā)送者自己的地址是一致的。
- RCPTTO與之等同,指明的接收者地址稱為envelopeto地址,而與實際的to:行是什么無關(guān)。
- 為什么沒有RCPTCC和RCPTBCC
- 所有的接收者協(xié)商都通過RCPTTO命令來實現(xiàn),如果是BCC,則協(xié)商發(fā)送后在對方接收時被刪掉信封接收者
- 郵件被分為信封部分,信頭部分和信體部分
- envelopefrom,envelopeto與messagefrom:,messageto:完全不相干。
- evnelope是由服務(wù)器主機間SMTP后臺提供的,而messagefrom/to是由用戶提供的。有無冒號也是區(qū)別。
- 怎樣由信封部分檢查是否一封信是否是偽造的?
- 1.received行的關(guān)聯(lián)性。
- 現(xiàn)在的SMTP郵件傳輸系統(tǒng),在信封部分除了兩端的內(nèi)部主機處理的之個,考慮兩個公司防火墻之間的部分,若兩臺防火墻機器分別為A和B,但接收者檢查信封received:行時發(fā)現(xiàn)經(jīng)過了C.則是偽造的。
2.received:行中的主機和IP地址對是否對應(yīng)如:
Receibed:fromgalangal.org(turmeric.com[104.128.23.115]bymail.bieberdorf.edu....
3.被人手動添加在最后面的received行:
Received:fromgalangal.org([104.128.23.115])bymail.bieberdorf.edu(8.8.5) Received:fromlemongrass.orgbygalangal.org(8.7.3) Received:fromgraprao.combylemongrass.org(8.6.4)