MENU
Language

CertbotのDNSチャレンジをサブドメインを含む複数ドメインで行う方法

CertbotのDNSチャレンジは、サブドメインを含む複数ドメインにも対応できます。これにより、ワイルドカード証明書(例: *.example.com)や、異なるドメインやサブドメインを対象にした証明書を取得することが可能です。

DNSチャレンジの概要

DNSチャレンジでは、対象ドメインのDNS設定に特定のTXTレコードを追加することで、ドメイン所有権を証明します。この方法は、以下のようなケースで特に便利です:

  • サーバーが公開インターネットに接続されていない場合。
  • ワイルドカード証明書(例: *.example.com)を取得する場合。
  • 複数のドメインやサブドメイン(例: example.comsub.example.com)を同時に証明書に含めたい場合。

手順

1. Certbotのインストール

Certbotをインストールします(必要に応じてDNSプラグインもインストール)。

sudo apt update
sudo apt install certbot

2. 必要なプラグインのインストール

CertbotのDNSチャレンジは、DNSプロバイダーごとのプラグインを使用して自動化できます。以下は一例です:

  • Cloudflare用: python3-certbot-dns-cloudflare
  • Route 53用: python3-certbot-dns-route53

インストール例(Cloudflareの場合):

sudo apt install python3-certbot-dns-cloudflare

3. 証明書の取得

以下のコマンドを使用してDNSチャレンジを実行します。

基本的なDNSチャレンジ(手動モード):

sudo certbot certonly --manual --preferred-challenges dns -d example.com -d *.example.com

実行後、TXTレコードをDNSプロバイダーに手動で追加するよう指示が表示されます。

自動DNSチャレンジ(Cloudflareを使用する場合): Cloudflare APIの認証情報を設定ファイル(例: ~/.secrets/cloudflare.ini)に保存して利用します。

sudo certbot certonly \
  --dns-cloudflare \
  --dns-cloudflare-credentials ~/.secrets/cloudflare.ini \
  -d example.com \
  -d *.example.com

4. 複数ドメインへの対応

複数のドメインやサブドメインを対象にする場合、-dオプションを繰り返し指定します。

例:

sudo certbot certonly --manual --preferred-challenges dns \
-d example.com -d sub1.example.com -d sub2.example.com

注意点

  1. DNSレコードの伝播時間:
    • DNSレコードを追加してから、設定が反映されるまでに数分から数時間かかることがあります。この間、CertbotはDNSレコードを検証するのを待つ状態になります。
  2. 自動更新の設定:
    • 手動で設定した場合、自動更新のたびに新しいTXTレコードを設定する必要があります。
    • 自動化を希望する場合は、DNSプロバイダー用のプラグインを使用するのがおすすめです。
  3. ワイルドカード証明書:
    • ワイルドカード証明書(例: *.example.com)を取得する際は、DNSチャレンジが必須です。

CertbotのDNSチャレンジを活用すれば、複雑な構成のドメインにも柔軟に対応可能です。特に自動化が必要な場合、DNSプロバイダーのAPIを活用すると便利です。

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

この記事を書いた人

AIアーティスト | エンジニア | ライター | 最新のAI技術やトレンド、注目のモデル解説、そして実践に役立つ豊富なリソースまで、幅広い内容を記事にしています。フォローしてねヾ(^^)ノ

コメント

コメントする

目次