無需私鑰的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