SSHクライアント構成でCheckHostIP no
を設定すると、実際にどのようなセキュリティ上の影響がありますか?
これについてはいくつかの議論があります(例 https://askubuntu.com/a/48339 )と追加のセキュリティのためにyes
に設定するための推奨事項(例 https://security.stackexchange.com/a/8479 、 https://serverfault.com/a/193634 )ですが、一部の人々はそれが本当にセキュリティにとって重要ではないと言っています( https://unix.stackexchange.com/a/285551 )。
CheckHostIP no
を使用すると、CheckHostIP yes
で防止/検出できる攻撃の種類は何ですか?
後から考える:CheckHostIP no
は、ターゲットホストのSSHキーがチェックされないことを意味しますか?その場合、動的IPアドレスを持つマシンに安全に接続するにはどうすればよいですか?
CheckHostIP no
は、sshがknown_hostsファイルのホストIPアドレスをチェックしないことを意味します。そのため、CheckHostIP
がno
に設定されている場合にのみ、DNSサーバーは、sshクライアントの警告なしに、known_hostsファイルに記述されている別のIPアドレスを返すことができます。
たとえば、(ハッシュ化されていない)known_hostsファイルのエントリは次のようになります。
www.example.org,1.2.3.4 ssh-rsa AAAA...njvPw==
CheckHostIP
がno
に設定されている場合、DNSサーバーは、www.example.orgのアドレスとして1.2.3.4として別のIPを返すことができます。ただし、SSHキーは引き続きチェックされます。 CheckHostIP no
は、IPが可変であることを期待し、ホスト名に対してキーチェックを行わせることのみを意味します。
したがって、(1)CheckHostIP
がno
に設定され、(2)攻撃者がDNSを制御でき、(3)秘密鍵を持っている場合、最初に元のように見えるサーバーを設定できます。 1。これは機密性に悪影響を与える可能性があります。バックアップサーバーについて考えてみてください。しかし、前提条件2 + 3が満たされた場合、攻撃者はシステムを危険にさらすことができます。 CheckHostIP no
さらなる攻撃のみが可能です。