因为要部署一批服务器,为了以后管理方便,要进行免密认证。一台一台做很费时,脚本又得手动输密码。于是上网搜了搜,发现一个非常简单的免交互认证,不需要入密码即可完成!
环境:centos 6.8 虚拟机VM 安装epel源
脚本如下:
#!/bin/bash
#
rpm -ivh https://dl.fedoraproject.org/pub/epel/epel-release-latest-6.noarch.rpm
yum install -y sshpass
echo -e ‘y\n‘ | ssh-keygen -t rsa -N "" -f .ssh/id_rsa #无论密钥存在不存在都会强行重新生成一次
for i in `cat hostlist`
do
sshpass -p ‘‘ ssh $i -o StrictHostKeyChecking=no echo #这里是为了避免输入yes应答
sshpass -p ‘‘ ssh-copy-id -i .ssh/id_rsa.pub $i # ‘‘ 是空密码的意思,可以根据自己需要更改
done
这样运行过程中根本不需要你的任何干涉,直接就完成了免密认证,也不需要很复杂的脚本。
本人也是linux菜鸟一枚,如果大家有什么建议或分享请及时共享出来哦!
时间: 2024-11-05 14:43:21