使用 corkscrew 实现 ssh 走 http 代理

in #cn3 years ago

image.png

这两天 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 的限制。

Coin Marketplace

STEEM 0.17
TRX 0.15
JST 0.028
BTC 62264.03
ETH 2431.11
USDT 1.00
SBD 2.50