在 Windows 机器上为 JSch 创建 `~/.ssh/id_dsa`

Create `~/.ssh/id_dsa` on a Windows machine for JSch

我想知道是否可以在 Windows 机器 ~/.ssh/id_dsa 上创建这个目录?我创建了一个私钥并希望将其保存在名为 ~/.ssh/id_dsa 的目录中。有人告诉我 ssh-keygen -t rsa 这应该可以在命令行上工作,但不幸的是它不能。

~表示用户的主目录。在类 Unix 系统上,它通常是 /home/<username>,在 Windows 系统(Vista 和更新版本)上它是 c:\Users\<username>

所以只需创建一个目录c:\Users\<username>\.ssh。我猜 id_ds 不是目录而是文件。

例如,为 Windows 使用 Git 打包的 SSH 会在该位置精确查找 .ssh 目录。一般来说,所有使用 MinGW 编译的二进制文件都期望它在那里。

BTW Windows 等价于 ~%HOMEPATH% 环境变量。

~/.ssh/id_dsa 文件是 *nix 系统上 OpenSSH SSH 客户端使用的私钥的默认路径。它与 Windows 或 JSch 没有任何关系

JSch 使用您使用 addIdentity 方法指定的私钥。


Ntb,是 id_dsa,不是 id_ds。它是一个文件,而不是一个目录。而ssh-keygen -t rsa很难创建id_dsa,DSA和RSA是不同的算法。 id_rsa 用于 RSA。不过这一切都与你的问题无关。