これが私がやった方法です。
<オール>*ssh-keyscan -t rsa フル サーバー名
- 強調表示されたセクション (画像内) をコピーし、このキーをソース サーバーの「known_host」ファイルに追加します。もちろん、このファイルの場所は環境によって異なる場合があります。
数日前に SuperUser でほぼ同様の回答をしました。重要な部分:
- 形式が異なります
- サーバーごとに異なるホスト キー (タイプ) があります (実際に使用されるものを必ず貼り付けてください)
ssh-keyscan
があります フォーマットを作成できます
それ以外の場合は、キーの前にサーバーの IP アドレスを付けて (カンマの後にホスト名を追加することもできます)、行末からコメントを削除すれば問題ありません。フォーマットは次のようになります:
11.22.33.44 ssh-rsa AADGD...
HashKnownHosts yes
を使用する場合は、もう 1 つ注意してください。 (Debian と Ubuntu はそうです)、known_hosts
を再ハッシュする必要があります など:
ssh-keygen -Hf ~/.ssh/known_hosts
この問題にぶつかったばかりなので、私は次のようにアプローチしました:
時間の経過とともに、
を介してファイルを機械的にコピーします。ssh-keyscan server-name >> ~/.ssh/known_hosts
.ssh/known_hosts に重複したエントリが表示されました。
他の手動の方法では、.ssh
を作成する必要がありました ディレクトリがまだ存在していなかった、など
ssh
だけにすることにしました それを処理します:
ssh -o StrictHostKeyChecking=no server-name ls
-o StrictHostKeyChecking=no
オプションは自動的に「はい」と答えます
The authenticity of host 'server-name (12.345.678.900)' can't be established.
RSA key fingerprint is XXXXXXX.
Are you sure you want to continue connecting (yes/no)?
メッセージ (知らないマシンへのランダムな接続に関するすべてのセキュリティ警告をここに挿入します)。
ls
コマンドは、実行され、完了時に SSH を強制的に切断する綿毛コマンドです。好きな毛羽立ちコマンドに変更できます。
.ssh
の作成は ssh が処理します。 dir (必要な場合)、キーのコピーを 1 つだけ追加するなど。
プラットフォーム:macOS 10.14