原版的pssh,只在使用无密码证书登陆的时候非常方便,而对只支持密码登陆的ssh主机,则会弹出输入密码的交互提示,导致自动化脚本运行不自动了. 由于服务器比较多,并且登陆方式不一样,有的用证书,有的使用密码,所以对pssh作一点hack,以方便提高工作效率. 现在对pssh稍微做了点修改,在定义hosts.txt文件的时候,可选地加入密码项,如果检测到密码则使用sshpass这个命令来处理密码的自动输入功能.这样就能全自动进行了. 原来的hosts.txt 格式: 1. host[:port] [login] 2. [user@]host[:port] hack后的文件格式: 1. host[:port] [login[:passwd]] 2. [user[:passwd]@]host[:port] 虽然这样有些安全问题,但即使使用证书也存在同样级别的安全问题,因为如果保存hosts.txt的主机不安装,那么这主机上的登陆证书一样不安全. 把hosts.txt的权限设置与证书权限一样高,安全性是一样的. 依赖外部包: sshpass 修改的源文件: psshlib/psshutil.py bin/pssh bin/pscp bin/pnuke bin/prsync bin/pslurp
kitech/parallel-ssh
little modified from original parallel-ssh for suite my work needs;
PythonNOASSERTION