linux多台主机之间设置SSH免密登录

一、环境

假若有3台服务器node1 node2 node3
在sshd_config文件中打开RSA非对称密钥验证

vi /etc/ssh/sshd_config
去掉注释以下两行注释
#RSAAuthentication yes   有些版本的服务器可能没有这一行
#PubkeyAuthentication yes

二、设置免密登录

1、生成秘钥对

所有主机都执行

ssh-keygen -t rsa

生成key,不用输入密码,一直回车,生成密钥对放在 ~/.ssh 目录(ls -al可查看)

2、主机node1执行

id_rsa.pub是公钥文件

cd ~/.ssh 进入到.ssh目录
#将id_rsa.pub文件内容重定向到authorized_keys文件
cat id_rsa.pub >> authorized_keys
3、主机node2与node3执行
node2执行:scp -r authorized_keys root@node1:~/.ssh/id_rsa.pub_2
node3执行:scp -r authorized_keys root@node1:~/.ssh/id_rsa.pub_3
4、主机node1执行

将node2和node3的公钥追加到authorized_keys文件中

cat id_id_rsa.pub_2 >> authorized_keys
cat id_id_rsa.pub_3 >> authorized_keys

目前authorized_keys中有了三个主机的公钥
将authorized_keys文件复制给其他主机

cp -r authorized_keys root@node2:~/.ssh/authorized_keys
cp -r authorized_keys root@node3:~/.ssh/authorized_keys

三、测试

执行ssh将不再需要密码

ssh node2
ssh node3

猜你喜欢

转载自blog.csdn.net/weixin_44732379/article/details/124237647