web-dev-qa-db-ja.com

nsupdateコマンドはクリアテキストとして送信されますか、それとも暗号化されますか?

DebianJessyでBindを使用して独自のダイナミックDNSサーバーをセットアップしました。すべてが正常かつスムーズに実行されています。実際のddnsの更新は、nsupdate(同じサーバー上のphpによって実行されます)を使用して行われます。 phpリンク自体はhttpsで暗号化されていますが、ddns秘密鍵文字列も含むnsupdateコマンドもある程度暗号化されているのではないかと思いました。理論的かつ一般的に言えば、暗号化されていない場合、送信中に誰かが秘密鍵を読み取って、自分でddns更新をサーバーに送信できるようになりますか?

もしそうなら、nsupdateがローカルでのみ実行されるようにする方法はありますか(とにかく同じ/私のサーバーで実行されるため)または他のセキュリティ対策はありますか?現在、行はnsupdateコマンド内で「localhost」などの代わりにサーバーの公式DNS名を使用しています(それがサポートされているかどうかはわかりません)。

server ns1.external-domain-name.de
zone external-domain-name.de.
key ddns.external-domain-name.de.key MySecretKey12345
update delete ddns.external-domain-name.de.
update add ddns.external-domain-name.de 60 A
send
1
Markus K.

シークレットは暗号化されています。詳細(TSIG経由のHMAC-MD5など)を提供しなかったため、暗号化のstrengthはわかりませんが、DDNSシークレットに暗号化が含まれていることは安全な前提です。ある種のラッパー。お気づきのように、そうでなければリプレイ攻撃を受けやすくなります。

1
Andrew B