「有人用自己網域的名義發出我不知情的釣魚郵件」——能阻止這件事的,正是 SPF / DKIM / DMARC。本文通俗講解三者的作用與安全的設定步驟。
三者的作用
| 設定 | 作用(一句話) |
|---|---|
| SPF | 用 DNS 聲明「允許傳送本網域郵件的伺服器就是這些」 |
| DKIM | 給郵件加上電子簽章,證明「傳輸途中未被竄改、來自正規寄件源」 |
| DMARC | 聲明 SPF/DKIM 失敗時如何處理的原則,並接收報告(綁定三者的關鍵) |
是如何被驗證的(原理)
收件方(Gmail 等)會對收到的郵件檢查 SPF 與 DKIM,再把結果對照 DMARC 的原則,決定「放行/隔離/拒絕」。
也就是說,僅有 SPF 和 DKIM 時往往是「做了判定卻什麼都不做」,只有配上 DMARC 的原則,「攔截冒充」的效力才會真正顯現。
安全的設定步驟
SPF 只設一條且正確
把用於寄信的正規伺服器(自有、郵件投遞服務等)無遺漏地全部許可。SPF 記錄在一個網域上彙總為一條(多條容易失效)。
啟用 DKIM 簽章
在所使用的郵件傳送平台上啟用 DKIM,並把公鑰登記到 DNS,使正規郵件帶上簽章。
DMARC 從 p=none 開始
不要一上來就拒絕。先用 p=none(僅監控)+接收報告,確認正規郵件是否會被誤攔。
逐步加嚴
透過報告補齊正規投遞的遺漏後,再從 p=quarantine → p=reject。最終實現「冒充一律拒絕」。
本站視角:你守護的也是「你的使用者」
SPF/DKIM/DMARC 不只是為了讓自己的郵件能送達,更是一套保護「你的使用者」免遭冒用你網域的釣魚的機制。釣魚說到底就是竊取認證憑證或金鑰的入口。現實中,許多網域只停留在 SPF/DKIM,並未把 DMARC 提升到強制(reject)。不要滿足於 p=none,要查看報告、逐步把原則一路加嚴到 reject,才能真正見效。
接下來閱讀
FAQ
QSPF / DKIM / DMARC 是為了什麼?
為了讓收件方(Gmail 等)能夠驗證以你的網域發出的郵件是否「真實」。沒有它們,第三方就能冒用你名義傳送冒充郵件(釣魚),且無法被攔截,網域的信譽也會受損。
Q三者有什麼區別?
SPF 聲明「允許傳送本網域郵件的伺服器」,DKIM 是「證明未被竄改的電子簽章」,DMARC 則是「當 SPF/DKIM 失敗時如何處理的原則+接收報告」。DMARC 把 SPF/DKIM 綁起來,使其真正生效。
Q設定時要注意什麼?
先把正規投遞(郵件投遞服務等)無遺漏地全部許可後,再加嚴。尤其是 DMARC,如果一上來就設為拒絕(p=reject),可能連正規郵件也被攔截,因此應先用 p=none(僅監控)查看報告,再按 p=quarantine→p=reject 逐步提升。