来源: Loong Panda
说明
Secure Shell 协议,简称 SSH,是一种加密网络协议,用于客户端和主机之间的安全连接,并支持各种身份验证机制。以下主要介绍Linux系统如何设置基于 SSH 密钥的身份验证,以及如何免密连接到主机的教程。
生成密钥
1. 生成密钥对
默认:
ssh-keygen -t rsa
指定参数:
ssh-keygen -t rsa -b 4096 -C "你的邮箱地址"
参数:
-t 指定加密算法; -b 指定生成的密钥长度; -C 一句话,一般都填邮箱地址。 更多参数说明可以在终端输入:ssh-keygen --help 查看 指定一个文件来保存密钥,按Enter键使用默认的文件就行了
ssh认证流程:
1、客户端向服务器发出连接请求 2、服务器查看客户端公钥(~/.ssh/authorized_keys)该客户机(客户机标志:用户@Host)对应的公钥 3、服务器验证公钥合法,则产生一条随机数(challenge),用公钥加密发送给客户端 4、客户端用私钥解密回传服务器端。 5、随机数一致,认证通过
校验
ssh root@47.316.340 -p 22