首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在Windows中通过cmd向ssh命令或putty提供代理

在Windows中通过cmd向ssh命令或putty提供代理
EN

Stack Overflow用户
提问于 2020-10-19 06:45:29
回答 1查看 1.6K关注 0票数 2

我想建立一个SSH连接,在Windows中通过命令行提供代理。当我在ssh -o中使用ssh命令时,"ProxyCommand proxytunnel.exe .“它给了我一个错误

CreateProcessW失败错误:2 posix_spawn:没有这样的文件或目录

同样在putty.exe命令行中,我尝试了-proxycmd="proxytunnel.exe ..“但这也带来了错误。

是否推荐通过CMD建立SSH连接以提供代理?

提前感谢!

EN

回答 1

Stack Overflow用户

发布于 2020-10-19 07:39:10

正常系统上的语法是(但不是在windows上):

代码语言:javascript
复制
ssh user@myHost -p 4711 -oProxyCommand="ssh jumphost -W %h:%p"

或者用丙氧隧道

代码语言:javascript
复制
ssh user@myHost -p 4711 -oProxyCommand="proxytunnnel.exe args"

@MartinPrikryl的评论让我想起了另一个问题。

消息CreateProcessW failed error:2 posix_spawn: No such file or directory对于windows 10系统来说是典型的,因为ssh在ProxyCommand选项中甚至找不到ssh.exe本身。

您总是需要在窗口上指定完整的路径,甚至需要.exe

代码语言:javascript
复制
ssh user@myHost -p 4711 -oProxyCommand="C:\Windows\System32\OpenSSH\ssh.exe jumphost -W %h:%p"

在.ssh/config文件中使用完整路径是可能的(最好使用正斜杠),但当您使用git-bash时,会导致更多问题,然后ssh代理就会经常中断。

或者最好避免使用windows中的OpenSSH,而总是使用git-bash中的ssh,因为它工作得更好,并且在ssh代理( ssh-agent来自git-bash)中也是可靠的。

然后,甚至可以通过跳转使用vscode而不使用headach。

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/64422347

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档