大家好,我是anyux。本文介绍Linux多台机器一键免密互信脚本(基础版本)。
因为很多操作工具构架需要免密钥互信的基础才能实现,比如hadoop,MHA等,本人十分懒惰,不想因为反复克隆机器后,再搞复制粘贴的操作。从昨天晚上11点还完成,气得直接睡觉去了。
白天来公司,正巧无事(一会做完了),上手就开始完成这个脚本。
心急的同学,可以直接替换head_ip(前缀ip),arr(后缀ip),passwd(密码),以root权限直接运行
这个版本是很基础的小脚本,就跟闹着玩一样。
它的不足,
依赖第三工具,并且需要以root权限安装,运行
ip限制,需要手动修改
同步密钥的算法未优化,感觉可以优化,虽然还不知道优化的空间有多少
再说说它的实现逻辑
这里的前提,是所有同步密钥机器的密码一致(不一致的要等待下一个版本更新吧)
随机一台机器登录,生成密钥对,复制公钥到其他主机认证
基于循环,逐个远程登录主机,删除密钥对,重新生密钥对
基于循环,逐个远程登录主机,安装远程工具sshpass,复制公钥到其他机器,还有本地主机localhost
检测多主机免密通信情况
领取专属 10元无门槛券
私享最新 技术干货