之前的折腾过Windows下ssh的自动登录,比如这篇Windows下使用Xshell建立反向隧道,但是这个不能无交互的情况下自动连接(比如在连接新主机时),也就很难在服务中使用。解决方法还是得使用命令行版本。
OpenSSH其实是有Windows版本的,并且目前还在维护:https://github.com/PowerShell/Win32-OpenSSH。至于AutoSSH,还是得借助Cygwin。但是Cygwin的程序加上cygwin1.dll后是可以直接在Windows下运行的,所以不需要安装Cygwin。附件的压缩包里也有ssh、AutoSSH以及所需的dll,可直接使用。可执行文件是32位的,但是Win10 64位实测可以使用。
AutoSSH的使用方法网上很多,这里需要注意的一点是,需要在使用时要指明ssh的路径,否则他只会在默认路径(/usr/bin/ssh)下寻找。Cygwin下访问Windows的文件需要借助/cygdriver,但是在没有完整的Cygwin环境下使用这个路径会有啥效果我也不知道。(我应该是试过的,但是忘了……)。把ssh.exe和autossh.exe放在同一个目录下,然后在命令行窗口下指定以下环境变量可解决这个问题&