使用 corkscrew 实现 ssh 走 http 代理
这两天 github.com 又被 GFW 修改了 IP,导致我半天都没法提交代码。
我印象中之前我都是通过 export https_proxy=http://127.0.0.1:8001
来设置当前终端会话的代理,然后提交代码的。但是这次却不行了。SSH 根本不走代理流量。
又尝试了 proxychains ,也有问题,无法走代理流量。
由于我使用 ssh 协议提交代码到 github,所以我着重搜索了一下 ssh 代理相关的内容。
结果发现了 corkscrew 这个软件,在 Archlinux 和 Debian 的软件仓库里还都有收录,真是太赞了。
配置使用很简单,只需要在 ~/.ssh/config
文件中增加下面的配置即可,
Host github.com
HostName github.com
ProxyCommand corkscrew 127.0.0.1 8001 %h %p
这样,ssh 访问 github.com 的流量就会通过 corkscrew 软件走我本地 8001 端口的代理出去。
由于我本地是 v2ray ,所以配置了 github.com 域名的 DNS 查询流量也走代理出口,这样就完美绕过了 GFW 的限制。