前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >SSH登录流程及配置公钥登录

SSH登录流程及配置公钥登录

原创
作者头像
冯大仙
修改2021-11-12 11:07:47
4.2K0
修改2021-11-12 11:07:47
举报
文章被收录于专栏:运维技术贴

一、第一次登录远程主机流程

第一次ssh到远程主机时远程主机会发送它的公钥到客户端主机,客户机确认继续连接后会把远程主机的公钥保存到.ssh/known_hosts文件,下次再连接此远程主机时会去.ssh/known_hosts查看,如果是已经保存的公钥证明是信任主机,即不会告警并直接提示输入用户名密码登录。

二、密码登录流程

远程主机收到客户端请求后会把自己的公钥发送给客户端,客户端通过公钥加密之后将密码发送给远程主机,远程主机用密钥解密,密码如果正确则登录成功。

三、公钥登录(免密登录)流程

公钥登录原理就是客户端将自己的公钥存储到远程主机的.ssh/authorized_keys中,客户端发起登录时,远程主机会发送一段随机字符串给客户端,客户端用自己的私钥加密后重新发回远程主机,远程主机用存储的客户端公钥解密之后对比之前发送给客户端的字符串,相同的话即认为客户机认证,不在需要输入密码直接登录系统。

四、公钥登录配置

1、远程主机ssh配置

vi /etc/ssh/sshd_config

RSAAuthentication yes #启用RSA认证

PubkeyAuthentication yes #启用公钥认证

AuthorizedKeysFile .ssh/authorized_keys #公钥认证文件

2、在客户端生成公私钥文件

ssh-keygen -t rsa

一路回车之后在$HOME/.ssh/下就可以看到两个文件

-rw-------. 1 root root 1675 Oct 25 12:04 id_rsa #私钥

-rw-r--r--. 1 root root 391 Oct 25 12:04 id_rsa.pub #公钥

3、将客户端公钥追加到远程主机 .ssh/authorized_keys中

cat .ssh/id_rsa.pub | ssh root@xxx.xxx.xxx.xx 'cat >> .ssh/authorized_keys'

.ssh目录的权限必须是700

.ssh/authorized_keys文件权限必须是600

如果配置完成还是无法免密登录,检查权限,属组是否正确,被坑了几次了,切记~

写在最后:

如有错误请评论告知,多多包涵。

欢迎关注我的订阅号,谢谢

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档