多台机器之间一键化互信脚本实现
前言
在生产环境中,尤其是集群之间,为了能够使机器之间免密访问,通常需要配置ssh keys 互信,一两台机器手动也会很快处理好,但如果是多台机器,手动做互信就显得有点力不从心了,有可能还会配置错误,为了能够一键化完成自动配置,以下使用shell脚本实现自动互信过程。
一、实现脚本
脚本名称为:autoexssh.sh,执行脚本前需要在各个服务器上安装expect包,可以使用yum方式安装,也可以使用源码编译安装,Depend On You 。
二、配置文件
配置文件为各个节点中的主机名称,因此,执行脚本之前需要将所有节点中的主机名解析hosts文件放置在每个节点下的/etc/下,当然也可以直接使用ip地址。如下,有6台服务器:
三、演示示例
这里有10台节点。
hosts 文件
iplist 文件
执行
指定用户和密码
输出部分如下:
结语
该脚本如果使用在 root 用户下可以任意执行,如果是普通用户执行,注意授权普通用户的执行权限和目录写入权限。脚本获取方式: