生成SSH密钥对:一份清晰的操作指南
无论是管理服务器、连接Git仓库还是进行自动化部署,SSH密钥对都是现代工作流中不可或缺的安全通行证。生成它的过程其实并不复杂,关键在于理解每一步的作用。下面这份指南将带你走完在不同操作系统上生成密钥对的完整流程。

在Linux或macOS上生成SSH密钥对
对于使用Linux或macOS的开发者来说,终端是完成这项任务的主战场。整个过程就像是一场与命令行对话的仪式,步骤清晰且直接。
- 打开终端:
- 在Linux系统里,通常可以在应用菜单或启动器中搜索“Terminal”来找到它。
- macOS用户则可以通过聚焦搜索(Spotlight)输入“Terminal”,或者在“应用程序”文件夹下的“实用工具”里找到它。
- 运行SSH密钥生成命令:
- 接下来,输入以下命令来生成一对新的RSA密钥(这是目前广泛使用且安全的类型):
ssh-keygen -t rsa -b 4096 -C “your_email@example.com”
- 这里的几个参数各有其职:
-t rsa指定了密钥类型为RSA;-b 4096则将密钥长度设定为4096位,这为安全性提供了坚实的保障;最后的-C注释,通常填入你的邮箱,相当于给这把“钥匙”贴上一个易于识别的标签。
- 选择保存位置和文件名:
- 执行命令后,系统会询问你把密钥存放在哪里。默认的路径是用户主目录下的
~/.ssh/文件夹,私钥和公钥会分别被命名为id_rsa和id_rsa.pub。 - 当然,你也可以根据需要输入自定义的路径和文件名,但保持默认通常是最省心的选择。
- 设置密码短语(可选但推荐):
- 这里会遇到一个重要的选择:是否为私钥设置一个密码短语(passphrase)。这相当于为你的“钥匙”再加装一把锁,即使私钥文件意外泄露,也多了一层防护。
- 如果追求极致的便利性,可以直接按回车键跳过。不过,从安全角度出发,设置一个强密码短语是更负责任的做法。
- 密钥生成完成:
- 确认以上信息后,系统便会生成密钥对。你只需到之前指定的目录下查看,就能找到新生成的私钥和公钥文件了。
在Windows上生成SSH密钥对
Windows环境同样不复杂,你有两个得力的工具可以选择:Git Bash或PowerShell。
使用Git Bash:
- 打开安装好的Git Bash终端。
- 输入的命令与在Linux/macOS上完全一致:
ssh-keygen -t rsa -b 4096 -C “your_email@example.com”
- 接下来的交互步骤也和前面描述的一模一样,按照提示操作即可。
使用PowerShell:
- 以管理员身份或普通用户身份打开PowerShell。
- 运行相同的生成命令:
ssh-keygen -t rsa -b 4096 -C “your_email@example.com”
- 其后的流程也完全相同,遵循终端的提示一步步完成。
将公钥添加到远程服务器
生成了密钥对,只算完成了一半的工作。要让这套认证机制生效,你需要将公钥“安置”到目标服务器上。
- 首先,用任何文本编辑器打开你的公钥文件(比如默认的
~/.ssh/id_rsa.pub)。 - 复制其中的全部内容,通常是一长串以“ssh-rsa”开头的字符。
- 登录到你想要连接的远程服务器。
- 找到或创建服务器上的
~/.ssh/authorized_keys这个文件,然后将刚才复制的公钥内容粘贴进去,保存退出。 - 最后,也是至关重要的一步:确保相关文件和目录的权限正确。通常,
~/.ssh目录的权限应设置为700,而authorized_keys文件的权限应设置为600。这能防止其他用户窥探或篡改你的授权密钥。
完成以上所有步骤后,你就可以尝试使用SSH连接服务器了。如果一切配置正确,系统将使用你的私钥进行身份验证,而无需再输入密码,安全又便捷。
