公众号版网站建设,做网站去哪里找,临城网站,wordpress页面显示分类文章列表一.简介
1.定义#xff1a;
ssh 登陆不能在命令行中指定密码#xff0c;sshpass 的出现则解决了这一问题。它允许你用 -p 参数指定明文密码#xff0c;然后直接登录远程服务器#xff0c;它支持密码从命令行、文件、环境变量中读取。
2.使用 sshpass 原因
使用 sshpass…一.简介
1.定义
ssh 登陆不能在命令行中指定密码sshpass 的出现则解决了这一问题。它允许你用 -p 参数指定明文密码然后直接登录远程服务器它支持密码从命令行、文件、环境变量中读取。
2.使用 sshpass 原因
使用 sshpass 来进行远程批量操作批量修改、添加日志清理工具的配置内容在不影响生产的情况下不停机用 sshpass 去批量修改基础数据并使用预留的 reload 功能重载数据此外还有新增一些比如服务的进程监控的功能进行服务化。
这一系列操作都可以通过 sshpass 进行远程操作只需几行或几十行 shell脚本就可以做到。最大限度提高效率和不影响产能。
二.使用
1.格式
sshpass 选项 命令
常见选项
-p password允许用 -p 参数指定明文密码然后直接登录远程服务器-f filename跟保存密码的文件名密码是文件内容的第一行-e 将环境变量SSPASS作为密码-d number使用数字作为获取密码的文件描述符
2.操作
先安装 sshpass 软件 ① 直接远程连接某台主机
sshpass -p 密码 ssh root192.168.44.20 (默认为22端口) ② 远程连接指定ssh的端口 使用ssh访问时A通过ssh首次连接到BB会将公钥1host key传递给A在首次链接时会弹出交互验证B的公钥1是否正确如果正确则输入yes确认A将公钥1存入known_hosts文件中以后A再连接B时B依然会传递给A一个公钥2OpenSSH会核对公钥通过对比公钥1与公钥2 是否相同来进行简单的验证如果公钥不同OpenSSH会发出警告 避免你受到DNS Hijack之类的攻击。
但是如果程序自动链接ssh远端机器就需要由程序自动应答这个确认公钥的交互过程。 ③ 从密码文件读取文件内容作为密码去远程连接主机
sshpass -f xxx.txt ssh root192.168.44.20 ④ 从远程主机上拉取文件到本地
文件的拉取与上传使用scp参数
拉取文件
命令 sshpass -p password scp usernameip:/远程文件目录/远程服务器文件/本地文件目录/
上传文件
命令sshpass -p password scp /本地路径/文件名 usernameip:/远程服务器目录 ⑤ 从文件读取密码、ip、端口 ⑥ 想批量操作连接远程服务器建议使用脚本文件
⑦ 可以添加-o StrictHostKeyCheckingno选项
表示远程连接时不提示是否输入yes/no 也可以直接去配置文件里面修改
vim /etc/ssh/ssh_config