SSH公钥有什么用?Windows 11操作系统上如何获取SSH公钥
文章目录
- 前言(任务情境)
- SSH公钥有什么用
- Win11操作系统上获取SSH公钥
前言(任务情境)
博主最近在做的一个项目的原始代码中涉及到了高并发的部分,而使用自己的联想笔记本跑这样的项目显然是强人所难,于是博主就找到了项目的负责老师要一台服务器来跑项目。但是,老师问我要SSH的公钥。博主之前没有用过这个玩意,因此感觉有点莫名其妙,因此特意去查了一下。
SSH公钥有什么用
博主需要使用远程服务器,但是一般情况下,连接远程服务器都需要分别输入用户名密码这些进行一步步的验证,过程比较麻烦。
但是,如果使用SSH公钥,则可以实现不使用密码也可以连接到远程服务器。
只需要服务器管理员将需要连接服务器的计算机的公钥添加到远程服务器的 ~/.ssh/authorized_keys
文件中,该计算机在连接远程服务器时,服务器就只需要检查该计算机对应的公钥是否在自己的授权列表中就行了,而不用使用密码。
SSH密钥对其实包含两个部分,分别是私钥和公钥。私钥用于解密由公钥加密的数据,而公钥用于加密数据,只有对应的私钥才能解密。
所以,SSH公钥比直接使用密码连接更加安全。因为即使攻击者截获了加密的会话,他们也无法解密通信,因为只有私钥持有者才能解密数据。
Win11操作系统上获取SSH公钥
- 以管理员的身份打开
Windows 11
操作系统的命令行或PowerShell,后续以命令行为例。 - 在命令行中输入命令
ssh-keygen
并按Enter键,这将默认创建一个2048位的密钥对,包括一个公钥和一个私钥。 - 计算机会在命令行中提示输入密钥应该保存的文件位置。出于简单考虑可以直接按Enter键接受默认位置(通常是
C:\Users\your_username\.ssh\
),或者指定其他位置。 - 计算机将要求为密钥输入密码,这是一个可选步骤,但设置密码可以为SSH密钥添加一层安全性。输入密码完成后一般还需要重新输入一次用于确定密码。
- 密钥对生成后,可以通过命令
cat ~/.ssh/id_rsa.pub
查看公钥。但是博主自己就遇到了报错cat : 找不到路径“C:\Users\Lenovo\.ssh\id_rsa.pub”,因为该路径不存在。
因此,我选择使用记事本编辑直接打开这个目录下的id_rsa.pub
文件查看其中的公钥。顺便说一句,如果要查看私钥只需要打开同一个目录下的id_rsa
文件即可,该文件用于存放私钥。 - 把公钥发送给远程服务器的管理员,让他帮忙在远程服务器上配置。