远程部署的一种方案
sshpass
一个简单、轻量级命令行工具,提供非交互式密码验证
原理
- ssh 直接使用 TTY 访问,以确保密码是用户键盘输入的。 sshpass 在专门的 tty 中运行 ssh,以误导 ssh 相信它是从用户接收到的密码
- 使用 sshpass 是不安全的,因为所有系统上的用户可以看到密码。因此,在生产环境,建议使用 密钥登录。
应用范围:可以在命令行直接使用密码来进行远程连接和远程拉取文件。
使用前提:对于未连接过的主机。而又不输入yes进行确认,需要进行sshd服务的调整:
# vim /etc/ssh/ssh_config
StrictHostKeyChecking no
# vim /etc/ssh/sshd_config
GSSAPIAuthentication no
UseDNS no
# service sshd restart
安装
Ubuntu:
apt-get install sshpass
CentOs
# 源码包安装
wget http://sourceforge.net/projects/sshpass/files/sshpass/1.05/s

sshpass是一个命令行工具,允许在不交互的情况下提供SSH密码,简化远程连接和文件拉取。然而,出于安全考虑,推荐使用密钥对认证。文章介绍了如何安装sshpass,调整SSH配置以及在不同场景下的使用方法,包括从环境变量或文件读取密码,以及在bash脚本中的应用。注意,含有特殊字符的密码需要适当处理。
最低0.47元/天 解锁文章
37

被折叠的 条评论
为什么被折叠?



