SSH免密登录脚本-基于私钥

一、前提
需要配置hosts文件先把集群内的主机名于IP对于关系解决好。

二、然后这个脚本会读取hosts ip与主机
####需要安装sshpass
 

#suse

yzpper install sshpass
#red hat
yum install sshpass

touch sh.sh
chmod +x sh.sh
#!/bin/bash

# 默认用户名和密码
username="root"
password="xxxxxxxx"  # 将此处替换为你的密码

# 生成一个范围内的连续序列,并使用循环进行遍历
for i in $(seq 180 183); do
# 这里的180 183 代表需要登录的主机是180至183
    host="10.10.2.$i"
# 会填充中host变量中。
    echo "正在为主机 $host 添加免密登录..."
    sshpass -p "$password" ssh-copy-id -o StrictHostKeyChecking=no $username@$host
done

echo "免密登录设置完成!"

三、如果报错:
identity_sign: private key /root/.ssh/id_rsa contents do not match public

rm ~/.ssh/id_rsa*
ssh-keygen -t rsa


 

你可能感兴趣的:(记录学习或工作中遇到的问题,ssh,linux,服务器)