落地机、中转机安装 gost
- wget -N --no-check-certificate https://github.com/ginuerzh/gost/releases/download/v2.11.0/gost-linux-amd64-2.11.1.gz && gzip -d gost-linux-amd64-2.11.1.gz
- mv gost-linux-amd64-2.11.1 gost
- chmod +x gost
1.UDP+TCP中转。
-
国内中转机器
-
gost -L udp://:1053 -L tcp://:1053 -F relay+mtls://1.2.3.4:12345
监听本机 1053 端口的 TCP、UDP 连接,转发到落地机器的 12345 端口。
-
-
落地机器
-
gost -L relay+mtls://:12345/127.0.0.1:443
监听本机的 12345 端口,接收转发过来的连接,再转给本地的 443 端口。
-
2.TCP中转
落地机命令(不用修改)
- ./gost -D -L "ws://:8080?path=/ws&rbuf=4096&wbuf=4096&compression=false"
中转机命令
- ./gost -L=:本地端口/落地IP:落地端口 -F=ws://落地IP:8080/ws
(PS:本地端口为中转机可以使用的端口)
后续命令完善
因为gost的机制问题,需要窗口化运行,那么我们关闭了SSH窗口中转也会瞬间崩塌。所以我们需要解决这个问题,这边有两种方法都可以使用。
第一种方法 (推荐)
安装 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
命令,开启新窗口,然后在新窗口中运行 落地机命令 或是 中转机命令
第二种方法
使用 nohup 命令,实现gost隧道监听。
在上述执行落地机命令的时候输入:
- nohup ./gost -D -L "ws://:443?path=/ws&rbuf=4096&wbuf=4096&compression=false"
在上述执行中转机命令的时候输入:
- nohup ./gost -L=:本地端口/落地IP:落地端口 -F=ws://落地IP:443/ws