linux ssh非交互脚本,sshpass实现shell脚本非交互密码验证
1、sshpass的簡介
OpenSSH 自帶的 ssh 客戶端程序,默認不允許以非交互的方式傳遞密碼,所以需要遠程登錄服務器進行批處理就無法進行。sshpass 的出現,解決了這一問題。它允許你用 -p 參數指定明文密碼,然后直接登錄遠程服務器。
2、sshpass安裝
下載源碼包,執行以下步驟安裝:
[root@192.168.1.20 ~]#tar -zxvf sshpass-1.05.tar.gz
[root@192.168.1.20 ~]#cd sshpass-1.05
[root@192.168.1.20 ~]#./configure
[root@192.168.1.20 ~]#make && make install
安裝完成后,輸入“sshpass -V” 出現版本信息即安裝成功。
3、命令操作實例
實例1:直接遠程連接某臺主機
命令:sshpass -p '密碼' ssh root@192.168.1.100 #默認為22端口
實例2:遠程連接指定ssh的端口
命令:sshpass -p '密碼' ssh -p 1000 root@192.168.1.100 #指定ssh連接端口為1000
實例3:從密碼文件讀取文件內容作為密碼去遠程連接主機
命令:sshpass -f pwd.txt ssh root@192.168.1.100 #指定從pwd.txt讀取密碼
實例4:從遠程主機上拉取文件到本地
命令: sshpass -p '123456' scp root@192.168.1.100:/home/test.txt ./ #從遠端復制文件到本地,還可以加參數 -q 去掉進度顯示
實例5:遠程ssh到目標機器執行命令
命令: sshpass -p '密碼' root@192.168.1.100 'ifconfig; ping 127.0.0.1 -c 10; top -b -n 1; sleep 5' #shell命令要在sshpass命令一行
實例6:遠程連接時不提示是否輸入yes/no
命令:sshpass -p '密碼' ssh -o StrictHostKeyChecking=no root@192.168.1.100
總結
以上是生活随笔為你收集整理的linux ssh非交互脚本,sshpass实现shell脚本非交互密码验证的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 教培领域再爆雷 百万粉丝大V控诉“小音咖
- 下一篇: 全球首搭大疆车载 2023款宝骏KiWi