ssh生成密钥对
时间: 2025-06-10 19:41:31 浏览: 11
### 通过SSH生成密钥对的教程
为了生成SSH密钥对,可以使用`ssh-keygen`命令。此工具是一个常用的命令行工具,用于生成SSH密钥对(公钥和私钥)。私钥存储在本地或用于远程连接的服务器上;公钥存储于需要SSH访问的服务器上[^2]。
#### 步骤一:打开命令行工具
- 在Windows系统中,可以通过打开命令提示符(Command Prompt)或PowerShell来执行命令。
- 在Linux或macOS系统中,可以通过打开终端(Terminal)来执行命令。
#### 步骤二:运行`ssh-keygen`命令
在命令行中输入以下命令以生成SSH密钥对:
```bash
ssh-keygen -t rsa -b 4096 -C "[email protected]"
```
- `-t rsa`:指定密钥类型为RSA。
- `-b 4096`:指定密钥长度为4096位,提供更高的安全性。
- `-C "[email protected]"`:为密钥添加注释,通常使用电子邮件地址作为标识[^2]。
运行上述命令后,系统会提示用户选择保存密钥的位置以及设置密码(可选)。如果希望不设置密码保护,则直接按回车键跳过。
#### 步骤三:确认密钥生成位置
默认情况下,生成的密钥对将保存在`~/.ssh/`目录下:
- 私钥文件名为`id_rsa`。
- 公钥文件名为`id_rsa.pub`。
#### 步骤四:将公钥添加到远程服务器
将生成的公钥添加到目标服务器的`~/.ssh/authorized_keys`文件中。可以通过以下方法实现:
1. 手动复制公钥内容并粘贴到服务器上的`~/.ssh/authorized_keys`文件中。
2. 使用`ssh-copy-id`命令自动完成操作:
```bash
ssh-copy-id username@remote_host
```
替换`username`为远程服务器的用户名,`remote_host`为服务器地址。
#### 步骤五:测试SSH连接
运行以下命令测试是否能够成功连接到远程服务器:
```bash
ssh username@remote_host
```
如果一切设置正确,应该能够成功连接到服务器而无需输入密码。
---
### 注意事项
- 确保妥善保管私钥文件(如`id_rsa`),不要与他人分享,并将其存放在安全的地方[^1]。
- 如果需要删除已知主机记录,可以使用类似以下命令:
```bash
ssh-keygen -f "/home/user/.ssh/known_hosts" -R "hostname_or_ip"
```
---
阅读全文
相关推荐


















