大背景

大陆网络出境环境日益恶劣,很多人都利用了国内的服务器来中转流量,比如采用阿里云、腾讯云等国内 BGP 线路中转流量落地到香港 PCCW、日本 NTT 等线路,相对于直接采购一条 CN2 线路有时候成本更低。
基本上大多数人都用的最简单的 iptables 或者 socat 转发,直接将收到的包转到落地节点,本来这并没有什么问题,但自 2020 年以来,墙不断发威,SS/SSR 直连会被非常迅速的识别并封禁。尤其是上月的五中全会期间更为严重。此时,构建一条加密中转隧道就成了必要的选择。

介绍

GOST是一款利用GO语言实现的安全隧道工具,功能非常丰富,支持多端口监听、多级转发代理、支持TCP/UDP协议方式,多种传输协议;在这里我们基本只用到了端口转发这一个功能,具体文档可以参考 这里

准备工作

1、VPS一台 (后面我们称之为落地机)

2、NAT或者VDS一台(后面我们称之为中转机)

开始搭建

安装gost

首先需要在落地机和中转机上都需要安装gost

wget -N --no-check-certificate https://github.com/ginuerzh/gost/releases/download/v2.11.0/gost-linux-amd64-2.11.0.gz && gzip -d gost-linux-amd64-2.11.0.gz
mv gost-linux-amd64-2.11.0 gost
chmod +x gost

开始中转

中转机

./gost -L udp://:10292 -L tcp://:10292 -F relay+mtls://1.2.3.4:12345

监听本机 10292 端口的 TCP、UDP 连接,转发到落地机(这里假如落地机的IP为1.2.3.4)的 12345 端口。

落地机

./gost -L relay+mtls://:12345/127.0.0.1:3080

监听本机的 12345 端口,接收转发过来的连接,再转给本地的 3080 端口。

扩展知识

因为gost的机制问题,需要窗口化运行,那么我们关闭了SSH窗口中转也会随之关闭。因此可以使用screen 或者 nohup 的方法进行解决,下面以screen进行举例:
安装 screen ,新建窗口运行,代码如下:

apt install screen     #Debian/Ubuntu系统
yum install screen     #centos系统

若是不能安装,或是安装不成功,请update系统,代码如下:(PS:只针对 screen 安装不成功)

yum -y update    #centos系统
apt -y update    #debian系统或是ubuntu系统

安装完成以后,直接运行 screen -S gost 命令,开启新窗口,然后在新窗口中运行 落地机命令 或是 中转机命令,
这样我们SSH窗口后中转也会继续,如果想要想要恢复之前关闭的窗口的话输入screen -r gost 命令即可。


滑稽场|高性价比|支持SSR,V2ray,Trojan协议
Last modification:November 9th, 2020 at 01:45 am
如果觉得我的文章对你有用,请随意赞赏