ラウンドロビンDNSでSSHホストキー検証を使用できますか?


3

私はラウンドロビンDNSホスト名に基づいてサーバーにログインしています - "login.example.com"はいくつかのサーバーのどれにでも行くことができます。理想的には、すべてのサーバーに同じフィンガープリントを表示させる方法があるとフォールバックが発生すると思われますが、警告/エラーなしで任意のマシンにアクセスできるようにknown_hostsファイルを更新できるようにしたいです。 /ホストキー。のような投稿を見たことがある この しかし、「ログインする静的IPアドレスを1つ選ぶ」というのは、実際には選択肢ではありません。お願いします リアル 解決策、もしあれば。

回答:


3

必要ないのなら 安全な ラウンドロビンクラスタ内のマシンを区別するには、1つのホストキーをクラスタ内の各マシンにコピーするだけです。

つまり、あなたのSSHホスト鍵チェックはそれがクラスタ内にあることを確実にするようにあなたに告げますが、それがクラスタ内のどの特定のマシンであるかについてはあなたには確実にそれを知らせません。あなたは静的IPアドレス(またはの出力)に頼ることができます hostname )クラスタ内のマシンを区別するための安全でない方法として。


1

これは私が仕事を見つけたものです...

  1. 〜/ .ssh / known_hostsにあるホストの既存のエントリをすべて削除します。
  2. ホストがマッピングしているIPアドレスの完全なリストを取得し、IPアドレスを予測します。
ssh-keyscan -H -t rsa 10.X.X.X >> ~/.ssh/known_hosts

それからあなたは二度と問題を見ることはないでしょう。

sshのホスト名

G


0

sshはDNSのなりすましの危険性がないことを確認するために作られているので、これを行うための本当に良い方法はありません。それはあなたがこの回避策を使うことができると言った:

ssh $(nslookup login.example.com | grep -v '#' | grep -m1 '^Address:' | cut -d \  -f 2)

基本的にこれはipを検索してからホスト名の代わりにIPアドレスを使うでしょう、これはサーバが同様にIPアドレスを変更しない限りこれはあなたが問題を排除するはずです。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.