sshpass以及ssh远程交互时候取消输入yes的选项

系统+安全 Liemer_Lius 3617℃ 0评论

脚本运行中, 交互是一件非常影响效率的事情.

sshpass是一款开源的python开发的工具, 可以在ssh远端主机的时候, 自动交互传密码到远程主机, 实现自动交互.

ssh首次登陆的时候, 需要同意并认可远程主机的公钥, 通常需要在第一次的时候输入yes. 如果脚本中没有选项, 很容易因为这个导致交互的失败.

ssppass的下载路径

百度搜索, 即可找到sshpass的下载路径. 比如下面的:

https://archlinux.pkgs.org/rolling/archlinux-community-x86_64/sshpass-1.06-1-x86_64.pkg.tar.xz.html

sshpass主要的作用就是ssh的时候, 远程和主机交互, 脚本执行的时候不用再次输入密码.

当然, 缺点很明显, 需要将密码明文放到里面. 我们可以以read -p的形式, 将密码在脚本的前面传入, 防止密码明文状态泄露.

sshpass的用法举例:

sshpass -p password ssh -o StrictHostKeyChecking=no lius@192.168.33.56 "ls /tmp"

-p: 指定密码

-o: ssh或scp的一个选项, StrictHostKeyChecking=no表示在第一次主机认证的时候, 自动接收远端主机密钥.

 

转载请注明:liutianfeng.com » sshpass以及ssh远程交互时候取消输入yes的选项

喜欢 (1)

发表回复