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

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

我的问题是这个。 我可以做到这一点,而无需运行cygwin.bat并直接从命令提示符使用ssh.exe。

当我尝试这个时,我提示input用户的密码,而不是使用密钥对。 我假设,当我运行cygwin.exe它正在加载我的usr目录,并使用.ssh目录中的密钥对,当我直接运行ssh.exe它不会加载我的usr目录,因此它不会尝试使用密钥对,并提示我input密码。

我如何解决这个问题?

在我的情况下,它的工作原理是:通过cygwin.bat直接从cmd调用ssh.exe。

我build议这个解决方法:

cd \cygwin\bin ssh.exe -i ..\home\Adminstrator\id_rsa user@host 

如果path和东西是正确的,它也必须工作。