Let’s Encrypt DNS-01 チャレンジとは何ですか?また、それを使用して SSL 証明書を取得する方法は何ですか?

Let S Encrypt Dns 01 Charenjitoha Hedesuka Mata Sorewo Shi Yongshite Ssl Zheng Ming Shuwo Qu Desuru Fang Faha Hedesuka



Let’s Encrypt は、無料の信頼できる SSL 認証局 (CA) です。 Let’s Encrypt は厳格なポリシーを使用してドメインの所有権を検証し、検証されたドメインに対してのみ SSL 証明書を提供します。

デフォルトでは、Let’s Encrypt は HTTP-01 チャレンジを使用して所有権を確認します。 HTTP-01 チャレンジは、Web サーバーの Webroot にファイルを配置し、Web サーバーの DNS 名を使用してファイルを取得します。インターネットからファイルを取得できた場合、ドメイン名の権限が検証され、SSL 証明書が発行されます。これは、インターネット サービス プロバイダー (ISP) からパブリック IP アドレスを取得できる余裕のあるほとんどのサーバーやホーム ユーザーにとっては良いことです。

しかし、ホーム ネットワークまたはプライベート/内部ネットワークのドメイン名に Let's Encrypt SSL 証明書を使用したい場合はどうすればよいでしょうか?そうですね、ほとんどのホーム ネットワークでは、ISP がパブリック IP アドレスを提供しない可能性が高いため、Let’s Encrypt SSL 証明書を取得するのは困難です。そのため、Let's Encrypt HTTP-01 チャレンジに合格することはできません (コンピューター/サーバーがインターネットからアクセスできないため)。







この場合、Let’s Encrypt DNS-01 チャレンジを使用して、ホーム/内部ネットワークの SSL 証明書を取得できます。この方法では、Let’s Encrypt は DNS サーバー上の「サブドメイン _acme-challenge.yourdomain.xyz」の DNS TXT レコードを追加し、DNS TXT レコードがインターネットから利用できるかどうかを確認します。 TXT レコードが一致すると、ドメインの所有者であることが確認され、Let’s Encrypt が SSL 証明書を発行します。



Let’s Encrypt DNS-01 チャレンジが機能し、SSL 証明書を自動的に更新するには、DNS サーバー上の TXT レコードの追加/削除に使用できる API を公開する DNS サービス プロバイダー (つまり、CloudFlare、DigitalOcean) を使用する必要があります。



DNS レジストラ (ドメイン名を登録した場所) がそのようなサービスをサポートしていない場合は、サードパーティの DNS サービス プロバイダーを使用できます。必要なのは、ドメインの DNS ネームサーバー アドレスを、DNS レジストラーの DNS サーバーから、希望するサードパーティ DNS サービス プロバイダーの DNS ネームサーバー アドレスに変更することだけです。





内容のトピック:

  1. Let’s Encrypt DNS 検証と簡単に統合できる DNS プロバイダーのリスト
  2. Let’s Encrypt ACME クライアントのリスト
  3. ドメインレジストラからの DNS ネームサーバーの変更
  4. Let’s Encrypt DNS-01 検証の利点
  5. Let's Encrypt DNS-01 検証の欠点
  6. 結論
  7. 参考文献

Let’s Encrypt DNS 検証と簡単に統合できる DNS プロバイダーのリスト

Let’s Encrypt コミュニティは、 DNSプロバイダーのリスト これは、Let’s Encrypt クライアントがドメイン名を検証して SSL 証明書を発行できるように、DNS レコードを自動的に追加/削除する何らかの API を公開します。

Let’s Encrypt DNS 検証と簡単に統合できる DNS プロバイダーのリストは、次の場所にあります。 このリンク



Let’s Encrypt ACME クライアントのリスト

Let’s Encrypt クライアントは ACME クライアントとも呼ばれます。 ACME は自動証明書管理環境の略です。 ACME は、コンピュータ/サーバーと認証局 (Let's Encrypt など) の間の対話を自動化するためのプロトコルです。

最も人気のある Let’s Encrypt ACME クライアントは次のとおりです。

ドメインレジストラからの DNS ネームサーバーの変更

ドメイン レジストラーが Let’s Encrypt と簡単に統合できる DNS プロバイダーのリストにない場合は、CloudFlare またはその他のサードパーティ DNS サービス プロバイダーを使用できます。必要なのは、ドメイン レジストラのダッシュボードからドメインの DNS ネームサーバーを、使用するサードパーティの DNS サービス プロバイダーの DNS ネームサーバーに変更することだけです。

次のスクリーンショットでは、ドメイン レジストラー (ドメイン名を登録した場所) のダッシュボード/Web サイトから、ドメインの 1 つの DNS ネームサーバーを (CloudFlare の DNS サーバーに) 変更するプロセスを示しました。このプロセスは、ドメイン レジストラーでも同様である必要があります。詳細については、ドメイン レジストラーのドキュメントを読むか、ドメイン レジストラーにお問い合わせください。

Let’s Encrypt DNS-01 検証の利点

Let’s Encrypt の DNS-01 検証の利点は次のとおりです。

  • パブリック/インターネットからアクセス可能な IP アドレスや Web サーバーは必要ありません。
  • これを使用して、ワイルドカード ドメイン名 (*.nodekite.com、*.linuxhint.com) の SSL 証明書を発行できます。
  • 複数の Web サーバーでうまく機能します。

Let’s Encrypt DNS-01 検証の欠点

Let’s Encrypt DNS-01 検証には多くの利点がありますが、いくつかの欠点もあります。

  • DNS-01 検証が機能するには、DNS サービス プロバイダーの API キー/トークンをサーバー上に保持する必要があります。Let’s Encrypt クライアントはこれを使用して、DNS-01 検証のために DNS サーバー上に TXT レコードを作成します。 API キー/トークンはサーバー上に保持されるため、サーバーがハッキングされた場合、API キー/トークンが侵害される可能性があります。
  • Let’s Encrypt クライアントが DNS サーバーに TXT レコードを追加した後、その変更が世界中の他の DNS ネームサーバーに反映されるまでにはしばらく時間がかかります。 Let’s Encrypt クライアントは、ドメインの所有権を確認するために、変更が世界中の一般的な DNS ネームサーバーに反映されるのを待つ必要があります。 DNS サービス プロバイダーが API で DNS 伝播時間を提供していない場合、Let’s Encrypt クライアントは、DNS の変更が世界中の他のネームサーバーに伝播するまでにどれくらいの時間を待つ必要があるかわかりません。その場合、DNS 検証がタイムアウトになり、Let’s Encrypt が SSL 証明書の発行に失敗する可能性があります。

結論

この記事では、Let’s Encrypt DNS-01 チャレンジについて説明し、ドメイン名の所有権を確認するためにデフォルトの HTTP-01 チャレンジではなくこれを使用する理由について説明しました。また、Let's Encrypt SSL 証明書を取得するために Let's Encrypt DNS-01 チャレンジに合格するための要件についても説明しました。 Let’s Encrypt と適切に統合する DNS サービス プロバイダーと、コンピューター/サーバーから DNS 検証を実行するために使用できる Let’s Encrypt ACME クライアントをリストしました。最後に、Let’s Encrypt DNS 検証の長所と短所について説明しました。

参考文献: