CentOS7 三台服务器之间实现免密登录

配置前先修改现有用户的用户名
我们需要将每台服务器上的现有用户名更改为新的用户名。

修改用户名(以server1为例)
假设现有用户名为user,将其修改为user1:

1.切换到root用户:

sudo su –

2.修改用户名:

usermod -l user1 user
usermod -d /home/user1 -m user1
groupmod -n user1 user

对server2和server3进行类似的操作,将用户名分别修改为user2和user3。

给每台虚拟机配置好单独的用户名后再继续配置免密登录

第一步:生成SSH密钥对
在每台服务器上生成SSH密钥对:

ssh-keygen -t rsa -b 4096

按照提示完成密钥对生成,通常会在用户的主目录下生成~/.ssh/id_rsa(私钥)和~/.ssh/id_rsa.pub(公钥)。

第二步:分发公钥
将每台服务器的公钥添加到其他两台服务器的~/.ssh/authorized_keys文件中。这里假设用户和root用户的公钥都需要分发。

假设服务器的IP分别为:192.168.1.1(server1)、192.168.1.2(server2)、192.168.1.3(server3)

在server1上
1. 分发普通用户的公钥到server2和server3:

ssh-copy-id user@192.168.1.2
ssh-copy-id user@192.168.1.3

2. 分发root用户的公钥到server2和server3:

ssh-copy-id root@192.168.1.2
ssh-copy-id root@192.168.1.3

在server2上
1. 分发普通用户的公钥到server1和server3:

ssh-copy-id user@192.168.1.1
ssh-copy-id user@192.168.1.3

2. 分发root用户的公钥到server1和server3:

ssh-copy-id root@192.168.1.1
ssh-copy-id root@192.168.1.3

在server3上
1. 分发普通用户的公钥到server1和server2:

ssh-copy-id user@192.168.1.1
ssh-copy-id user@192.168.1.2

2. 分发root用户的公钥到server1和server2:

ssh-copy-id root@192.168.1.1
ssh-copy-id root@192.168.1.2

第三步:配置SSH服务允许root登录
在每台服务器上,编辑SSH配置文件以允许root用户登录:

sudo vi /etc/ssh/sshd_config

找到并修改以下参数:

PermitRootLogin yes

保存并退出编辑器后,重新启动SSH服务:

sudo systemctl restart sshd

第四步:编辑/etc/hosts文件
在每台服务器上,编辑/etc/hosts文件,将每台服务器的IP地址和对应的主机名添加到文件中。

sudo vi /etc/hosts

添加以下内容:

192.168.10.11 server1
192.168.10.12 server2
192.168.10.13 server3

第五步:配置SSH别名
在每个用户的主目录下创建或编辑SSH配置文件~/.ssh/config,为每台服务器配置SSH别名。

vi ~/.ssh/config

添加以下内容(根据您的实际情况进行修改):

假设普通用户在三台服务器上的用户名都是user:

Host server1
HostName server1
User user

Host server2
HostName server2
User user

Host server3
HostName server3
User user

为root用户配置别名:

Host server1-root
HostName server1
User root

Host server2-root
HostName server2
User root

Host server3-root
HostName server3
User root

第六步:验证配置
保存并退出编辑器后,您可以尝试直接使用别名进行SSH登录和ping操作

尝试ping:

ping server1
ping server2
ping server3

尝试SSH登录:

ssh server1
ssh server2
ssh server3

ssh server1-root
ssh server2-root
ssh server3-root

通过以上步骤,您就可以在三台服务器之间实现用户和root用户的免密登录,并且可以通过主机名别名进行登录和ping操作

免责声明:
1:如非特殊说明,本站对提供的素材及源码不拥有任何权利,其版权归原著者拥有。
2:本站内容均由互联网收集整理、网友上传,并且以技术研究交流为目的,仅供大家参考、学习,不存在任何商业目的与商业用途。
3:本站部分收费内容仅作本站日常维护费用,若您需要商业运营或用于其他商业活动,请您购买正版授权并合法使用。
4:请勿将源码、软件进行商业交易、转载等行为,源码、软件只为研究、学习所提供,该软件使用后发生的一切问题与本站无关。
5:站内资源如有侵犯你版权的,请来信1058364519@qq.com指出,本站将立即改正。
6:素材源码均为网络收集,不承担任何版权问题,不提供任何技术支持!
7:严重警告本站木屋模型、木屋CAD图纸、木屋效果图未经允许不得转载:凡木屋模型及CAD文章由设计师QINYUHUI设计制作,享有内容所有权,文章仅在QINYUHUI名下网站、信息平台或嘿很有内涵微博发布,未经授权违者必究!!!

MASUC » CentOS7 三台服务器之间实现免密登录