SSH 实现多台机器之间的互相免密登录

有三台机器,ip和对应的hostname分别为
192.168.6.2 server2
192.168.6.3 server3
192.168.6.4 server4
我们的目的是实现三台机器之间互相免密SSH链接

大概分为三步

1.客户端生成秘钥

首先想上server2(客户端)免密连接上server3(服务端),server4(服务端)

先在server2上生成私钥和公钥

执行下面命令,然后一路狂按回车就完事

ssh-keygen

完了之后会在用户目录下的.ssh文件夹创建一个公钥和一个私钥

比如我是在root用户下,所以就是/root/.ssh
在这里插入图片描述
id_rsa (私钥)
id_rsa.pub (公钥)

2.把公钥上传到服务端

还是在server2上进行操作

ssh-copy-id -i ~/.ssh/id_rsa.pub root@192.1686.3

上面是上传到server3的root用户下,会在server3的/root/.ssh目录下生成一个authorized_keys文件

此时执行

vim authorized_keys

可以看到server2的公钥写在里面
这样就可以实现server2免密SSH链接server3

3.测试免密连接实现

发现server2已经可以免密ssh登录server3了
在这里插入图片描述

再把公钥发给server4就可以实现免密登录server4了

server3同样把公钥发给server2,server4就可免密登录这两台机器
server4同样把公钥发给server2,server3就可免密登录这两台机器
这样就实现了三台机器互相免密登录,此时互相scp传文件免密

4.个人感悟

ssh原理

开始有点分不清,这一通操作猛如虎后,分不清谁能免密连上谁。
后来通过实践研究自己总结了一下。把三台机器分别比喻成三个城池,
在一开始server2城池的人想去server3城池,server4城池,需要走城池大门,
卫兵要检查看有没有入城许可(输入server3,4密码的过程类似于此)。

后来server2的人去的次数多了嫌麻烦,干脆在城里放进去一个内应,以后每次去城里这个内应直接接进去,不用卫兵检查。这个内应就是放在server3,server4里面的公钥。

关于ssh-copy-id -i root/.ssh/id_rsa.pub user@ip的解释

一开始很疑惑这个命令是什么意思,后来才明白其实这个命令类似于

scp  root/.ssh/id_rsa.pub user@ip:/root/.ssh/authorized_keys

实现的功能也是把公钥发给某个机器的.ssh文件夹下,并重命名为authorized_keys

authorized_keys里面可以存放很多台机器的公钥,谁的公钥在就可以免密连这台机器

区别在于,如果使用上面scp命令的话,新来的会覆盖原来的,那么之前的机器就连不上

而 ssh-copy-id -i 命令可以把新的公钥追加在原来的公钥后面,不会影响之前机器的连接

5.ssh文件配置

如果不想让别的机器通过ssh输入密码连接,只想让免密连接机器连接怎么办

[root@server2 .ssh]# cd /etc/ssh/
[root@server2 ssh]# ls
moduli       ssh_host_ecdsa_key      ssh_host_ed25519_key.pub
ssh_config   ssh_host_ecdsa_key.pub  ssh_host_rsa_key
sshd_config  ssh_host_ed25519_key    ssh_host_rsa_key.pub
[root@server2 ssh]# vim sshd_config

把sshd_config里面的 PasswordAuthentication yes改成PasswordAuthentication no
然后重启sshd服务,除了免密的机器别的机器就无法连接

[root@server2 ssh]# systemctl restart sshd

在这里插入图片描述

  • 15
    点赞
  • 37
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值