300字范文,内容丰富有趣,生活中的好帮手!
300字范文 > linux ssh非交互脚本 sshpass实现shell脚本非交互密码验证

linux ssh非交互脚本 sshpass实现shell脚本非交互密码验证

时间:2018-11-06 12:31:44

相关推荐

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

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。