![pssh 如何在没有密码的情况下进行 ssh 活动](https://linux22.com/image/157079/pssh%20%E5%A6%82%E4%BD%95%E5%9C%A8%E6%B2%A1%E6%9C%89%E5%AF%86%E7%A0%81%E7%9A%84%E6%83%85%E5%86%B5%E4%B8%8B%E8%BF%9B%E8%A1%8C%20ssh%20%E6%B4%BB%E5%8A%A8.png)
以下 pssh 命令执行与日期并行的操作
pssh -i -H "master01 master02 master03 worker01 worker02" -l root -x '-q -o StrictHostKeyChecking=no -o GSSAPIAuthentication=no -o PreferredAuthentications=publickey -o PubkeyAuthentication=yes' date | grep -v "^\["
Fri Jul 12 12:37:35 UTC 2019
Fri Jul 12 12:37:35 UTC 2019
Fri Jul 12 12:37:35 UTC 2019
Fri Jul 12 12:37:35 UTC 2019
Fri Jul 12 12:37:35 UTC 2019
但我们注意到机器的密码没有定义,那么 pssh 如何在没有密码的情况下进行 ssh 活动?
答案1
您的 p 命令设置 ssh 选项PubkeyAuthentication=yes
。这意味着它将使用密钥对而不是密码来登录。私钥位于运行此程序的计算机上。检查私钥是否已加密,并将打印的公钥与/root/.ssh/authorized_keys
远程计算机上的文件进行比较。
$ ssh-keygen -y -f $HOME/.ssh/id_rsa
- 如果 ssh-keygen 没有提示您输入密码,则您的私钥未加密。而是学习如何使用
ssh-agent
和加密您的私钥。否则,拥有该文件的任何人都可以以 root 身份登录您的计算机!
$ ssh-keygen -p -f $HOME/.ssh/id_rsa