熱點推薦:
您现在的位置: 電腦知識網 >> 編程 >> Java編程 >> Java核心技術 >> 正文

Sender ID框架規范概述

2013-11-23 19:01:14  來源: Java核心技術 

  前言
  這篇文章是我為了配合朋友-Windows IT Pro雜志社的編輯小夫而特別撰寫的因為時間倉促難免有誤如有不正之處歡迎大家指正
  
  Sender ID框架規范概述
  當今時代網絡早已根深蒂固的融入到了大家的日常生活中電子郵件想必也早成為了大家聯系親朋好友乃至生意伙伴不可或缺的好幫手也正因為電子郵件的如此流行越來越多的人已經感受到了垃圾郵件帶來的種種不便而這些又被叫做junk email或spam的垃圾郵件通常都是靠偽造發信人的地址來實現的這也是我們一般都知道的技術術語spoofing(欺騙)的一種
  
  現在產業界為了針對這一日趨突出的問題而聯合推出了所謂的Sender ID框架該框架就是針對垃圾郵件現象而提出的解決方案 該框架由三個主要部分組成
  
  . 微軟的Sender ID規范
  
  .  的Meng Wong制定的郵件發送者策略框架(SPF)
  
  . 遞交者優化規范(SO)
  
  該框架的目的就是通過對每一封發出的郵件的域名進行自動審核 只要能夠做到消滅域名欺騙 核實發送者身份那麼郵件發送者的域名名譽和品牌都會自然得到保護並且該框架規范還將協助郵件接受者可以更准確的進行針對垃圾郵件的過濾
  
  現在該框架規范已經被遞交給了因特網工程工作組(IETF)審核並等待批准
  
  當前活躍在該框架規范化的各主要合作組織有
  
  反垃圾技術聯盟AntiSpam Technical Alliance (ASTA)
  
  全球國際網絡安全基礎構架聯盟Global Infrastructure Alliance for Internet Safety (GIAIS)
  
  什麼是Sender ID
  具體來說
  
  .Sender ID是一種保護郵件發送者的品牌和域名被冒用的方式
  
  .Sender ID 是一種讓郵件接受者核查郵件來源的方式
  
  .可以容許采用更多的垃圾郵件過濾的方式
  
  .是讓域名被可靠使用的基礎
  
  注 Sender ID也不是完全的解決方法因為垃圾郵件發送者也會注冊他們的域名不過這樣做的好處是他們的域名可以被鎖定
  
  當前可以提供Sender ID框架方案的大型組織有
  
  微軟VeriSign BSPTrusted EIRONPOINT SystemsSend MailSymantec等
  
  Sender ID 的工作原理
  這裡有幾個關鍵步驟
  
   發件者一次性登記自己的SPF記錄後發送郵件給受件者
  
   收件者的郵件接受服務器接受郵件
  
   收件者的郵件服務器檢查在郵件發送者登記在合法DNS裡的郵件域名的SPF記錄
  
   郵件接受服務器然後核實郵件發送服務器的IP地址是否吻合該郵件域名登記在合法DNS裡的IP地址
  
   如果核實正確接受郵件
  
   如果核實不正確則拒絕郵件(如圖)
  

  SPF記錄的格式
  SPF記錄的格式有很多種我在這裡只列舉有兩種最簡單的舉例說明
  
  . TXT v=spf all
  
  說明這個域名永遠不會發送郵件
  
  . TXT v=spf mx all
  
  說明這個域名可以發送和接受郵件並且發送和接受的服務器是同一個
  
  如果要更詳細的有關SPF記錄的資料說明你可以查閱
  
  什麼是PRA
  PRA的意思是假想響應地址(Purported Responsible Address)也就是在郵件發送過程中所有郵件發送服務器的地址PRA的來源有很多比較常見的有
  
  .發送者源始服務器(這種多發生在小型網絡中及發送者和接受者的郵件服務器中沒有第三者存在)
  
  .郵件轉發服務器地址(多發生在大型網絡中及發送者和接受者的郵件服務器中有第三者存在)
  
  .更復雜的還包括郵件代發服務器地址(這種通常就是當你浏覽網頁時有的網頁提供類似發給你的朋友之類的功能你是郵件發送人可是服務器卻是該網站的郵件服務器)
  
  如果要知道更多關於PRA的資料你可以查詢[RFC]
  
  
  
  既然講到了PRA那麼這裡還有一個不得不提的就是Submitter Optimization(SO)
  
  這是一個相對於SMTP 郵件命令的可選延伸它容許發件者在SMTP協議中宣布PRA
  
  如果一旦使用只要PRA和郵件的來源不同你就必須要在郵件的FROM命令裡加入 SUBMITTER=的參數
  
  舉例
  
  下面我以一個比較具體的郵件例子來說明
  
  S: sampledomainedu ESMTP server ready
  
  C: EHLO
  
  S: sampledomainedu
  
  S: DSN
  
  S: AUTH
  
  S: SUBMITTER  《=加入遞交者對EHLO的回應
  
  S: SIZE
  
  C: MAIL FROM: SUBMITTER= 《=遞交者參數的注入
  
  S: sender ok
  
  C: RCPT TO:
  
  S: recipient ok
  
  C: DATA
  
  S: okay send message
  
  C: From:
  
  C: (message body goes here)
  
  C:
  
  S: message accepted
  
  C: QUIT
  
  S: goodbye
  
  從上面的例子我們可以看到一旦在SMTP協議中包括了遞交者信息以及結合郵件發送者的SPF記錄垃圾郵件的查處就容易多了
  
  後記雖然這是業界針對垃圾郵件及網絡安全的一大動向但是由於牽涉到的范圍很大真正可以具體實現的時間還需要我們拭目以待呀
From:http://tw.wingwit.com/Article/program/Java/hx/201311/26144.html
    Copyright © 2005-2013 電腦知識網 Computer Knowledge   All rights reserved.