Centos 7 实现免密登录

Linux的sshd默认是需要密码登录的,但是可以通过配置公钥实现免密登录。

首先在用户主目录生成私钥与公钥:

cd #切换到主目录
ssh-keygen -t rsa #生成私钥与公钥

一路回车不设置密码。

将公钥追加到authorized_keys文件:

cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys

必要时给此文件赋权:

chmod 600 .ssh/authorized_keys

此时可实现本机免密登录:ssh hadoop-slave2ssh 192.168.174.103

使用主机名时需要在/etc/hosts中配置IP映射

扩展:跨主机免密登录

要想跨主机免密登录,就需要另一份公钥,比如想要从主机A⇒主机B实现免密登录,就需要在B主机保存A的公钥。

登录B主机,将A的公钥文件id_rsa.pub复制到本地(此处需要输入A主机的密码):

cd #切换到主目录
scp root@主机A:/root/.ssh/id_rsa.pub /root/ #将id_rsa.pub公钥文件下载到root用户主目录

A主机的公钥文件内容追加到B主机authorized_keys文件:

cat id_rsa.pub >> .ssh/authorized_keys

在A主机上测试:ssh B(主机名或者IP地址)

同理,如果想从B主机免密登录到A主机,则需要在A主机上保存B主机的公钥。

简单一点理解就是:你朋友家的大门装了一个人脸识别认证,你平常去他家的时候需要他给你授权开门(输入密码登录),你在这个认证系统保存了人脸信息之后,这个系统就认识你了,认为你的进入行为是安全的,不需要额外授权(免密登录)。

多台主机都设置好了之后,即可相互之间实现免密登录。

版权声明:
作者:小鱼
链接:https://afish.org/index.php/2023/11/15/centos7_nopassword/
来源:小鱼的blog
文章版权归作者所有,未经允许请勿转载。

THE END
分享
二维码
< <上一篇
下一篇>>
文章目录
关闭
目 录