DKIM (DomainKeys Identified Mail)是透過一組公/私鑰來判斷郵件是否可被信任的一種加解密技術。
公鑰放置在發信方domain DNS的txt記錄中,
當收信方收到信時,會透過發信方DNS中的公開金鑰來進行解密。
若是公私鑰無法成功對應上,或是發信方沒依收件端要求設定DKIM ,
那麼就會因此被判定為無法信任而被視為假冒郵件或垃圾郵件。
所以在DKIM的架設上,第一步就是要產生這成對的公/私鑰,
然後配置在DNS與Mail server中。
DKIM的公/私鑰除了自行安裝DKIM套件來產生外,
也可以透過免費的DKIM creater來產生。
以 EASYDMARC 提供的服務為例,
輸入自己的domain與一個自訂的Selector後,就可以產生出一組公/私鑰來使用。
事實上除了公/私鑰以外,它連DNS所需的txt record內容都一併產生了。
v=DKIM1;t=s;p=MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCijEpLx9RSOweN0Lf+91tyA1g6rQNCai/chGjEDN+Nng9N8R/42bPK6jjkGXY37mf67WaaENUKpc6EcZzOTSJQr/RYMocGczd0ju8fXwXH6m9rpAbUs+eg1CRcqSvdsc9SxAyOHJ25ByOJ4V9KKa6hOlABi4Fi8R2HyNv6ec+FswIDAQAB
我們只要把這組內含公鑰的字串貼在DNS的txt內容中,
建立一個名稱為 Selector._domainkey 的txt record,
DNS上的設定就完成了~
(其中_domainkey為固定的識別字串,與Selector間以 . 區隔)
↑以順子的範例來說,順子自訂的Selector名稱是myKey,那這筆DNS record的名稱就應該是myKey._domainkey。
DNS上的txt record完成後,接著進行發信端的設定,
以Sophos XG/S的MTA mode為例,
在 保護 > 電子郵件 > 一般設定 的 DKIM簽發 中新增一筆DKIM記錄,然後貼上剛才產生出來的私鑰。
↑Domain與Selector請務必對應正確。
完成後,該domain透過XG/S對外寄出時,就會夾帶DKIM資訊在header中,供收信方驗證。
如何驗證DKIM設定是否正確呢?
除了透過線上DKIM檢查工具來查看DNS上的設定是否正確以外,
直接發信給Gmail信箱,然後透過表頭中的DKIM檢查結果來確認是最準確的!
♥順子老婆的網拍,請多關照∼
If you don't like something, change it.
If you can't change it, change your attitude.
Don't complain!
|