DNS Security Extensions(DNSSEC)は、DNS に追加の認証レイヤーを加え、リクエストがなりすましドメインへ誘導されないようにします。
DNSSEC の背景については、Cloudflare Learning Center ↗ を参照してください。
既存のドメインを Cloudflare にオンボードする場合は、レジストラ(ドメインを購入した場所)で DNSSEC が 無効 になっていることを確認してください。無効になっていないと、ネームサーバーを変更したときにドメインで接続エラーが発生します。
プロバイダー別の DNSSEC 手順
網羅的な一覧ではありませんが、次のリンクが参考になる場合があります。
DNSSEC を無効にする理由
ドメインで DNSSEC が有効 ↗ な場合、DNS プロバイダーはすべての DNS レコードにデジタル署名します。これにより、第三者がなりすましの DNS レコードを発行し、ドメイン宛てのトラフィックを別の場所へ誘導するのを防ぎます。
ただし、署名済みレコードが 1 セットしかないと、Cloudflare が代理で新しい DNS レコードを発行できなくなります(権威ネームサーバーとして Cloudflare を使う場合に必要な処理です)。そのため、DNSSEC を無効にせずにネームサーバーを変更すると、DNSSEC によって Cloudflare の DNS レコードが正しく解決されなくなります。
DNSSEC を有効にすると、Cloudflare はゾーンに署名し、公開署名鍵を公開し、DS レコードを生成します。
-
Cloudflare ダッシュボードで DNS Settings ページを開きます。
Settings を開く ↗ -
DNSSEC で Enable DNSSEC をクリックします。
-
ダイアログには、レジストラで DS レコードを作成するために必要な値がいくつか表示されます。ダイアログを閉じたあとは、DNSSEC カードの DS record をクリックすると、この情報を確認できます。
レジストラに DS レコードを追加します。Cloudflare が推奨する暗号である Algorithm 13 がレジストラに表示されない場合は、ECDSA Curve P-256 with SHA-256 という名前で掲載されていることもあります。
プロバイダー別の DNSSEC 手順
網羅的な一覧ではありませんが、次のリンクが参考になる場合があります。
Cloudflare を Secondary DNS プロバイダーとして使い、セカンダリゾーンで DNSSEC を設定する場合は、構成に応じて 3 つの選択肢 があります。
サブドメインゾーンで DNSSEC を設定する場合は、Subdomain DNSSEC を参照してください。
現在の DNS プロバイダーが外部の DNSKEY レコード追加に対応している場合は、マルチサイナー DNSSEC を使った アクティブ移行 で、ダウンタイムなしに DNSSEC を移行できます。
対応していない場合は、次の手順を使います。この間、短時間 DNSSEC の保護がなくなります。
- レジストラで DS レコードを削除します。
- 親ゾーンで DS レコードの TTL が完全に切れるまで待ちます。
dig DS example.comで確認します。多くの TLD では通常 24〜48 時間です。
- ネームサーバーを Cloudflare に変更します。
- 以前の NS レコードの TTL が切れるまで待ちます(通常は 1 時間以内)。
- Cloudflare で DNSSEC を有効にし、新しい DS レコードをレジストラに追加します。
有効化したあとで DNSSEC を無効にする必要がある場合:
- レジストラで DS レコードを削除します(Cloudflare Registrar を使っている場合は DNSSEC を無効にします)。
- 親ゾーンで DS の TTL が完全に切れるまで、Cloudflare でのゾーン署名は有効のままにします。
- ロールバックに必要な時間は DS の TTL に依存し、TLD によって異なります。
レジストラが Cloudflare の推奨暗号(Algorithm 13)での DNSSEC に対応していない場合、次の選択肢があります。
- レジストラに連絡し、最新の暗号化による DNSSEC の対応を依頼する。
- Algorithm 13 の DNSSEC に対応する別のレジストラへドメインを移管する。
- レジストラの非準拠を理由に、ICANN へ苦情を申し立てる ↗。
トップレベルドメインが Algorithm 13(ECDSA Curve P-256 with SHA-256 とも呼ばれます)の DNSSEC に対応していない場合は、そのトップレベルドメインに問い合わせてください ↗。