实现基于密钥登录

Posted 凭栏听枫

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了实现基于密钥登录相关的知识,希望对你有一定的参考价值。

基于密钥的登陆方式

  1. 首先在客户端生成一对密钥(ssh-keygen)
  2. 将客户端的公钥ssh-copy-id拷贝到客户端
  3. 当客户端再次发送一个连接请求,包括ip、用户名
  4. 服务端得到客户端的请求后,会到authorized_keys中查找,如果有响应的IP和用户,就会随机生成一个字符串
  5. 服务端将使用客户端拷贝过来的公钥进行加密,然后发送给客户端
  6. 得到服务端发过来的消息后,客户端会使用私钥进行解密,然后将解密后的字符串发送给服务端
  7. 服务端接收到客户端发来的字符串后,跟之前的字符串进行对比,如果一致,就允许免密码登录

实现基于密钥登录

[root@centos7 ~]# ssh-keygen			#在客户端生成密钥对
Generating public/private rsa key pair.
Enter file in which to save the key (/root/.ssh/id_rsa): 					#密钥对存放的位置,默认/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:3XBhit2EIv21mUTpZfj7luvVsE3p/SnKD7Az+S3P0AY root@centos7
The key's randomart image is:
+---[RSA 2048]----+
|       .   o=o   |
|      . oo.==.o  |
|       ..o++oB   |
|         ..+= . .|
|        S..E. .o.|
|          + o o=o|
|         = o o.o*|
|          =.*. .*|
|           +==o=o|
+----[SHA256]-----+
[root@centos7 ~]# ssh-copy-id root@10.0.0.208				#将公钥文件远程传输至远程服务器对应用户的家目录,这一步需要输入一个yes,再输入服务器对应用户的登录密码
[root@centos8 ~]# cat .ssh/authorized_keys 					#服务器端已经可以查看到客户端对应的信息
ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDZRSI2rR7DxvYnuwaFNV7bTiIidnEIDtIsDAaLAwYN/f8prxhCGEpwXDD+QkrEHqe7UhmkQIfJrfnpe1nEiDWIVhuXMu5Pum/1RfC21+HuoL6Bo/YxlndEmdvRHwJ6cmiXxNql5qN3Drw57RtR1iSq6mGct9HCvfy404jet3Bdx9k28wEWGZWoLDjx2ZJhtPbpC5t2QSM373c8rRbwszycxl2DMoBf+V9N5+9HzBFh3TsfrUWXXzFd1qVZK0OJIRIGFYLfQGaPreXcAwVdiWDTa3sCAdV4rshMpPECRnNn18Aw/+DCkLDr9uO1EEgW8YB8VHu87Xw8Iy3WSU6Ciya9 root@centos7
[root@centos7 ~]# ssh 10.0.0.208							#登录到远程服务器
Last login: Thu May  6 10:50:42 2021 from 10.0.0.1
[root@centos8 ~]# exit
logout
Connection to 10.0.0.208 closed.

以上是关于实现基于密钥登录的主要内容,如果未能解决你的问题,请参考以下文章

Linux-基于公私钥实现免密码登录

ssh密钥认证

使用 ssh-keygen / OpenSSL 生成 SSH 密钥

使用密钥登录CentOS系统(基于密钥的认证)

跨所有 cPanel 站点的基于密钥的登录

Linux技术专题系列「必备基础知识」一起探索和实践sftp配置之密钥方式登录