加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > 安全 > 正文

shell脚本批量推送公钥

发布时间:2020-12-15 23:13:08 所属栏目:安全 来源:网络整理
导读:针对大量的主机时,推送公钥需要一个个的输入IP和对面的密码显得异常的麻烦,所以写了个shell脚本进行批量推送。 先yum安装一个expect软件,这个软件是负责交互的。 这里先把需要推送的主机IP写入到一个文本中,后续读区的IP从这个文本中调用。 #!/bin/basha
针对大量的主机时,推送公钥需要一个个的输入IP和对面的密码显得异常的麻烦,所以写了个shell脚本进行批量推送。
先yum安装一个expect软件,这个软件是负责交互的。
这里先把需要推送的主机IP写入到一个文本中,后续读区的IP从这个文本中调用。

#!/bin/bash
all=`cat /opt/ip.txt`     #定义一个变量,查看文本中的内容
for i in $all    #定义i变量,逐个查看
do
password="123456" #定义对方的密码 
/usr/bin/expect -c "      #expect命令的路径
        spawn ssh-copy-id [email?protected]$i  #推送ip为逐个查看的变量i
        expect {
         "*(yes/no)" { send "yesr";exp_continue }   #当匹配到yes/no时,回答yes
        "*password" { send "$passwordr"; exp_continue } #当匹配到password的时候回答的密码为我们定义的
        }     
expect eof"
done

这样就可以直接免交互的进行推送了。

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读