Linuxシステムネットワークを介していくつかのファイルをコピーする予定ですが、使用しようとするとscp
確認メッセージが表示され、「はい」と入力してパスワードを入力する必要があります。
「yes」と入力し、パスワードを入力せずにこれを行う方法はありますか?
ベストアンサー1
これには2つの相互作用があります。
最初のSSH要件サーバーIDの確認。これは、攻撃者がサーバーを偽装してユーザーをだましてログインし、パスワードやその他の機密データを提供できるようにするために必要です。サーバーに初めて接続するときは、ホストの身元を確認する必要があります。その後、SSHはホスト名と暗号化IDの間の関連性を記憶します。
SSHがターゲットサーバーと通信していることを確認したら、次のことを行う必要があります。ユーザーアカウントを認証するサーバーにいくつかの資格情報を提供します。他の設定をしていない場合は、パスワードを入力するように求められます。
~のためサーバー認証最も簡単な解決策はサーバーに接続することです一度このアカウントから。自分であることを確認し、「はい」と入力してください。この決定は記録され、~/.ssh/known_hosts
再び質問を受けません。
ホスト名に加えて、IPアドレスの入力を求められます。サーバーが動的IPアドレスを使用している場合、これは迷惑になる可能性があります。サーバーのIPアドレスが変更されたという事実はほとんど興味がないため、CheckHostIP no
IPアドレス解決を設定ファイルに入れて無効にすることは通常有害ではありません~/.ssh/config
。
~のためユーザー認証、無人ジョブを有効にするには、パスワードなしでキーペアを作成します。クライアントコンピュータで空のssh-keygen
パスワードを実行して入力します。次に、ssh-copy-id the-server.example.com
公開鍵をサーバーにコピーします(これまでサーバーがユーザーを認証する唯一の方法なので、この時点でパスワードを入力する必要があります)。その後、SSHはキーファイルを読み込み、キーファイルにはパスワードがないため、人の介入なしにキーを認証に使用できます。