Cygwin:使用密钥对运行 SSH.exe(不带 cygwin.bat)

Cygwin:使用密钥对运行 SSH.exe(不带 cygwin.bat)

我有一个盒子,我正尝试使用没有密码的密钥对创建一个 SSH 隧道。如果我运行 cygwin.exe 并使用 ssh-keygen 生成没有密码的密钥对,并将公钥放在服务器上,我可以使用 ssh 在两个盒子之间创建隧道,没有问题。

但是我的问题是这样的。我可以不运行 cygwin.bat 而直接从命令提示符中使用 ssh.exe 来执行此操作吗?

当我尝试此操作时,系统提示我输入用户密码,并且未使用密钥对。我假设当我运行 cygwin.exe 时,它​​会加载我的 usr 目录并使用 .ssh 目录中的密钥对,而当我直接运行 ssh.exe 时,它​​不会加载我的 usr 目录,因此它不会尝试使用密钥对并提示我输入密码。

我该如何解决这个问题?

答案1

ssh查找$HOME/.ssh/id_*您的密钥,以便您可以设置HOME环境变量。

命令执行程序

set HOME=path\to\your\home

(我不确定 Cygwin 将您的主目录放在哪里,但set HOME=%USERPROFILE%应该可以工作。)

相关内容