本文主要介紹什麼是DKIM以及如何添加。
一、DKIM
DKIM(DomainKeys Identified Mail)是一種電子郵件驗證方法,用於協助檢測電子郵件中的偽造和篡改行為,以此來提高郵件的安全性和信任度。這種技術允許寄件者通過使用數位簽章來證明郵件確實是由其聲稱的發件網域名稱所發送,並且郵件的內容沒有在傳輸過程中被篡改。
二、如何擷取記錄值
郵箱管理員登入管理後台,依次進入企業定製--網域名稱管理--網域名稱設定,點擊查看配置方法。
點擊複製,擷取DKIM記錄值。
不同網域名稱的主機記錄和記錄值是不一樣的,請前往後台擷取自己對應網域名稱的資料。
三、如何添加
DKIM通過DNS中的TXT記錄配置實現,所以TXT需要首先生效。
此TXT記錄中具體的“主機記錄”和“記錄值”均需要您聯絡您的郵件供應商提供,如下操作步驟內容僅供參考。
操作步驟樣本:
1、登入Alibaba Cloud DNS控制台;
2、點擊網域名稱,進入解析設定頁面;
3、在解析設定頁面中,點擊添加記錄按鈕,建立TXT記錄;
4、TXT記錄的添加規則,主機記錄為輸入default._domainkey;
5、TXT記錄值v=DKIM1; g=*; k=rsa; p=......(注意如下記錄為一整行)。下圖為添加DKIM記錄樣本:
四、DKIM簽名文法說明
當一封電子郵件被發送時,如果啟用了DKIM,發送伺服器會為郵件添加一個DKIM簽名頭部。這個DKIM簽名包括了用於驗證郵件的資訊,其中關鍵的部分包括簽名(使用私密金鑰產生)和選取器(selector)。選取器是用來識別特定的DKIM公開金鑰記錄的一個唯一的字串標識。
這裡是一個典型的電子郵件中的DKIM簽名頭部樣本:
DKIM-Signature: v=1; a=rsa-sha256; d=example.com; s=default; c=relaxed/relaxed;
h=from:to:subject:date:message-id; i=@example.com;
bh=...; b=...;
在這個頭部中:
v=1
表示DKIM版本。a=rsa-sha256
表示簽名演算法。d=example.com
表示發送域。s=default
表示用於簽名的選取器。c=relaxed/relaxed
表示正常化演算法。h=from:to:subject:date:message-id
表示被簽名的頭部欄位。i=@example.com
表示簽名身份。bh=
後面的部分是郵件內文的雜湊值。b=
後面的部分是簽名本身。
當收信方伺服器接收到這封電子郵件時,它會查看DKIM-Signature
頭部,找到d=
(域)和s=
(選取器)的值。這兩個值告訴收信方伺服器去哪個DNS記錄中尋找相應的公開金鑰。
收信方伺服器會根據發送域(d=example.com
)和選取器(比如default
)構造一個DNS查詢,形如:
default._domainkey.example.com
然後收信方伺服器查詢這個DNS記錄,擷取公開金鑰,用這個公開金鑰來驗證簽名b=
的有效性。如果簽名驗證成功,那麼可以認為這封郵件確實來自聲稱的域,並且在傳輸途中未被篡改。
如果一個網域名稱有多個發送源,每個源都應該使用不同的選取器,這樣收信方就可以通過每封郵件的DKIM-Signature
頭部中的選取器來找到正確的公開金鑰。