要在本地 Windows 系统上生成 OpenSSH 格式的私钥,可以使用 ssh-keygen 命令。请按照以下步骤进行操作:

  1. 打开命令提示符或 PowerShell。你可以在 Windows 上使用内置的命令提示符或 Windows PowerShell。
  2. 使用 ssh-keygen 命令生成密钥。以下是一些常用选项:
  • -t 选项:指定密钥类型,通常选择 rsaed25519
  • -b 选项:指定密钥的位数。一般来说,2048 位或更多是安全的。例如,-b 2048
  • -f 选项:指定生成的密钥文件的名称和路径。如果未指定路径,则会在当前用户的主目录中创建默认路径。

例如,生成一个 2048 位的 RSA 密钥并将其保存到用户主目录下的 .ssh 文件夹中,可以运行以下命令:

shell

ssh-keygen -t rsa -b 2048

  1. 在生成密钥时,你将被要求指定文件保存位置和设置一个密码。你可以选择将密钥保存在默认位置(通常是 C:\Users\<YourUsername>\.ssh)或者选择其他位置。如果你选择将密码留空,则私钥将不会被加密。
  2. 完成后,将在指定的文件夹中生成两个文件:id_rsa(私钥)和 id_rsa.pub(公钥)。私钥文件包含 .pem 扩展名。
  3. 如果你想要在 Linux 服务器上使用此密钥对进行身份验证,你需要将生成的公钥(.pub 文件)复制到服务器的 ~/.ssh/authorized_keys 文件中。你可以使用 SSH 客户端连接到服务器,并将公钥上传到服务器,或者将公钥的内容手动复制到服务器上的 authorized_keys 文件中。
  4. 现在,你可以在 Linux 服务器上使用生成的私钥文件进行 SSH 连接,例如:
    shell
    ssh -i /path/to/private/keyfile username@hostname 其中 /path/to/private/keyfile 是生成的私钥文件的路径,username 是你在服务器上的用户名,hostname 是服务器的主机名或 IP 地址。

请注意,生成的私钥文件包含私钥信息,因此应谨慎保存,并不要将其与他人分享。公钥文件(.pub)可以安全地与其他人分享,并添加到远程服务器的 authorized_keys 文件中,以实现 SSH 密钥身份验证。