我是靠谱客的博主 坚强钢笔,最近开发中收集的这篇文章主要介绍Linux自动批量增加公钥,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

自动增加公钥

需求:

提示要输入对方的ip和root密码,然后可以自动把本机的公钥增加到对方机器上,从而实现密钥认证。

1.在使用之前,先安装epel源,yum install expect -y

2.写分发脚本,后缀为exp

#!/usr/bin/expect#!/bin/bash
#name:南宫乘风
#email:heian99@163.com
#自动添加公钥到指定的服务器
set host_ip [lindex $argv 0]
spawn ssh-copy-id -i /root/.ssh/id_rsa.pub $host_ip
expect {
        -timeout 60
        "(yes/no)?" { send "yesn";exp_continue}
        "password:" { send "rootn"} #填写服务器的同一密码
        timeout {puts "Connect timeout!";return}
}
expect eof
exit -onexit {
        send_user "Job has finished!"
}

注:set的作用是设置变量,spawn设置执行命令时,可以引用变量;变量的第一个参数为0

编写ip.txt,存放ip地址

3.执行以下命令开始分发

for ip in `cat /root/ip.txt`;do expect /root/ssh.exp $ip ;done

如果密码不一样,也可以定义到ip.txt的文本里面,通过awk获取到。

然后传值给expect。可以实现不同ip和密码的自动批量秘钥传输。

最后

以上就是坚强钢笔为你收集整理的Linux自动批量增加公钥的全部内容,希望文章能够帮你解决Linux自动批量增加公钥所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(49)

评论列表共有 0 条评论

立即
投稿
返回
顶部