什麼是SPF?html
這裏的SPF不是防曬指數,而是指Sender Policy Framework。翻譯過來就是發信者策略架構,比較拗口,一般都直接稱爲SPF。
SPF是跟DNS相關的一項技術,它的內容寫在DNS的txt類型的記錄裏面。mx記錄的做用是給寄信者指明某個域名的郵件服務器有哪些。SPF的做用跟mx相反,它向收信者代表,哪些郵件服務器是通過某個域名承認會發送郵件的。
由定義能夠看出,SPF的做用主要是反垃圾郵件,主要針對那些發信人僞造域名的垃圾郵件。
例如:當coremail郵件服務器收到自稱發件人是spam@gmail.com的郵件,那麼到底它是否是真的gmail.com的郵件服務器發過來的呢?那麼咱們能夠查詢gmail.com的SPF記錄。apache
關於SPF的一些知識服務器
當前市場上不少郵件系統和供應商都已經開始支持SPF,好比163.com,那麼該如何獲得163.com的SPF值呢?在CMD環境中,鍵入:
nslookup
set type=txt
163.com
就會獲得如下的結果:
163.com text ="v=spf1 include:spf.163.com -all"
其中:="v=spf1 include:spf.163.com -all" 就是163.com的SPF值。這個數據中說明了163.com有效合法服務器都有哪些!
那麼咱們該如何建立呢?
進入域名解析建立一條TXT記錄填寫正確的SPF數據就能夠生效了。
在MDaemon7.x中啓用SPF功能,並做適當調整就能夠了。
另外8.x版本新增長了一個DomainKey簽名,不過MDaemon已經自動幫你建立。架構
另外給你們一個網址,很實用
http://www.microsoft.com/mscorp/safety/content/technologies/senderid/wizard/
這個網址是一個建立SenderID的嚮導網站,他能幫你建立一個SenderID值。
SenderID (寄件人身份識別技術)。
SPF(SenderPolicyFramework,寄件人政策架構)。
SenderID技術與SPF同樣,都是一種以IP(互聯網協定)位址認證電子郵件寄件人身份的技術。框架
SPF 簡介dom
SPF 是發送方策略框架 (Sender Policy Framework) 的縮寫,但願能成爲一個防僞標準,來防止僞造郵件地址。這篇文章對 SPF 進行了簡單介紹,並介紹了它的一些優勢和不足。
SPF 誕生於2003年,它的締造者 Meng Weng Wong 結合了反向 MX 域名解析(Reverse MX) 和 DMP (Designated Mailer Protocol) 的優勢而付予了 SPF 生命。
SPF 使用電子郵件頭部信息中的 return-path (或 MAIL FROM) 字段,由於全部的 MTA 均可以處理包含這些字段的郵件。不過微軟也提出了一種叫作 PRA (Purported Responsible Address)的方法。PRA 對應於 MUA (好比 thunderbird) 使用的終端用戶的地址。
這樣,當咱們把 SPF 和 PRA 結合起來的時候,就能夠獲得所謂的「Sender ID」了。Sender ID 容許電子郵件的接收者經過檢查 MAIL FROM 和 PRA 來驗證郵件的合法性。有的說法認爲,MAIL FROM 檢查由 MTA 進行,而 PRA 檢查由 MUA 來完成。
事實上,SPF 須要 DNS 以某種特定的方式來工做。也就是必須提供所謂的「反向 MX 解析」記錄,這些記錄用來解析來自給定域名的郵件對應的發送主機。這和目前使用的 MX 記錄不通,後者是用來解析給定域名對應的接收郵件的主機的。post
要想用 SPF 來保護你的系統,你必須:測試
上述第一步要在郵件服務器所屬的域名服務器上進行調整,下一節中,咱們將討論這個記錄的細節內容。你首先須要肯定的一點是你的域名服務器(bind,djbdns)所使用的語法。但別擔憂,SPF 的官方網站提供了一個很好用的嚮導來指導你如何添加記錄。網站
SPF 的 TXT 記錄this
SPF 記錄包含在一個 TXT 記錄之中,格式以下:
v=spf1 [[pre] type [ext] ] ... [mod]
每一個參數的含義以下表所示:
參數 | 描述 | ||||||||||||||||||
v=spf1 | SPF 的版本。若是使用 Sender ID 的話,這個字段就應該是 v=spf2 | ||||||||||||||||||
pre | 定義匹配時的返回值。 可能的返回值包括:
|
||||||||||||||||||
type | 定義使用的確認測試的類型。 可能的值包括:
|
||||||||||||||||||
ext | 定義對 type 的可選擴展。若是沒有這個字段,那麼僅使用單個記錄進行問詢。 | ||||||||||||||||||
mod | 這是最後的類型指示,做爲記錄的一個修正值。
|
ISP 實施 SPF 可能對於他們處於漫遊狀態(roaming)的用戶帶來一些麻煩,當這些用戶習慣使用 POP-before-Relay 這樣的方式處理郵件,而不是 SASL SMTP 的時候問題就會出現。
嗯,若是你是一個被垃圾郵件、地址欺騙所困擾的 ISP 的話,你就必須考慮你的郵件策略、開始使用 SPF 了。
這裏是你能夠考慮的幾個步驟。
這樣,你就保護了你的服務器、你的客戶和整個世界免受垃圾郵件之類的困擾了。
SPF 是一個對於欺騙的完美保護。但它有一個侷限:傳統的郵件轉發方式再也不有效了。你不能僅僅從你的 MTA 接受郵件並簡單地從新發送它了。你必須重寫發送地址。常見的 MTA 的補丁能夠在 SPF 的網站找到。換句話說,若是你把 SPF 記錄加入到了域名服務器,你就必須更新你的 MTA 來進行發送地址改寫,即便你尚未對 SPF 記錄進行檢查。
你可能以爲 SPF 的實施有點難以理解。不過這確實不算複雜,並且還有一個不錯的嚮導來幫你完成這個轉換(參見參考文獻)。
若是你被垃圾郵件所困擾的話,SPF 將能夠幫助你,保護你的域名免受僞造郵件地址的影響,你所要作的僅僅是在域名服務器上添加一行文本並配置你的電子郵件服務器而已。
SPF 的優勢有不少。不過,像我對一些人所說的,這不是一晚上之間就能夠達到的,SPF 的好處將經過日積月累來表現出來,當其餘人都使用它的時候就能明顯地看到了。
我也提到了 Sender ID,這和 SPF 有關,但我沒有去解釋它。可能你已經知道緣由了,微軟的策略一貫如此---軟件專利。在參考文獻中,你能夠看到 openspf.org 對於 Sender ID 的立場聲明。
下一篇文章中,咱們將討論 MTA 的設置,咱們到時再見。
我僅僅但願給你一個 SPF 的簡短說明。若是你對此感興趣,想要了解更多信息的話,你能夠看看參考文獻,本文的內容就來自於此。
blog系統有一個頗有用的功能就是郵件發送留言通知:可是發送到GMail郵箱的通知信十有八九都會被標記爲垃圾郵件。緣由就是SPF:Sender Policy Framework (SPF) 要作發送人校驗,而MT設置的發信人是留言者的郵件地址,而退信地址是MT系統所在服務器的郵箱。
Received-SPF: neutral (google.com: 60.195.249.163 is neither permitted nor denied by domain of apache@localhost.localdomain)
個人WEB服務器上沒有任何郵件系統。因此沒法經過SPF校驗,有嚴格的SPF校驗這也是GMail相對Spam比較少的緣由。
如何解決呢:
1 增長郵件系統,設置MX記錄等,須要學很多東西;
2 簡單的就是先發到不支持SPF校驗的郵件系統上,而後再轉發給GMail,這時候的退信地址已經轉發郵箱了:
Received-SPF: pass (google.com: domain of #####@yeah.net designates 60.12.227.137 as permitted sender)
什麼是SPF?
SPF 是發送方策略框架 (Sender Policy Framework) 的縮寫,正在逐步成爲一個防僞標準,來防止僞造郵件地址。
您的域管理員或託管公司僅需在域名系統 (DNS) 中發佈 SPF 記錄。這些簡單的文本記錄標識了通過受權的電子郵件發送服務器(經過列出這些服務器的 IP 地址)。電子郵件接收系統會檢查郵件是否來自通過正確受權的電子郵件發送服務器。檢查步驟以下,發送人向接收方發送一封電子郵件後,郵件接收服務器接收電子郵件並執行以下操做:
• 檢查哪個域聲稱發送了該郵件並檢查該域的 SPF 記錄的 DNS。
• 肯定發送服務器的 IP 地址是否與 SPF 記錄中的某個已發佈 IP 地址相匹配。
• 對電子郵件進行打分:若是 IP 地址匹配,則郵件經過身份驗證並得到一個正分。若是 IP 地址不匹配,則郵件沒法經過身份驗證並得到一個負分。而後,對現有的防垃圾郵件篩選策略和啓發式篩選應用這些結果。
如何給郵件服務器增長SPF設置,請參考chicheng的文章:爲你的mail server增長SPF記錄
什麼是SPF
就是Sender Policy Framework。SPF能夠防止別人僞造你來發郵件,是一個反僞造性郵件的解決方案。當你定義了你的domain name的SPF記錄以後,接收郵件方會根據你的SPF記錄來肯定鏈接過來的IP地址是否被包含在SPF記錄裏面,若是在,則認爲是一封正確的郵件,不然則認爲是一封僞造的郵件。關於更詳細的信息請參考RFC4408(http://www.ietf.org/rfc/rfc4408.txt