server0から(server1、server2、server3)までssh(SSHにはパスワードは必要ありません(すべてのサーバー間に信頼があり、すべてのサーバーに秘密鍵が存在します))。ただし、サーバー(server1、server2&server3)のリモートスクリプトはサービスを開始します。アプリケーションを起動するにはパスワードが必要です。 SSHを使用し、リモートサーバーから自動的にコマンドを実行できるようにしたいです。リモートスクリプトにパスワードが必要な場合、またはパスワードを含むパスワードの回答が必要です。
ssh -n -o StrictHostKeyChecking=no servername remotescrip
スクリプトを実行するには、アプリケーションのパスワードを入力してください。
答え1
次に、次を使用しますexpect
。
expect -c 'spawn ssh serversuser@server' \
-c 'expect "serverprompt" {send /path/to/your/script\n}' \
-c 'expect "Enter application password to run the script:" {send yourpassword\n}'