通过 SSH 隧道转发流量

SSH 支持动态转发的功能,基于这点,我们很容易就能实现基于 SSH 隧道转发流量。SSH 的优点在于它几乎是所有操作系统(Windows、Linux、MacOS)默认携带的工具,因此十分适合用来作为一个简单易用的 Plan B。

具体操作,只需要在 SSH 命令中添加一个 -D <Local Port> 参数即可,即:

1
ssh -D <Local Port> -p <Remote SSH Port> user@remote_domain/IP
  • <Remote SSH Port> 是远程主机的 SSH 端口,默认是 22
  • <Local Port> 是指定的一个本地端口,数据将从此端口转发到远程主机。

此时在本地的 <Local Port> 上会打开一个 SOCKS 代理,即:127.0.0.1:<Local Port>。我们可以将这一 SOCKS 代理填入所需代理软件的「代理设置」中。

当你运行上方命令后,会打开一个 SSH 会话,在使用 SSH 转发流量时不要关闭终端,否则隧道会被关闭。