没有合适的资源?快使用搜索试试~ 我知道了~
通过pssh和sshpass工具实现一对多的免密登陆+批量操作
18 下载量 27 浏览量
2021-01-09
11:47:39
上传
评论 1
收藏 58KB PDF 举报
温馨提示
需求: 在一台服务器A上实现对多台机器(SUT,被测机)的批量执行命令,发送文件 使用系统,工具: CentOS 7 pssh(yum install pssh安装):用于批量执行操作,前提是已经配置好了ssh免密登录 sshpass(yum install sshpass安装):用于ssh登陆时自动输入密码 思路: 服务器A上生成公钥,将公钥分发给所有SUT的test用户,使得所有SUT的test用户可以免密登陆 修改/etc/ssh/sshd_config配置文件,使得可以root用户登陆 服务器A将公钥分发给所有SUT的root用户,使得所有SUT的root用户可以免密登陆 发送服务器A
资源推荐
资源详情
资源评论
通过通过pssh和和sshpass工具实现一对多的免密登陆工具实现一对多的免密登陆+批量操作批量操作
需求:需求:
在一台服务器一台服务器A上实现对多台机器多台机器(SUT,被测机,被测机)的批量执行命令,发送文件
使用系统,工具:使用系统,工具:
CentOS 7
pssh(yum install pssh安装):用于批量执行操作,前提是已经配置好了ssh免密登录
sshpass(yum install sshpass安装):用于ssh登陆时自动输入密码
思路:思路:
服务器A上生成公钥,将公钥分发给所有SUT的test用户用户,使得所有SUT的test用户可以免密登陆
修改/etc/ssh/sshd_config配置文件,使得可以root用户登陆
服务器A将公钥分发给所有SUT的root用户用户,使得所有SUT的root用户可以免密登陆
发送服务器A指定目录下的文件到所有SUT
备注:之前也想过使用expect脚本,自动输入密码,来一个个传文件,但是感觉太慢了,主要还是想利用pssh的批量执行功
能,但它前提是配置免密登录,所以脚本的主要功能是配置免密登陆,再之后的批量传输文件就很简单了
遇到的问题:遇到的问题:
1.除了使用expect脚本和手动输入,如何使用命令生成公钥
ssh-keygen -f “/root/.ssh/id_rsa” -N “”
2.sshpass自动登陆时,面对口令登陆口令登陆除了使用expect脚本和手动输入,还有什么解决办法
ssh取消口令认证
3.ssh免密登陆失败
ssh原理
ssh免密登陆失败原因
4.pssh的使用时,存放ip的文件内容格式为uesr@ip,这样登陆test和root用户需要2个配置文件,如何只需要一个配置文件
使用-l参数指定用户,这样文件内容为ip即可
目录结构:目录结构:
ssh.sh test免密登陆+root免密登陆+发送文件
sshd_config.sh 修改ssh配置
ip.log SUT ip列表
SUT_File 目录,将其中文件发送到SUT
代码实现:代码实现:
ssh.sh:
#!/bin/bash
#清空配置
rm -rf /root/.ssh/*
echo "---------------------------------------------"
echo "--------------------clear--------------------"
echo "---------------------------------------------"
sleep 1
资源评论
weixin_38552871
- 粉丝: 15
- 资源: 943
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功