bashスクリプト機能を使用してリモートホストにSSHで接続する方法は? [コピー]

bashスクリプト機能を使用してリモートホストにSSHで接続する方法は? [コピー]

私は初めてbashスクリプトに触れました。私のスクリプトからリモートコンピュータ(私のLAN上)にsshする関数を呼び出し、コマンドを実行したいと思います。

これまで私は以下を持っています:

function run_ssh_command {
    target_ip=$1
    username=$2
    password=$3
    cmd=$4

    ssh -l ${username} ${target_ip} ${password}
}

端末で次のように関数を呼び出します。

ノート:マイコンピュータで関数を実行すると、script_name、ユーザー名、およびパスワードに「実際の」値を指定します。 「ifconfig」は、リモートシステムで実行したいコマンドです。 )

source script_name.sh; run_ssh_command 192.168.X.Y username password ifconfig

結果:上記のコマンドを実行すると、ログインプロセスのパスワードプロンプト部分に移動します(例:sshと同じ)。[Eメール保護])

質問:パスワード入力を自動的に処理するスクリプトを使用したいです。一般に、この問題を解決する「最も良い」方法は何ですか?

ベストアンサー1

あなたはそれを使用することができますSSHパス。ただし、これを行うにはパスワードをハードコードする必要があります。これは一般的に安全ではないため、推奨されていないがRSAフィンガープリントにアクセスできない場合に必要になる場合があります。

使用法:

sshpass -p somepassword ssh user@host

リモートコンピュータへのルートアクセス権がある場合は、RSAキーの設定を検討する必要があります。これどのように設定されるかを説明します。

おすすめ記事