
を実行するたびに異なるキーが取得されますssh-keyscan -H some.hostname.example
。なぜでしょうか? サーバーは継続的にキーを変更しているのでしょうか?
ssh
1 回の実行で取得したキーは、その後の実行後も機能するようです。これは、 に 1 セットのキーを保存したにもかかわらず、サーバーにログインするときに警告が表示されなかったためです~/.ssh/known_hosts
。
編集: 間違っていました。キーは変更されませんが、最初の列 (ホスト名) は変更されます。これはフォーム上にあります|1|<something base64>|<something else base64>
。base64 で何がエンコードされているのかよくわかりませんが、バイナリであるようです。
答え1
ホスト名部分はハッシュ化されます。同じ名前/IP でもハッシュが異なる可能性があります (ssh-keycheck -H を使用したことを思い出してください)。したがって、これは正常な動作です。
答え2
答えはここにhttps://security.stackexchange.com/questions/56268/ssh-benefits-of-using-hashed-known-hostsハッシュ化がどのように行われるかを詳しく説明します。
要点は、同じハッシュを持たないようにし、多数の入力テキストのハッシュを事前に計算しやすくするために、「ソルト」(ランダムな追加データ) が含まれていることです。ソルトはランダムですが、表示されるだけで、ハッシュ化されることはありません。