多年來,電子郵件攻擊有所增加,許多偽造的電子郵件看起來非常真實,足以欺騙用戶和電子郵件系統。犯罪分子經常從看似屬於知名公司、銀行或受信任網站的地址發送電子郵件。當一個網域名稱被用於發送偽造電子郵件時,收件匣提供商會對其失去信任。其中最重要的工具之一是發件人策略框架。SPF檢查發送電子郵件的伺服器是否得到網域名稱擁有者的允許。當SPF設置正確時,收件匣提供商可以更準確地識別真實郵件並過濾掉偽造郵件。本指南解釋了什麼是SPF記錄,它是如何工作的,以及您如何設置它以實現更安全可靠的電子郵件傳遞。
了解SPF記錄以確保安全郵件傳遞
SPF記錄在維護電子郵件安全方面扮演著重要角色。它通知接收伺服器哪些郵件伺服器被允許為該網域名稱發送郵件,並有助於防止垃圾郵件、網路釣魚和郵件傳遞問題。
什麼是SPF記錄?
SPF記錄是一種DNS TXT記錄,旨在列舉所有允許為某個網域名稱發送郵件的伺服器和服務。當收到來自某個網域名稱的電子郵件時,接收郵件伺服器會檢查SPF記錄,並驗證發送伺服器是否包含在批准列表中。
記錄總是以版本標籤開頭:
v=spf1
此標籤告訴郵件伺服器該記錄符合SPF標準。在此標籤之後,列出定義哪些IP地址、傳出服務和網域名稱允許發送郵件的規則。
簡而言之:
SPF告訴全世界哪些郵件伺服器被允許從您的網域名稱發送電子郵件。
使用SPF保護網域名稱的主要好處
SPF有助於網域名稱保護並提高電子郵件效能。主要優點是:
1. 保護您的網域名稱免受欺騙
SPF會阻止冒充您網域名稱發送電子郵件的欺詐伺服器。如果啟用了SPF,接收伺服器可以立即檢測到偽造郵件是從未在SPF記錄中列出的伺服器發送的。這可以防止惡意訊息利用您的名稱,並保護您的客戶免受欺詐。
2. 提高您的郵件送達率
諸如Gmail、Outlook和Yahoo之類的接收提供商信任具有適當身份驗證的網域名稱。來自具有有效SPF記錄的網域名稱的電子郵件更有可能進入收件匣而不是垃圾郵件資料夾。正確的SPF設置對於使用多種電子郵件工具(如行銷平台、CRM系統和交易郵件服務)的公司尤為重要。
3. 支持DMARC以實現更強保護
SPF是DMARC(一種更強的電子郵件身份驗證策略)的主要組成部分之一。要使DMARC正常工作,您需要正確配置SPF或DKIM(或兩者)。通過配置SPF,您可以稍後配置DMARC,以確切告知發送伺服器應如何處理身份驗證失敗的郵件。
SPF如何工作及如何正確配置
SPF通過檢查郵件發送伺服器是否包含在網域名稱的SPF記錄中來工作。該過程通過以下簡單的SPF工作步驟完成:
- 郵件到達接收伺服器。
- 伺服器檢查源域的SPF記錄。
- 將發出伺服器的IP地址與允許的伺服器列表進行比較。
- 返回 SPF = Pass, SPF = Fail, SPF = SoftFail, SPF = Neutral 等結果。
- 電子郵件提供商將此結果與其他檢查相結合,以確定電子郵件是應該進入收件匣、垃圾郵件資料夾還是被拒絕。
以下是詳細的設置過程。
適用於任何網域名稱的分步SPF設置指南
設置SPF記錄可能看起來技術性很強,但按照清晰的步驟操作很容易。在本指南中,我們將按順序識別郵件來源、創建正確的SPF語法、將其發佈到DNS,並解釋驗證過程以確保可靠的郵件傳遞。
步驟 1: 識別所有授權的發送來源
創建所有為您的網域名稱發送電子郵件的伺服器和服務的列表。許多網域名稱在未被注意的情況下使用多項服務,任何遺漏都可能導致SPF錯誤。您必須包括:
- 網路託管伺服器
- 企業電子郵件服務(Google Workspace, Microsoft 365等)
- 行銷平台(Mailchimp, Brevo, ConvertKit等)
- 交易郵件服務(SendGrid, Amazon SES, Mailgun等)
- 用於發送自動電子郵件的CRM工具
- 支援工單系統
- 從您的網域名稱發送電子郵件的自定義應用程式
在創建SPF記錄之前掌握所有來源至關重要。如果您忽略了某項服務,來自該服務的電子郵件可能無法通過身份驗證。
步驟 2: 構建SPF記錄語法
所有SPF記錄都以版本標籤開頭:
v=spf1
之後,添加定義允許郵件發送目標的機制和規則。
常見的SPF機制
1. ip4:
用於允許特定的IPv4地址或範圍。
示例:
ip4:192.168.1.1
2. ip6:
用於允許IPv6地址。
示例:
ip6:2001:db8::1
3. include:
通過包含第三方服務的SPF記錄來允許。
示例:
include:sendgrid.net
4. a
允許從網域名稱A記錄IP發送郵件。
5. mx
允許從列在網域名稱MX記錄上的伺服器發送郵件。
選擇最終限定符
在SPF記錄的末尾,添加一個修飾符,告知接收郵件伺服器如何處理未經授權的寄件人。
SoftFail (~all):
讓電子郵件通過,但將其標記為可疑。
用於首次測試和設置SPF時。
HardFail (-all):
拒絕所有未在SPF記錄中列出的電子郵件。
僅在全面測試後使用。
SPF語法示例
基本示例:
v=spf1 ip4:192.168.1.10 include:sendgrid.net include:_spf.google.com ~all
步驟 3: 在您的DNS中發佈SPF記錄
要發佈SPF記錄:
- 登入到您的網域名稱註冊商或託管提供商。
- 轉到DNS管理螢幕。
- 創建一個新的TXT記錄。
- 在"名稱"欄位中輸入 @(根域)。
- 將完整的SPF記錄貼上到"值"欄位中。
- 儲存記錄。
DNS更新可能需要幾分鐘到幾小時,具體取決於提供商。
步驟 4: 驗證SPF記錄
記錄發佈後:
- 使用線上SPF檢查器檢查其是否正常工作。
- 發送測試電子郵件到您的Gmail、Outlook、Yahoo收件匣並檢查郵件標頭。
檢查以下結果:
spf=pass
如果您看到 fail、neutral 或 softfail,請檢查以下內容:
- IP地址
- include: 機制
- DNS查找次數(必須少於10次)
步驟 5: 維護和更新記錄
SPF不是設置好後就可以置之不理的記錄。確保在以下情況下進行更新:
- 添加新的電子郵件行銷工具
- 更改您的託管提供商
- 添加具有電子郵件發送功能的CRM和計費系統
- 停止使用發送服務
- 更改您的IP地址
此外,請注意DNS查找限制。SPF最多允許10次DNS查找。超過此限制將導致整個記錄失效。
您必須避免的常見SPF錯誤
SPF設置中的輕微錯誤可能導致電子郵件傳遞問題,並使網域名稱面臨被欺騙的風險。了解最常見的錯誤以避免問題,並確保電子郵件送達收件人。
1. 使用 +all 限定符
+all 修飾符允許幾乎任何伺服器冒充您的網域名稱發送電子郵件。這會使SPF的目標失效,並使網域名稱容易受到欺騙和網路釣魚攻擊。始終避免使用 +all,並改用 ~all 或 -all 以獲得適當的保護。
2. 創建多個SPF記錄
一個網域名稱只能存在一個SPF記錄。當添加多個記錄時,SPF檢查會完全失敗。為避免這種情況,請將所有授權的發出伺服器和服務集成到一個SPF記錄中。通過適當集成,來自所有合法來源的電子郵件都將通過身份驗證。
3. 超過DNS查找限制
SPF記錄最多允許10次DNS查找。過度使用 include: 命令和機制會超過此限制並導致SPF驗證失敗。如果您需要大量服務,請考慮扁平化SPF記錄或審查不必要的條目以使其符合限制。
4. 服務變更時忘記更新
當添加、刪除或更換電子郵件服務時,請務必更新SPF記錄。如果您未能更新,合法的電子郵件可能無法通過SPF檢查並被標記為垃圾郵件。定期檢查SPF記錄以確保其與您當前的電子郵件設置匹配。
5. 缺少自定義伺服器的IP地址
如果您運行自己的郵件伺服器或通過自定義應用程式發送電子郵件,則必須將這些IP地址包含在您的SPF記錄中。如果未列出這些地址,電子郵件身份驗證將失敗,送達率會降低,並且郵件被標記為可疑的風險會增加。
關於SPF、DMARC和電子郵件安全的最終思考
SPF是保護您的網域名稱免受虛假電子郵件侵害的最簡單、最有效的方法之一。它驗證可以代表您發送網域名稱的實體,並支持安全可靠的電子郵件傳遞。
然而,僅靠SPF無法解決所有電子郵件安全問題。為了獲得全面保護,還應配置DKIM和DMARC以構建強大的身份驗證系統。如果您正在管理您的網站、線上商店或企業電子郵件,請花幾分鐘時間檢查您的SPF記錄。確保包含了所有服務,並且沒有超過DNS查找限制。
正確的SPF設置有助於您的郵件到達收件匣,防止網域名稱被利用,並與您的客戶建立信任。






