要在本地 Windows 系统上生成 OpenSSH 格式的私钥,可以使用 ssh-keygen
命令。请按照以下步骤进行操作:
- 打开命令提示符或 PowerShell。你可以在 Windows 上使用内置的命令提示符或 Windows PowerShell。
- 使用
ssh-keygen
命令生成密钥。以下是一些常用选项:
-
-t
选项:指定密钥类型,通常选择rsa
或ed25519
。 -
-b
选项:指定密钥的位数。一般来说,2048 位或更多是安全的。例如,-b 2048
。 -
-f
选项:指定生成的密钥文件的名称和路径。如果未指定路径,则会在当前用户的主目录中创建默认路径。
例如,生成一个 2048 位的 RSA 密钥并将其保存到用户主目录下的 .ssh
文件夹中,可以运行以下命令:
shell
ssh-keygen -t rsa -b 2048
- 在生成密钥时,你将被要求指定文件保存位置和设置一个密码。你可以选择将密钥保存在默认位置(通常是
C:\Users\<YourUsername>\.ssh
)或者选择其他位置。如果你选择将密码留空,则私钥将不会被加密。 - 完成后,将在指定的文件夹中生成两个文件:
id_rsa
(私钥)和id_rsa.pub
(公钥)。私钥文件包含.pem
扩展名。 - 如果你想要在 Linux 服务器上使用此密钥对进行身份验证,你需要将生成的公钥(
.pub
文件)复制到服务器的~/.ssh/authorized_keys
文件中。你可以使用 SSH 客户端连接到服务器,并将公钥上传到服务器,或者将公钥的内容手动复制到服务器上的authorized_keys
文件中。 - 现在,你可以在 Linux 服务器上使用生成的私钥文件进行 SSH 连接,例如:
shellssh -i /path/to/private/keyfile username@hostname
其中/path/to/private/keyfile
是生成的私钥文件的路径,username
是你在服务器上的用户名,hostname
是服务器的主机名或 IP 地址。
请注意,生成的私钥文件包含私钥信息,因此应谨慎保存,并不要将其与他人分享。公钥文件(.pub
)可以安全地与其他人分享,并添加到远程服务器的 authorized_keys
文件中,以实现 SSH 密钥身份验证。