.ssh/known_host からキーを削除する備忘録です.
どうも最近,ssh の鍵の作り方が rsa から ecdsa に変更になったようで,以下の様な感じに .ssh/known_hosts ファイルが作られるようになってしまいました(もちろん以下は実際に使ってるものじゃなくて色々なところを変えたものです).
|1|4YKfISJjJHK9T4T2V3GjhO7efOs=|iYswcv+R9440C36iKrs8UsCPSRE= ecdsa-sha2-nistp256 AAAAE2VjZHNhLXNoYTItbmlzdDAyNTYAAAAIbmlzdHAyNTYAAABBBBbzA06nFzL2hIa |1|SifM1THY+Ch8ytAWyLv4jjVU6Ww=|dXyC4y0Cg4/0nI+aefqLG7um4bY= ecdsa-sha2-nistp256 AAAAE2VjZHNhLXNoYTItbmlzdDAyNTYAAAAIbmlzdHAyNTYAAABBBDbzA06nFzL2kIa |1|Ygo21nE8UfNeKDwoM5EaXyHdepk=|QmzvzwCLT1erQ79oLtss4pD3W7o= ecdsa-sha2-nistp256 AAAAE2VjZHNhLXNoYTItbmlzdDAyNTYAAAAIbmlzdHAyNTYAAABBBBOfxMMvWDmcb97
今までだと,接続先ホスト名は平文でしたので,ホスト名が変わったりした場合はその行を vi などのエディタで消せば良かったし,実際そうしていたのですが,これからはそうもいきません.
と言うことで,消し方は,以下の通り.
$ ssh-keygen -f ~/.ssh/known_hosts -R 接続先ホスト名
まさか ssh-keygen だとは思いませんでした(名前から言って鍵を作るためのコマンドなので).
しかし,ecdsa だと言うことは楕円曲線暗号ですか…….ec は ellictic curve の略ですからね.若い頃,これ関係の研究してた人が近くにいましたので,懐かしい感じがしますねぇ……
以上!