我想透過 Amazon Route 53 驗證 AWS Certificate Manager (ACM) 憑證。
簡短描述
若要驗證來自 Route 53 的 ACM 憑證,請使用 DNS 驗證。為了證明網域擁有權,請將 ACM 提供的 CNAME 記錄新增至您的 DNS 組態中。
解決方法
**注意:**如果您在執行 AWS Command Line Interface (AWS CLI) 命令時收到錯誤訊息,請參閱對 AWS CLI 錯誤進行疑難排解。此外,請確定您使用的是最新的 AWS CLI 版本。
如果 Route 53 是您網域的 DNS 服務供應商,那麼您可以在 ACM 主控台中設定 DNS 驗證來建立 CNAME。當您選取此選項時,ACM 會自動將記錄新增至網域的 Route 53 託管區域。
但是,如果符合以下任一情況,則必須手動新增 CNAME 記錄:
- 您對同一個網域擁有多個託管區域。
- 您的託管區域位於不同的 AWS 帳戶。
確定 NS 記錄
若要確定名稱伺服器 (NS) 記錄,請先找到對應託管區域的 DNS 組態。執行以下命令:
Linux 和 macOS:
$ dig NS example.com
Windows:
$ nslookup -type=ns example.com
**注意:**將 example.com 替換為您的網域名稱。
此命令會提供網域 DNS 組態的 NS 記錄。
將 CNAME 記錄新增至 Route 53 託管區域,該區域與輸出中的 NS 具有相同的 NS 記錄。
輸出範例:
$ dig example.com NS; <<>> DiG 9.11.4-P2-RedHat-9.11.4-9.P2.amzn2.0.2 <<>> example.comNS
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 56071
;; flags: qr rd ra; QUERY: 1, ANSWER: 4, AUTHORITY: 0, ADDITIONAL: 1
;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 4096
;; QUESTION SECTION:
;example.com. IN NS
;; ANSWER SECTION:
example.com. 300 IN NS ns-199x.awsdns-xx.co.uk.
example.com. 300 IN NS ns-29x.awsdns-xx.com.
example.com. 300 IN NS ns-54x.awsdns-xx.net.
example.com. 300 IN NS ns-120x.awsdns-xx.org.
在 Route 53 中新增 CNAME 記錄
使用 NS 記錄識別要使用的託管區域後,請將 CNAME 記錄新增至該區域。請依照以下步驟操作:
- 開啟 Route 53 console (Route 53 主控台)。
- 前往您網域的託管區域。此託管區域必須與您在先前任務中識別的 NS 具有相同的 NS 記錄。
- 選擇 Create record (建立記錄)。
- 在 Name (名稱),輸入 ACM 所產生 CNAME 的記錄名稱,但不包含網域部分。如需詳細資訊,請參閱 ACM 的 CNAME 記錄的運作方式。
- 在 Value (值),輸入 ACM 提供的完整記錄值。
- 在 Record type (記錄類型),選擇 CNAME - 將流量路由到另一個網域名稱和某些 AWS 資源。
- 在 Route Policy (路由策略),選擇 Simple routing (簡單路由)。
- 選擇 Create Records (建立記錄)。
確認 CNAME 記錄的解析
若要確認 Route 53 是否已將 CNAME 記錄新增至您的 DNS 組態,請執行類似下列命令:
Linux 和 macOS:
dig +short _example-cname.example.com
Windows:
nslookup -type=cname _example-cname.example.com
**注意:**將 example-cname.example.com 替換為您的 ACM CNAME 記錄。
如果您成功新增並傳播了 CNAME 記錄,則該命令將在輸出中傳回 CNAME 記錄的值。
具有和不具有單獨託管區域的子網域憑證請求
若要為具有單獨託管區域的子網域請求憑證,請完成以下步驟:
- 依照確定 NS 記錄區段中的步驟,辨識子網域的 NS 記錄。
- 在命令中,將網域名稱替換為您的子網域名稱。
- 查看命令輸出:
如果您收到 NS 記錄,則在子網域的託管區域中新增 CNAME 記錄,以符合這些值。
如果您沒有收到 NS 記錄,請確認您的子網域委派。
如需詳細資訊,請參閱如何為我在 Route 53 中託管的網域建立子網域?
若要為不具有單獨託管區域的子網域請求憑證,請完成以下步驟:
- 在 Apex 網域的託管區域中新增 CNAME 記錄。如需詳細資訊,請參閱使用 AWS 解決第三方 DNS 提供者的 DNS Zone Apex 問題。
- 請依照確認 CNAME 記錄的解析一節中的步驟操作,確認您的 CNAME 記錄解析正確。
**注意:**如果 DNS 組態最近發生變更,您可能會因為存留時間 (TTL) 值而遇到傳播延遲的情況。
相關資訊
為什麼我使用 ACM 受管續約程序來更新網域名稱後,我的 ACM 憑證續約狀態仍然顯示「等待驗證」?
為您的目標 DNS 設定 Amazon Route 53 別名記錄