web-dev-qa-db-ja.com

HostKeyAlgorithmsのアップグレードパス

すべてのSSH接続のHostKeyAlgorithmsのデフォルト設定を変更して、ssh-ed25519よりもecdsa-sha2-nistp256を優先したいと思います。しかし、私は現在、ecdsa-sha2-nistp256ファイル(約70)に多くのホストのknown_hostsホストキーを持っています。新しい設定でそのようなホストに接続すると、誰かがそのホストのホストキーを置き換えた場合と同じメッセージが表示されます。

@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@    WARNING: REMOTE Host IDENTIFICATION HAS CHANGED!     @
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
IT IS POSSIBLE THAT SOMEONE IS DOING SOMETHING NASTY!
Someone could be eavesdropping on you right now (man-in-the-middle attack)!
It is also possible that a Host key has just been changed.
The fingerprint for the ED25519 key sent by the remote Host is
SHA256:rqhdlN+Qe/GJeWoj3pyhLLSnzSCz68ZA7ds+mG4iZ7o.
Please contact your system administrator.
Add correct Host key in [...]/.ssh/known_hosts to get rid of this message.
Offending ECDSA key in [...]/.ssh/known_hosts:52
ED25519 Host key for [...] has changed and you have requested strict checking.
Host key verification failed.

これで、known_hostsファイルからこれらのホストをすべて削除して、次の接続で「新しい」ED25519キーを受け入れる必要はありません。むしろ、そのファイルの既存の内容を継続する方法が欲しいのです。これを行う方法はありますか?例えば。優先アルゴリズムを使用していない場合でも、既知のホストキーにフォールバックします。または、これらすべてのエントリを自動的に置き換える方法はありますか?

1
Feuermurmel

nix で同様の質問に答えていたので、短くするために、OpenSSH6.8 +にはオプションUpdateHostKeysがあります。これは、によって提供されるすべてのホストキーを取得する必要があることをクライアントに通知します。サーバ。

これで問題が解決するはずです。

1
Jakuje