「リモートホストIDが変更されました!」エラーをクリアできるコマンドは何ですか?

「リモートホストIDが変更されました!」エラーをクリアできるコマンドは何ですか?
ssh  -p  yyyy  root@xxxxxxxxx
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@    WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED!     @
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
IT IS POSSIBLE THAT SOMEONE IS DOING SOMETHING NASTY!
Offending ECDSA key in /home/debian8/.ssh/known_hosts:28
  remove with: ssh-keygen -f "/home/user/.ssh/known_hosts" -R [xxxx]:yyyy
ECDSA host key for [xxxxxxxx]:yyyy has changed and you have requested strict checking.
Host key verification failed.

警告に従ってください。

$ ssh-keygen -f "/home/user/.ssh/known_hosts" -R [xxxx]:yyyy

/home/user/.ssh/known_hosts is not a valid known_hosts file.    
Not replacing existing known_hosts file because of errors  

今どのようなコマンドを実行する必要がありますか?

ベストアンサー1

キーだけが正しくないと判断して削除を選択した場合。

代替ソリューションのリスト:

1.- 推奨コマンドを実行します。

実行するコマンドはエラーメッセージにあります。

$ ssh-keygen -f "/home/user/.ssh/known_hosts" -R [xxxx]:yyyy

変える

  • xxxxSSHへの接続に使用されるホスト名またはIP
  • yyyyポート番号別(非標準の場合)

これにより、失敗したキーが削除され、再接続され、ファイルから新しいキーがインポートされます。

2.- ファイルライン 28 削除

エラーには、失敗した行が次のように指定されています。

Offending ECDSA key in /home/debian8/.ssh/known_hosts:28

テキストエディタまたは次のコマンドを使用して行番号28を削除できます。

sed -i '28d' "/home/user/.ssh/known_hosts"

その後、再接続して正しいキーを入手してください。

3.- ファイルを移動します。

ファイルをバックアップに移動する(将来の参照/使用/抽出キー用)

mv /home/user/.ssh/known_hosts /home/user/.ssh/known_hosts_backup

各新しいホストに接続するときに、sshにファイルを書き換えます。

4.- ファイル全体の削除

他のすべての方法が失敗した場合は、ファイル全体を削除してください。

rm "/home/user/.ssh/known_hosts"

再接続された新しいホストごとに再構築されます。

おすすめ記事