通过 p s s h 批量管理服务器(一)【感谢作者的无私共享】

无需私钥的pssh的安装使用(直接使用密码验证,无需使用私钥)

普通的pssh需要使用私钥验证,但是大多数情况下我们并不想将某一台机器的私钥推送至所有机器。


1.  wget https://github.com/knktc/insecure_pssh/archive/master.zip

   或者IE打开https://github.com/knktc/insecure_pssh 然后点击zip即可下载

2.  将master(insecure_pssh-master.zip) 拷贝至/usr/local

3.   unzip master 

4.   cd insecure_pssh-master

5.   赋予其执行权限:

      chmod +x pscp pslurp pssh

6.   直接使用即可,无需安装了。


说明:

 1.host.txt里面格式如下:

  用户名:密码@主机

  root:[email protected]

  root:[email protected]

  root:[email protected]

  或者  主机   用户名  密码

  10.9.9.2 root redhat

  10.9.9.101 root jyddy123


 2.使用参数说明:

    pssh参数 

       -h 执行命令的远程主机列表  或者 -H user@ip:port  文件内容格式[user@]host[:port] 

       -l 远程机器的用户名 

       -p 一次最大允许多少连接 

       -o 输出内容重定向到一个文件 

       -e 执行错误重定向到一个文件 

       -t 设置命令执行的超时时间 

       -A 提示输入密码并且把密码传递给ssh 

       -O 设置ssh参数的具体配置,参照ssh_config配置文件 

       -x 传递多个SSH 命令,多个命令用空格分开,用引号括起来 

       -X 同-x 但是一次只能传递一个命令 

       -i 显示标准输出和标准错误在每台host执行完毕后 

       -I 读取每个输入命令,并传递给ssh进程 允许命令脚本传送到标准输入


范例:

(1)将本地文件传送至ip.txt里面主机的/tmp文件夹下

[root@zuozhang002 insecure_pssh-master]# ./pscp -h /tmp/ip.txt zzzzzzzzzzzzz /tmp/

[1] 07:25:09 [SUCCESS] [email protected]

[2] 07:25:10 [SUCCESS] [email protected]

[3] 07:25:12 [SUCCESS] [email protected]


(2)显示出ip.txt里面主机的uptime

[root@zuozhang002 insecure_pssh-master]# ./pssh  -h /tmp/ip.txt -i uptime

[1] 07:28:46 [SUCCESS] [email protected]

 14:30:13 up 68 days, 20:11,  0 users,  load average: 0.00, 0.02, 0.00

[2] 07:28:46 [SUCCESS] [email protected]

 07:28:51 up 44 days, 50 min,  1 user,  load average: 0.01, 0.03, 0.00

[3] 07:28:46 [SUCCESS] [email protected]

 07:28:47 up 64 days, 18:04,  0 users,  load average: 0.05, 0.05, 0.01

(3)从远程主机收集文件

[root@zuozhang002 insecure_pssh-master]# ./pslurp -h /tmp/ip.txt -L /zuo ~/anaconda-ks.cfg an.cfg

[1] 07:37:38 [SUCCESS] [email protected]

[2] 07:37:38 [SUCCESS] [email protected]

[3] 07:37:39 [SUCCESS] [email protected]

-L 选项指定创建子目录的位置 

-r表示递归子目录 

~/anaconda-ks.cfg 为远程服务器上的目录

an.cfg 为拷贝到 -L 指定的本地目录下面的目录名 

查看文件: 

[root@zuozhang002 zuo]# ls /zuo/* 

/zuo/10.9.9.101:

an.cfg


/zuo/10.9.9.13:

an.cfg


/zuo/10.9.9.2:

an.cfg


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章