配置主机间免密登录

为什么要做免密登录

对于运维来说,主机间的免密登录是有着重要意义的,其内涵的意义主要有以下两方面:

  • 作为一个运维,常要通过一台主机管理其他很多台主机,如果单纯地使用ssh来连接,每执行一次ssh都需要输入一次密码,这样就对我们通过脚本管理其他主机增加了困难
  • 通常使用密码的童鞋即使有意识的加强密码的安全性,为了日常使用考虑,密码也不会设定得过于变态,这样就为主机的安全留下了隐患,而如果是密钥的话,被破译的可能性趋近于零

怎么做免密登录

创建密钥对

ssh-keygen -t rsa

编辑sshd服务配置文件

vim /etc/ssh/sshd_config
# 禁止密码登录认证
PasswordAuthentication no

修改公钥


cp ~/.ssh/id_rsa.pub ~/.ssh/authorized_keys

将私钥妥善保存并重启sshd服务

systemctl restart sshd

将密钥对拷贝到远端


scp -r /root/.ssh 192.168.59.102:/root

修改远端的sshd服务配置文件

ssh 192.168.59.102
vim /etc/ssh/sshd_config
systemctl restart sshd

验证
ssh登录远端,看看是否需要输入密码

自动部署

#!/bin/bash
# 脚本用途:配置主机间免密登录
# 注意事项:远端ip地址与密码各不相同,请先根据自身情况修改

passwd(){
ssh-keygen -t rsa -f /root/.ssh/id_rsa -P ''
sed -i '65s/yes/no/g' /etc/ssh/sshd_config
cp /root/.ssh/id_rsa.pub /root/.ssh/authorized_keys
yum install sshpass -y -q
sed -i 35a'StrictHostKeyChecking no' /etc/ssh/ssh_config
systemctl restart sshd
}

passwd

for i in {101..200}
do
    sshpass -p "123" scp -r /root/.ssh "192.168.88.$i":/root
    ssh "192.168.88.$i" "sed -i '65s/yes/no/g' /etc/ssh/sshd_config"
    ssh "192.168.88.$i" "systemctl restart sshd"
done
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值