キーを必要とせずに自動パスワードを使用してリモートサーバーにSSHで接続する方法は?

キーを必要とせずに自動パスワードを使用してリモートサーバーにSSHで接続する方法は?

リモートサーバーがあります。パスワードを入力せずに公開鍵を利用してSSHで接続しようとしますが、リモートシステムが公開鍵認証を拒否します。

それでは、最良のアプローチは何ですか?試してみてはいかがでしょうかsshpass

ベストアンサー1

編集する

私が参照として使用したリンクでより多くのオプションを見つけることができます。

インストールした場合は、sshpassSSH接続を自動化して各コンピュータにパスワードを入力する必要はありません。

SSHPASS='password'
  sshpass -e  your commands here

1. インストールsshpass

sshこれはパスワードをコマンドライン引数として渡すことができる素晴らしい小さなプログラムです。明らかにこれは非常に安全な解決策ではないので、「セキュリティ上の考慮事項」セクションを読んでお勧めしますman sshpass

とにかくディストリビューションリポジトリで使用できます。 Debian ベースのシステムでは、次のコマンドを使用してインストールできます。

sudo apt-get install sshpass

RedHatベースのマシンがないので確認できませんが、検索してみるとわかる限りここ、Fedoraにインストールできる必要があります。

sudo yum install sshpass

インストールが完了したら、簡単に実行してください。

SSHPASS='password'
  sshpass -e your commands

この-eオプションはsshpass変数からパスワードを取得するように指示しますSSHPASS。これはオプションに引数として提供するよりも安全です-p

重要:

接続しようとしているサーバーが不明な場合、または公開鍵がコンピュータに保存されていない場合、この操作は失敗します。これがうまくいかない場合は、リモートシステムに一度(sshまたは)接続して公開鍵を受け入れます。scp

引用する

ネットワーク上のscpを自動化するスクリプト

おすすめ記事