我是一家位于突尼斯公司的系统管理员。我用 Debian Jessie 控制 50 多台 Raspberry Pi。我经常通过 SSH 连接它们,并且所有设备的密码都相同。
有没有什么解决办法,可以使用一次密码,而不需要再次输入?
我的电脑:gnome-Ubuntu 16.04
Raspberry Pi:Jessie arm6vl
答案1
Ubuntu 有一个名为 sshpass 的软件包。在 Ubuntu 16.04 上按如下方式安装它:
sudo apt install sshpass
像这样使用它:
sshpass -p 'YourPassword' ssh user@host
对于多个主机,你可以执行以下操作:
for host in hostname1 hostname2 hostname3; do \
sshpass -oStrictHostKeyChecking=no \
-p 'YourPassword' ssh user@${host} "hostname; df -h; echo"; done
StrictHostKeyChecking 禁用常规 SSH 检查,即远程计算机是否在已知主机列表中;如果您正在部署 Pi 农场,情况可能就是这样。使用 sshpass 时,如果没有此选项,命令将默默失败,而不是显示消息“无法确定主机 xxxx 的真实性”。