Linux:Ubuntu 14.04.3 LTS
cat /tmp/passfile
ABCxyz123
sshpass -f /tmp/passfile parallel-ssh -I -A -h hostlist.txt "sudo -S ls -l /root" < /tmp/passfile
Googleディスカッションで説明されている方法Googleグループ 出力エラーは次のとおりです。
[1] 01:07:25 [FAILURE] 10.0.4.194 Exited with error code 255
[2] 01:07:25 [FAILURE] 10.0.4.205 Exited with error code 255
リモートサーバーから/var/log/auth.logに接続しようとすると、次のメッセージが表示されます。
Sep 24 19:20:52 ubu1401 sshd[5765]: Accepted password for ubuntu from 10.0.4.1 port 55019 ssh2
Sep 24 19:20:52 ubu1401 sshd[5765]: pam_unix(sshd:session): session opened for user ubuntu by (uid=0)
Sep 24 19:21:26 ubu1401 sshd[5765]: pam_unix(sshd:session): session closed for user ubuntu
Sep 24 19:21:26 ubu1401 sudo: pam_unix(sudo:auth): conversation failed
Sep 24 19:21:26 ubu1401 sudo: pam_unix(sudo:auth): auth could not identify password for [ubuntu]
Sep 24 19:22:25 ubu1401 sshd[5791]: Connection closed by 10.0.4.1 [preauth]
ベストアンサー1
できるだけ安全なパスワードを提供するには、このバージョンを試してください(pssh
CentOS、Fedora、parallel-ssh
Ubuntu、Debian):
stty -echo; printf "Password: "; read PASS; stty echo; echo "${PASS}" | \ ssh <USER>@localhost "sudo -S dmesg"
アップデート(@chutzのおかげで):
read -s -p "Password: "; echo "${REPLY}" | \ ssh <USER>@localhost "sudo -S dmesg"
次に、次のようにpsshに適用します(それに応じて更新):
read -s -p "Password: "; echo "${REPLY}" | \ pssh -H <USER>@localhost -o /tmp/output -I "sudo -S dmesg"
同じ方法を使用して、複数のサーバーから一時的にダンプを収集します。Ctrlこれを停止するには、通常どおり+を使用してくださいC。これは表示されますが、[FAILURE] <HOST> Interrupted
これはtcpdumpが無限に実行されるためです。出力は依然として一般的な位置にあります。この-t 0
オプションは、接続がタイムアウトしないようにするためのものです。 tmuxまたはscreenを使用して後でダンプを収集することもできます。
read -s -p "Password: "; echo "${REPLY}" | \ pssh -h <HOSTFILE> -o /tmp/output -t 0 -I "sudo -S tcpdump -l -nn -vv -i any not port 22"
正しいSSHユーザーが含まれていること、および以前にこれらのサーバーに接続したことがないことを確認してください。ローカルテストによってサーバーファーム全体がシャットダウンしないことがよくあります。複数のホストを近似するには、localhostの代わりに127.0.0.Xアドレスを使用できます。