云服务器如何突破 GFW?SSH 隧道介绍

国内的云服务器处于一个尴尬的局面。一方面,很多资源都在墙外,比如 Docker 镜像,NPM 源等等,但另一方面,云服务器上挂 VPN,直接与代理服务器通信 ,又是非常容易坐监的行为。

SSH 隧道基本命令

而 SSH 提供了隧道功能,我们再也不用在服务器上安装代理客户端了。只需要本机拥有代理即可。

  • 假设本机代理端口:A

  • 想要暴露到远程端口:B

则命令为:

1ssh -R B:localhost:A username@hostname

另一方面,如果我们想要把对本机的访问流量都定向到云服务器(相当于把云服务器作为实际计算节点)可以用:

1ssh -L 80:remotehost:80 username@hostname

在 VSCode 中使用自定义隧道

其实就是配置 ssh_config 文件。

在相应 host 下增加:

LocalForward B localhost:A

即可。

参考

调试利器:SSH隧道 - 腾讯云+社区 - 博客园 (cnblogs.com)

SSH port forwarding/tunneling use cases and concrete examples. Client command, server configuration. Firewall considerations.