如何解決使用 DKIM 語法建立 TXT 記錄時遇到的「{Value} 遇到 CharacterStringTooLong (值太長)」錯誤?

1 分的閱讀內容
0

我嘗試在我的 Amazon Route 53 託管區域中建立由第三方提供的 DKIM 文字資源記錄。然而,我遇到以下錯誤: 「{Value} 遇到 CharacterStringTooLong (值太長)。」

簡短描述

DNS TXT 記錄在單一字串中最多可包含 255 個字元。超過 255 個字元的 TXT 記錄字串必須分割為相同記錄內的多個文字字串。

注意: 如果值被分割,DKIM 功能不會中斷。

解決方案

  1. 開啟您從第三方供應商處收到的資源記錄。

  2. 若要遵循單一 Route 53 TXT 記錄最多包含 255 個字元的原則,請將 DKIM 金鑰值分割為兩部分。若要這麼做,請遵循下列步驟:

從資源記錄中複製 DKIM 金鑰值。
在文字編輯器的新行中貼上 DKIM 金鑰值。
將 DKIM 金鑰值分割成兩部分,然後以雙引號括住每個部分。例如,"long_string" 值將拆分為 "long_""string"

注意: 請勿在兩個部分之間新增分行符號。

3.   開啟 Route 53 主控台

  1. 在導覽窗格,選擇託管區域

  2. 選取您的託管區域。

  3. 選擇建立記錄集

  4. 建立記錄集面板,完成下列步驟:

  • 對於名稱,輸入網域金鑰識別符。
  • 對於類型,選擇 TXT
  • 對於別名,請保留預設選項
  • 對於 TTL,請輸入秒數。預設值 300 通常已足夠。
  • 對於,從文字編輯器複製您在步驟 2 中建立的已拆分 DKIM 金鑰值。在欄位貼上拆分值。
  • 選擇建立
  1. 使用 dignslookup 確認 TXT 記錄顯示為單一項目。

dig:

$ dig selector_key_1._domainkey.domain.com txt
...
;; ANSWER SECTION:
selector_key_1._domainkey.domain.com. 60 IN TXT "v=DKIM1; k=rsa; p=MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAz1xhXc+vJKhQJUch86o8Ia2+L/AYo4d5eRVrPMMWzz4EiM4eB4QC1hJ83YMCHLv5dDN2lJ3KWSd5tGOxF/FRj1KdN+Jdf+BVwuklBFO8IrDtMz/lk2CJjF8jlgIUmQAjs3lc/8Bee+" "IQeB2tLX9UWvQMpI3aZuh6Ym6hcvLnbEkALWaMQvqwgxZs1qF6t5VKMjWeNNWIScyNTYL4Ud8wDiBcWh492HustfGUxrl5zmRfEl8BzCbrOqpKPLBmk/xrHRw9PHIJyYOaZA2PFqVcp6mzxjyUmn0DH9HXdhIznflBoIOLL1dm77PyDOKdEWRkSLMCA72mZbFr9gxda72ocQIDAQAB"

nslookup:

    > nslookup -q=TXT selector_key_1._domainkey.domain.com
...
Non-authoritative answer:
selector_key_1._domainkey.domain.com.    text =
        "v=DKIM1; k=rsa; p=MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAz1xhXc+vJKhQJUch86o8Ia2+L/AYo4d5eRVrPMMWzz4EiM4eB4QC1hJ83YMCHLv5dDN2lJ3KWSd5tGOxF/FRj1KdN+Jdf+BVwuklBFO8IrDtMz/lk2CJjF8jlgIUmQAjs3lc/8Bee+"
        "IQeB2tLX9UWvQMpI3aZuh6Ym6hcvLnbEkALWaMQvqwgxZs1qF6t5VKMjWeNNWIScyNTYL4Ud8wDiBcWh492HustfGUxrl5zmRfEl8BzCbrOqpKPLBmk/xrHRw9PHIJyYOaZA2PFqVcp6mzxjyUmn0DH9HXdhIznflBoIOLL1dm77PyDOKdEWRkSLMCA72mZbFr9gxda72ocQIDAQAB"

相關資訊

TXT 記錄類型

AWS 官方
AWS 官方已更新 1 年前