Let's EncryptのDNS-01チャレンジを調べていたところ、サブドメインプロセス[1]について質問がありました。
たとえば、ウェブサイトexample.com
が無料のサブドメインを提供しているとします。 DNS-01チャレンジを処理するために*.example.com
サブドメインを要求することによって、_acme-challenge.example.com
のLet's Encryptワイルドカード証明書をリクエストするのを止める理由は何ですか?
ACMEプロトコル(または他の何か)にこれを妨げる何かがありますか?
[1] = https://letsencrypt.org/docs/challenge-types/#dns-01-challenge
通常、無料/カスタムサブドメインを提供するサイトはA
レコードを提供していますが、ACME DNS-01チャレンジではTXT
レコードを追加する必要があります。これはあなたが提案するものを作るでしょう非常にありません。
サイトがサブドメインの任意のTXT
レコードの追加を許可し、_acme-challenge
を予約しない場合、そのような機能の悪用を防ぐプロトコルはなく、脆弱なサービスになります。ただし、これはあまり一般的ではないユースケースであるため、このようなプロトコルを設計する場合、誰もそれを排他的に考慮しません。
幸いにも、これが発生した場合、Let's Encrypt証明書は3か月で有効期限が切れます。また、次のような場合にのみ、秘密キーにアクセスしなくても 証明書を取り消す を行うこともできます。
ホストまたはDNSが危険にさらされた後に誰かが証明書を発行した場合、制御を取り戻したらその証明書を失効させる必要があります。証明書を取り消すには、Let’s Encryptがその証明書のドメイン名を制御していることを確認する必要があります(そうしないと、他の人が許可なくお互いの証明書を取り消す可能性があります)。このコントロールを検証するために、Let’s Encryptはコントロールの発行を検証するために使用するのと同じ方法を使用します。値をDNS TXTレコードに置くか、ファイルをHTTPサーバーに置くことができます。--
取り消す証明書のすべてのドメイン名の制御を検証したら、証明書をcrt.shからダウンロードして、発行したかのように証明書を取り消すことができます。
certbot revoke --cert-path /PATH/TO/downloaded-cert.pem