ホストを無視

ホストを無視

RACをインストールするためのoracleノードのインストールを高速化しようとしています。これを行うには、パスワードの入力を求められないようにsshをインストールして設定する必要があります。

問題は、私たちが初めて使用したときにシステムが私たちにメッセージを表示することです。

RSA key fingerprint is 96:a9:23:5c:cc:d1:0a:d4:70:22:93:e9:9e:1e:74:2f.
Are you sure you want to continue connecting (yes/no)? yes

これを避ける方法はありますか?または、サーバーごとに少なくとも1回は手動で接続する必要がありますか?

答え1

2019年12月に更新されました:

Chris Adamsが以下に指摘したように、Opensshはこの回答が書かれてから6.5年間かなり変更されており、以下の元の提案よりはるかに安全な新しいオプションがあります。

* ssh(1): expand the StrictHostKeyChecking option with two new
   settings. The first "accept-new" will automatically accept
   hitherto-unseen keys but will refuse connections for changed or
   invalid hostkeys. This is a safer subset of the current behaviour
   of StrictHostKeyChecking=no. The second setting "off", is a synonym
   for the current behaviour of StrictHostKeyChecking=no: accept new
   host keys, and continue connection for hosts with incorrect
   hostkeys. A future release will change the meaning of
   StrictHostKeyChecking=no to the behaviour of "accept-new". bz#2400

StrictHostKeyChecking noしたがって、ファイルに設定するssh_config代わりにStrictHostKeyChecking accept-new


StrictHostKeyChecking noファイルに設定する/etc/ssh/ssh_configと、サーバー上のすべてのユーザーのグローバルオプションになります。または、~/.ssh/config現在のユーザーにのみデフォルト値になるファイルを設定してください。または、コマンドラインで使用できます。

ssh -o StrictHostKeyChecking=no -l "$user" "$host"

動作方法の説明は次のとおりです。man ssh_config (または参照今回のアップデート版):

StrictHostKeyChecking

      このフラグが「yes」に設定されている場合SSHホストキーは$HOME/.ssh/known_hostsファイルに自動的に追加されず、ホストキーが変更されたホストへの接続は拒否されます。これはトロイの木馬攻撃に対して最大限の保護を提供しますが、/etc/ssh/ssh_known_hostsファイルが正しく保守されていない場合、または新しいホストに頻繁に接続されている場合は迷惑です。このオプションを使用すると、ユーザーはすべての新しいホストを手動で追加する必要があります。このフラグが「no」に設定されている場合SSH新しいホストキーは、ユーザーの既知のホストファイルに自動的に追加されます。このフラグが「ask」に設定されている場合、ユーザーが実際に実行したい操作であることを確認するまで、新しいホストキーはユーザーの既知のホストファイルに追加されません。 SSHホストキーが変更されたホストへの接続は拒否されます。既知のホストのホストキーは、すべての場合に自動的にチェックされます。引数は「はい」、「いいえ」、または「質問」でなければなりません。デフォルトは「質問」です。

答え2

ssh-keyscan- SSH公開鍵の収集

接続するホストのリストが既にわかっている場合は、単に次のようにします。

ssh-keyscan host1 host2 host3 host4

-Hこれで、sshがデフォルトで行うように結果をハッシュすることを選択できます。

君もあげることが-t keytypeできるボタンタイプはいdsarsaまたはecdsa主キーの代わりにインポートするキータイプを選択したい場合。

一度実行されると、ssh-keyscan既知のホストファイルが事前入力され、sshは新しいキーを追加する権限を要求しません。

答え3

ホストを無視

HostKeyChecking を無視します。この目的のために、私は例えば次のように使用します。

ssh -oStrictHostKeyChecking=no -oUserKnownHostsFile=/dev/null [email protected]

ホストの追加

.ssh/known_hosts初めて接続する前に、ホスト/サーバーの指紋を追加してください。これがより安全な方法です。

答え4

試す前に、次のコードを実行してください。

mkdir -p ~/.ssh     
echo "Host *" > ~/.ssh/config     
echo " StrictHostKeyChecking no" >> ~/.ssh/config

ps:本番サーバーには厳密には適用されません。 ManInMiddleに注意してください。

関連情報