回答:
4つの方法:
質問に答えずに、新しいホストキーを使用してシステムに一度だけ接続するには、次のオプションで接続します。
ssh -q -o "StrictHostKeyChecking no" this.one.host.name
すべてのシステムの警告を永久に削除するには、~/.ssh/configファイルを編集して次の行を追加します。
Host *
StrictHostKeyChecking no
この1つのサーバーのすべての警告を完全に削除するには、~/.ssh/configファイルを編集して次の行を追加します。
Host this.one.hostname
StrictHostKeyChecking no
この1つのサーバーのこの1つの変更に関する警告を削除するには、そのサーバーのホストキーをから削除します~/.ssh/known_hosts。次回接続するときに、新しいホストキーが追加されます。
$HOME/.ssh/config2番目と3番目のオプションの両方で重要なのはあなた自身です。
これを〜/ .ssh / configに追加します。
Host 10.* # use your own pattern here, eg. *.example.com, example.*.com
StrictHostKeyChecking no # turn off the HostKey check
LogLevel ERROR # keep it from printing to STDOUT
UserKnownHostsFile /dev/null # (optional) add the host automatically to a black hole, otherwise it would be added to ~/.ssh/known_hosts and show you a warning/message at the top of your session. You may want it added to known_hosts if your shell uses `ssh` autocompletion, such as fish.
ssh0ためにスクリプト/エイリアス/機能をssh -o UserKnowHostsFile=/dev/null -o LogLevel=ERROR明示代わりにこれらのオプションをダンプすることと使用~/.ssh/config。あなたはそれらを忘れて、それからあなたがちょうどそれらを働かせたかったのになぜチェックがうまくいかなかったのか疑問に思うかもしれません。
別の提案は、ホストキーが変更されている理由を特定し、それを停止させることです。
例として、コンテナ内またはプロビジョニングシステムを介してホストを構築する場合、これらがインスタンスごとに同じ既知のホストキーを一貫して使用することを確認します。
これは常に可能であるとは限らず、ホストは制御範囲外で管理される可能性があることは十分承知していますが、これらのホストキー警告は理由があり重要です。例外カウントを減らすことは良いことです。
そうでない場合は、問題の特定のホストについてのみ、StrictHostKeyChecking Noに投票します~/.ssh/config 。