多台Linux服务器之间互相免密登陆
例如我们有三台Linux 服务器:
192.168.0.1
192.168.0.2
192.168.0.3
1.1 首先配置服务器 1 面密令登录2 和 3
1.2 登录服务器1,然后输入命令:ssh-keygen -t rsa ,一路按 回车,
出现如下提示表示正确,没有出现提示也不要紧,可以看下/root/.ssh/路径下是否生成id_rsa. 和id_rsa.pub两个文件:
Generating public/private rsa key pair.
Enter file in which to save the key (/root/.ssh/id_rsa): ##回车代表无需密码登陆
Created directory ‘/root/.ssh’.
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:FGrYUe6qiaKaRXz4sp/HLWJJvDeUsGaV+++EKe9fKwc
会在服务器1 的 /root/.ssh/ 目录下生成私钥id_rsa.和公钥id_rsa.pub
1.3 输入命令: ssh-copy-id -i /root/.ssh/id_rsa.pub root@192.168.0.2,意思是将公钥添加到服务器2的/root/.ssh/的authorized_keys里面,就可以无需输入密码登录服务器2了。其实也可以手动添加公钥到authorized_keys里面,复制服务器1上的id_rsa.pub文本内容,粘贴到服务器2/root/.ssh/authorized_keys里面,里面之前有内容的,注意换行
1.4 输入命令: ssh-copy-id -i /root/.ssh/id_rsa.pub root@192.168.0.3,意思是将公钥添加到服务器3的/root/.ssh/的authorized_keys里面,就可以无需输入密码登录服务器3了
1.5 至此服务器1可以无密码登录服务器2 了。然后在服务器2和3上重复1.2–1.4的操作就可以。注意关系需要a服务器登录b服务器就需要在a服务器上生成公钥,然后添加到b服务器的authorized_keys里面即可