DKIM(DomainKeys Identified Mail,畫面上稱為 DomainKey)是信件簽章機制:GW 寄出的信會附上數位簽章,收件方的伺服器可用您 DNS 上的公開金鑰驗證「這封信確實來自您的網域、而且內容沒有被竄改」;反過來,GW 也可以對來信驗證對方的簽章。相對於 SPF 只看寄件 IP,DKIM 看的是信件本身,因此即使信件經過轉寄,簽章仍然有效。
什麼時候會用到這一頁:
- 要提升自家寄出信件的送達率(很多大型郵件服務會參考 DKIM 與 SPF 決定是否信任)
- 要避免自己的網域被偽造(配合(郵件閘道 / DMARC管理)的政策)
- 想對來信驗證簽章,把沒有簽章或簽章錯誤的信件擋掉
⚠️ DKIM 必須做兩件事才算完成:①在這一頁產生金鑰 ②把畫面上產生的 DNS TXT 記錄發布到您的 DNS。只做第一項等於沒有簽章效果——收件方查不到公鑰就無法驗證。
頁面分成兩個頁籤:簽章設定與簽章驗證。畫面上方另有 OpenDKIM 服務狀態與「重啟服務」按鈕。
簽章設定
- 啟用 DKIM(開關):出廠為關閉
- 簽署的網域:要簽章的網域名稱,多個網域請用逗號分隔,最長 255 字元(例:
mail.dom,example.com) - 選擇器名稱:DNS TXT 記錄的選擇器名稱,預設
default,最長 64 字元且只能使用英文字母與數字。建議不要修改;若修改了,DNS 上的記錄名稱也要跟著改 - 密鑰比特數:
1024或2048,出廠 1024。⚠️ 更換比特數時,金鑰與 DNS TXT 會強制更新 - 簽章密鑰產生:決定按下儲存後如何處理金鑰與 TXT
- 保持目前:沿用現有金鑰(一般情況選這個)
- 重新產生:重新產生一組新的金鑰
- 上傳更新:使用您自行提供的金鑰
- 簽章密鑰:由系統產生,務必備份這欄內容。它與下方的 DNS TXT 記錄是配對關係,任一方被修改都將無法驗證郵件的真實性
- DNS TXT 紀錄:請把這份內容發布到您的 DNS。若本機就是 DNS 伺服器,可到(郵件閘道 / DNS伺服器設定)新增對應的 TXT 記錄
- 例外網域(絕對放行):對於這些網域的郵件不會進行簽章或驗證,每行一個網域(例:
example.com) - 詳細記錄簽章原因:詳細記錄篩選器決定簽署或驗證訊息背後的邏輯,通常用於除錯
簽章驗證
這一頁籤設定對來信的處理:
- 運作模式:
- 僅在寄信時簽章:只簽自己的寄出信,不驗證來信
- 寄信與來信都簽章及驗證:兩者都做(出廠預設)
- 僅對來信進行驗證:只驗證來信,不簽自己的信
- 未簽章處理:來源郵件沒有簽章時怎麼辦——
接受(出廠預設)/拒絕/丟棄 - 簽章錯誤處理:來源郵件有簽章但驗證失敗時怎麼辦——
接受/拒絕(出廠預設)/丟棄
⚠️ 把「未簽章處理」改成拒絕或丟棄要很小心:目前仍有大量正常郵件沒有簽章,這樣設定會擋掉相當比例的合法來信。建議先維持「接受」並觀察一段時間。
畫面訊息對照
| 訊息 | 意思 |
|---|---|
| DKIM 設定已儲存 | 儲存成功 |
| 設定儲存失敗,請檢查表單 | 欄位驗證不通過(例如選擇器含非英數字) |
| DKIM 設定套用失敗 | 設定已存但套用失敗,請確認 OpenDKIM 服務後重新儲存 |
| OpenDKIM 服務已重啟/重啟 OpenDKIM 服務失敗:… | 按「重啟服務」的結果 |
常見誤解與陷阱
- 只產生金鑰、沒有發布 DNS TXT:等於沒有簽章效果。務必把 TXT 內容貼到 DNS,並確認解析得到
- 按了「重新產生」卻沒更新 DNS:⚠️ 這是最常見的錯誤——重新產生金鑰後,舊的 DNS TXT 立刻失效,所有收件方都會驗證失敗。重新產生後請馬上把新的 TXT 發布到 DNS
- 改了「選擇器名稱」但 DNS 沒跟著改:記錄名稱會對不上,驗證失敗
- 改了「簽署的網域」卻沒有一併設定新網域的 DNS:每個要簽署的網域都需要對應的 TXT 記錄
- 把「例外網域(絕對放行)」當成白名單:它的意思是「這些網域的信不做簽章也不做驗證」,不是「這些網域一定放行」
- 「未簽章處理」設成拒絕:會擋掉大量沒有簽章的合法來信,請先觀察再調整
- 沒備份「簽章密鑰」:換機或重建時若沒有原金鑰,必須重新產生並重新發布 DNS,期間的簽章驗證會失敗
- 以為 DKIM 能完全防偽造:沒有簽章的信仍可能通過;要完整防護通常要 SPF + DKIM + DMARC 三者搭配
與其他功能的關聯
- SPF 檢查寄件 IP 是否被網域授權,見(郵件閘道 / SPF 管理)
- DMARC 整合 SPF 與 DKIM 的結果並決定政策與失敗報告,見(郵件閘道 / DMARC管理)
- 若本機同時是 DNS 伺服器,簽章用的 TXT 記錄可在(郵件閘道 / DNS伺服器設定)建立
- 被 DKIM 驗證擋下的來信,可在(系統日誌 / SMTP日誌)與(郵件記錄器 / 紀錄查詢)追查