ホストキーが変更されたことがわかっている場合は、Known_hostsの情報を更新する簡単な方法はありますか?

ホストキーが変更されたことがわかっている場合は、Known_hostsの情報を更新する簡単な方法はありますか?

ホストのオペレーティングシステムが再インストールされ、公開鍵が再生成された場合、新しいキーが古いキーと一致しないため、そのホストへのSSH接続は当然失敗します。

ホストキーが変更されたことを知って更新したいとsshに通知するより簡単な方法はありますか?問題のある行を削除するためにテキストエディタやsedなどのものを使用すると、少しエラーが発生しやすいようです。

答え1

ssh-keygen -R hostnameファイルからホスト名(またはIPアドレス)を削除するために使用されます.ssh/known_hosts.ssh/known_hosts次回接続すると、新しいホストキーがファイルに追加されます。

答え2

TARGET_HOST=[hostname or IP]

# Remove the old key(s) from known_hosts
ssh-keygen -R $TARGET_HOST

# Add the new key(s) to known_hosts (and also hash the hostname/address)
ssh-keyscan -H $TARGET_HOST >> ~/.ssh/known_hosts

次回接続すると接続されますいいえAre you sure you want to continue connecting (yes/no)?キーがすでにknown_hostsファイルにあるため、プロンプトが表示されます。

関連情報