多台服务器免密登录

一 单向无密码访问

1. 在服务器A生成密钥对

ssh-keygen -t rsa
#一直按回车键即可。 执行完后,会生成一个密钥图
#在~/.ssh目录下会生成两个文件id_rsa.pub和id_rsa, 其中id_rsa是私钥,id_rsa.pub是公钥。
# 查看到的公钥
cat ~/.ssh/id_rsa.pub

2. 上传公钥到B服务器

#如果B还没有生成过ssh密钥的话,按上述1,将B服务器也生成自己的密钥 然后,将A的公钥上传的B的~/.ssh下,并改名为authorized_keys
scp ~/.ssh/id_rsa.pub roo@192.168.0.2:~/.ssh/authorized_keys
#服务器B ~/.ssh/authorized_keys 文件夹内有 A的公钥,那么A就可以免密访问B了。

二 多台服务器互相免密登录

1. 所有服务器生成ssh密钥

如上述步骤将每台服务器都执行 ssh-keygen -t rsa 生成密钥对

2. 执行ssh-copy-id命令

  • 如 A:192.168.0.21, B:192.168.0.22, C:192.168.0.23,在服务器A上执行:
ssh-copy-id ~/.ssh/id_rsa.pub roo@192.168.0.21
ssh-copy-id ~/.ssh/id_rsa.pub roo@192.168.0.22
ssh-copy-id ~/.ssh/id_rsa.pub roo@192.168.0.23
  • 以上将A的公钥自动添加到 A, B, C两台服务器的authorized_keys文件内,这样A就可以免密登录A,B,C了
  • 同理,A, B, C 三台机器要免密互连。需在服务器B, C分别上执行:
ssh-copy-id ~/.ssh/id_rsa.pub roo@192.168.0.21
ssh-copy-id ~/.ssh/id_rsa.pub roo@192.168.0.22
ssh-copy-id ~/.ssh/id_rsa.pub roo@192.168.0.23
  • 查看 A, B,C 任意一台机器内的authorized_keys文件, 里面保存的是A, B, C的公钥串,因此ssh无密码访问的原理是将本机的公钥串添加到远程服务器的authorized_keys文件内。
cat ~/.ssh/authorized_keys
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

〆`杨陆原じ₯㎕

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值