解決策 1:
IMO、これを行う最善の方法は次のとおりです:
ssh-keygen -R [hostname]
ssh-keygen -R [ip_address]
ssh-keygen -R [hostname],[ip_address]
ssh-keyscan -H [hostname],[ip_address] >> ~/.ssh/known_hosts
ssh-keyscan -H [ip_address] >> ~/.ssh/known_hosts
ssh-keyscan -H [hostname] >> ~/.ssh/known_hosts
これにより、重複するエントリがないことが確認され、ホスト名と IP アドレスの両方がカバーされ、追加のセキュリティ対策として出力がハッシュされます。
解決策 2:
StrictHostKeyChecking
を設定します no
へのオプション 、構成ファイルまたは -o
経由のいずれか :
ssh -o StrictHostKeyChecking=no [email protected]
解決策 3:
怠惰な人向け:
ssh-keyscan -H <host> >> ~/.ssh/known_hosts
-H はホスト名 / IP アドレスをハッシュします
解決策 4:
前述のとおり、キー スキャンを使用するのが適切で目立たない方法です。
ssh-keyscan -t rsa,dsa HOST 2>&1 | sort -u - ~/.ssh/known_hosts > ~/.ssh/tmp_hosts
mv ~/.ssh/tmp_hosts ~/.ssh/known_hosts
上記は、ホストがまだ追加されていない場合にのみ、ホストを追加するトリックを行います。また、同時実行セーフではありません。 してはいけません tmp_hosts ファイルが破壊され、最終的には known_hosts ファイルが肥大化する可能性があるため、同じオリジン マシンでスニペットを同時に複数回実行します...
解決策 5:
ssh-keyscan
を使用できます 公開鍵を取得し、それを known_hosts
に追加するコマンド ファイル。