web-dev-qa-db-ja.com

オフラインキーでDNSSEC更新をプッシュする

専門家ではない立場で、私は約18のドメインのDNSを管理しています。ほとんどの場合、近親者向けの個人/バニティドメインです。 Shebang全体は、私がゾーンを管理するためのWebインターフェイスを備えた安価なマネージドホスティングプロバイダーにアウトソーシングされています。

これらのドメインは非常に重要ではないため、それらを標的とした攻撃は、プロバイダーのシステムの一般的な侵害よりもはるかに少ないように思われます。その時点で、すべての顧客のレコードが誤ったトラフィックに変更される可能性があります(おそらく非常に長いTTLを使用)。 DNSSECはこのような攻撃を軽減できますが、それはゾーンの秘密鍵がホスティングプロバイダーによって保持されていない場合に限られます。

だから、私は疑問に思います:DNSSEC秘密鍵をオフラインに保ちながら、署名されたゾーンを外部委託されたDNSホストに転送するにはどうすればよいですか?

(少なくとも私にとって)最も明白な答えは、自分のシャドウ/隠しマスター(プロバイダーがスレーブできる)を実行し、必要に応じてオフラインで署名されたゾーンファイルをマスターにコピーすることです。

問題は、私が(したい*)制御は私の個人的なラップトップであり、通常は一般的なホームADSLから接続します(つまり、動的に割り当てられたIPアドレスを介してNATの背後))。そこからスレーブにします(たとえば、非常に長いExpiryラップトップがオフライン/使用不可の期間のゾーンでの時間)は、スレーブできる動的DNSレコードを必要とするだけでなく(実際に明示的なIPアドレスではなく名前付きホストからスレーブできる場合)。また、ラップトップでDNSサーバーを実行し、DNSサーバーとホームネットワークの両方を着信ゾーン転送要求まで開く必要があります。これは理想的ではありません。

私はpreferはるかにプッシュ指向の設計を行います。これにより、ラップトップはオフラインで署名されたゾーンファイル/更新のプロバイダーへの転送を開始します。

nsupdateが法案に適合するかどうかを調べました。ドキュメントは少し大雑把ですが、私のテスト(BIND 9.7を使用)では、実際にDNSSECゾーンを更新できることが示されていますが、サーバーがゾーン署名を実行するためのキーを保持している場合のみです。 ;関連するRRSIG/NSEC/etcを含む更新を取得する方法が見つかりませんでした。記録し、サーバーにそれらを受け入れさせます。これはサポートされているユースケースですか?

そうでない場合、法案に適合する唯一の解決策は、ゾーン更新の非DNSベースの転送を含み、(できれば安価な)ホスティングプロバイダーによってサポートされる推奨事項を歓迎すると思います:SFTP/SCP? rsync? RDBMSレプリケーション?独自のAPI?

最後に、そのような設定の実際的な意味は何でしょうか?特に私のラップトップが長期間オフラインになっている場合、キーの回転は明らかな困難であるとして私に飛び出します。しかし、ゾーンは非常に安定しているので、おそらく私は長寿命のZSKで逃げることができます****...?


*たとえば、シャドウ/非表示のマスターを実行できます。アウトソーシングされたVPSである私は、さらに別のシステムを保護/管理/監視/保守しなければならないというオーバーヘッドが嫌いです。そうすることの追加の財政的費用は言うまでもありません。

**さて、これにより、断固とした攻撃者が期限切れのレコードを再生できるようになりますが、これらのドメインの場合、そのようなリスクと影響の両方が許容されます。

1
eggyal

問題は、RRSIGの有効期限ほど、キーのローテーションではありません。

キーの寿命は通常、6か月から3年のタイムスケールで測定され、キーをまったく転がしてはいけないと言う考え方が高まっています。

ただし、リプレイ攻撃を回避するには、すべてのレコードに定期的に再署名する必要があり、RRSIGの有効期間は通常1〜2週間です。

自分でゾーンに署名してホストに転送した場合は、すべてのRRSIG有効期限イベントの前に、同時にTTL有効期限などを考慮に入れて署名する必要があります( ドラフトを参照) -ietf-dnsop-dnssec-key-timing および RFC 4641 )。

DNSプロバイダーが適切に処理を行っている場合は、(非常に)長寿命のキー署名キーを使用する必要があります。必要に応じてオンラインにしますが、これは事実上侵入できないはずです。

ゾーン署名キーのみをオンラインに保つ必要があります。

2
Alnitak