Linux配置:免密互访【ssh】
accttodo 12/31/2024 操作系统LinuxCentOS
目录
参考:
# Linux配置:免密互访【ssh】
# 配置步骤
# 修改主机名,更新hosts
在每台服务器修改主机名并更新hosts
cat /etc/hostname
cp /etc/hostname /etc/hostname.bak20240729
hostnamectl set-hostname node100101161
hostname
systemctl restart network
cat /etc/sysconfig/network
1
2
3
4
5
6
2
3
4
5
6
还有,别忘了检查/etc/sysconfig/network
文件里的HOSTNAME,改成对应的服务器的主机名即可。
更改主机名后,还需要更新/etc/hosts
文件,以确保主机名称解析正常,在hosts文件末尾添加所有主机名和IP的对应。
cat /etc/hosts
cp /etc/hosts /etc/hosts.bak20240729
echo "100.10.116.1 node100101161" >> /etc/hosts
cat /etc/hosts
1
2
3
4
2
3
4
# 配置免密互访
检查ssh是否安装
which ssh
1
如果ssh
命令的路径被打印出来,说明openssh-clients
已安装并且可用。如果没有输出,否则需要安装openssh-clients
。
yum install -y openssh-clients
1
在每台服务器上都生成密钥
ssh-keygen -t rsa
1
Generating public/private rsa key pair.
Enter file in which to save the key (/root/.ssh/id_rsa): #回车
Enter passphrase (empty for no passphrase): #回车代表无需密码登陆
Enter same passphrase again: #回车
Your identification has been saved in /root/.ssh/id_rsa. #代表私钥
Your public key has been saved in /root/.ssh/id_rsa.pub. #代表公钥
The key fingerprint is:
SHA256:9/VfGy/CqKpLCcGXAu2ZTvJPnZn0/s/mkSUFoyqn6uI root@node100101161
The key's randomart image is:
+---[RSA 2048]----+
|.. o |
| o. . . o |
| .+oo . . |
|. =+ . . . |
| =. o.=S . . o |
| o...=+.. . = . |
| oo .. o+ .o|
| .... . ..+.. *|
| .Eo=o...o.++. oo|
+----[SHA256]-----+
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
在每台服务器上将公钥复制到无需登录的服务器上
ssh node100101162
cd ~/.ssh
ssh-copy-id -i id_rsa.pub node100101161
1
2
3
2
3
以上,可以自动将公钥添加到authorized_keys的文件中,在每台服务器都执行完以上的步骤就可以实现多台服务器无需密码相互访了。