ドメインチャレンジTXTレコードをAWS Route 53に投稿しましたが、Let's Encryptがそれを認識しません

ドメインチャレンジTXTレコードをAWS Route 53に投稿しましたが、Let's Encryptがそれを認識しません

問題があった AWS EC2 Linux インスタンスに certbot-auto をようやくインストールし、Let's Encrypt からワイルドカード証明書を取得しようとしています。

_acme-challenge.foo.bar.net という名前 (無実の人を保護するために変更) で、指定された値を持つ TXT レコードを設定するように言われました。

そこで、Route 53 コンソール ページに移動し、bar.net ホスト ゾーンを選択します。指定された値を持つ _acme-challenge.foo.bar.net レコードを追加し、「レコード セットを保存」をクリックして、数分待ちます。次に、それを選択して「レコード セットをテスト」をクリックすると、Route 53 はそれが公開されたと判断します。

しかし、certbot-autoに続行するように指示し、Let's Encryptがレコードを探すと、そこにはレコードがありません。nslookup -q=txt _acme-challenge.foo.bar.netを実行すると、

サーバーは_acme-challenge.foo.bar.netを見つけることができません

nslookup -q=txt foo.bar.netの場合は、

サーバーは foo.bar.net を見つけることができません

それでも、foo.bar.net で通常の nslookup を実行すると、見つかります。

何が問題なのですか?

答え1

問題の原因を見つけました。

NSレコードにリストされているサーバーをクロスチェックしているときに、TXTレコードの名前がそうではないことに気付きました(無実の人々を保護するために名前は変更されています)

_acme-challenge.foo.bar.net

しかし

_acme-challenge.foo.bar.net.bar.net

Route 53 コンソールのレコード セット エディタでは、ホスト ゾーンのドメイン名がレコード セット名を入力するフィールドの右側に配置され、入力した名前に追加されることに気付きませんでした。そのため、レコード名全体を入力していたため、".bar.net" が 2 回 (1 回は明示的に、もう 1 回は暗黙的に) 入力されていました。

架空のエンジニア、モンゴメリー・スコットが最初に発したフレーズを引用すると、

配管について考えすぎると、排水口が詰まりやすくなります。

関連情報