在Windows上使用代理连接SSH

经常碰到买的一些小鸡到国内的网络很差,SSH非常卡,所以使用代理来连接SSH十分重要

尽管Xshell等一系列GUI工具可以简单地实现代理,但是对于VSCode等依赖OpenSSH的软件来说并不简单

在Linux之类的上经常使用netcat来代理SSH,但是netcat在Windows上的实现比较残缺,少了代理的功能,所以只能用ncat来替代

1
ssh -o "ProxyCommand=/path/to/ncat --proxy-type socks5 --proxy proxy_host:proxy_port %h %p" user@server_host
  • ncat必须是绝对路径,不然会报错,原因是OpenSSH在Windows上的Bug,新版本已经修复,但是Windows自带的还没有同步更新
  • proxy-type可选http,socks4,socks5

为了方便,免得每次打一大串命令,更是为了VSCode也能走代理,可以直接写在配置文件中

1
2
3
4
5
Host example-host
HostName example-host
User root
Port 22
ProxyCommand /path/to/ncat --proxy-type socks5 --proxy proxy_host:proxy_port %h %p

在Windows上使用代理连接SSH

https://jktu.cc/在Windows上使用代理连接SSH/

作者

udp_bbr

发布于

2020-08-16

更新于

2020-08-17

许可协议