Let's EncryptのDNS-01検証でワイルドカード証明書を取得する

ワイルドカード証明書はHTTP-01では取得できずDNS-01検証が必須。certbotとDNSプラグインを使った取得と自動更新の構成を解説する。

DNS-01が必要な理由

*.example.comのようなワイルドカードはドメイン全体の支配を証明する必要があり、TXTレコードによるDNS-01検証のみが許可されている。

certbotプラグインでの自動化

Cloudflare等のAPI対応DNSならcertbot-dns-cloudflareプラグインでTXT追加から削除まで自動化できる。APIトークンはZone編集権限に絞る。

API非対応DNSの回避策

レジストラのDNSがAPI非対応なら、_acme-challengeだけを対応DNSへCNAME委任するacme-dns方式が使える。