前言

阅读本文需要有一定linux知识,懂一点linux命令。

本文完全原创,转载请注明。

为什么要采用隧道中转搭建?

现有的几种常用Telegram代理方式有如下问题:

  • socks直连:秒封
  • mtproto直连:基本秒封
  • mtproto+tls:能有效抗封锁,但是限于直连线路的情况,延迟一般较高
  • mtproto+中转:mtp流量在国内是会被识别的,NAT商家一般都严禁走mtp

那么有没有一种方式能够避免以上所有问题?就是采用隧道中转搭建socks代理。

基本原理如下:

在国外落地机搭建socks代理,国内中转机器使用gost,在两机器间建立加密隧道过墙(隧道是目前最佳的抗封锁形式)。

搭建教程

示例

下文演示按照如下假设:

  • 国内nat:
    • ip:A.A.A.A
    • 内网端口:11360
    • 外网端口:49698(部分商家支持映射内外网端口一致,这里以不一致做示范,请手动创建好映射)
  • 落地socks5:
    • 落地ip:B.B.B.B
    • socks端口:7891
    • socks用户名:123456
    • socks密码:654321

自己的各项参数请与示例一一对应,不要照抄。

安装gost

68747470733a2f2f692e6c6f6c692e6e65742f323032302f31322f31342f713735504f367332444d4963554b422e706e67.png

本人基于原EasyGost脚本进行了修改增强,增加了许多功能,具体功能可以看项目页:

项目地址

一键脚本:

wget --no-check-certificate -O gost.sh https://raw.githubusercontent.com/KANIKIG/Multi-EasyGost/master/gost.sh && chmod +x gost.sh && ./gost.sh

再次运行本脚本只需要输入./gost.sh回车即可

我们在落地机与国内NAT均运行此脚本,选1,安装gost。

iShot2021-01-1809.35.59.png

国内机器安装gost请选择国内加速源,不然从GitHub拉取很慢。

国内NAT配置

我们使用脚本添加gost加密转发

#启动脚本
./gost.sh

接下来按照指示操作即可,我按照前文的示例填写,请自行对应。隧道传输类型选哪个都可以,但是中转和落地选择必须一致。

iShot2021-01-1809.46.55.png

iShot2021-01-1809.51.34.png

注意这里的目的地端口不能是落地的socks端口,应当是它之外的任意一个空闲端口,仅用于解密隧道流量,具体可以见下一步。上文我选的443,如果落地机器443被站点占用,可以更换为任意端口,不影响安全性。

落地机配置

脚本内置了socks代理一键安装(gost内置)

#启动脚本
./gost.sh

iShot2021-01-1809.39.54.png

安装好后先用tg直连一下这个socks代理,确定直连能通再进行隧道转发。(确认通了就关掉,socks裸奔很快就会被封)

接下来对接隧道落地端,按照指示操作即可,我按照前文的示例填写,请自行对应。

iShot2021-01-1809.50.03.png

iShot2021-01-1809.51.59.png

注意流量入口和国内机填的目的地端口必须一致,ip填127.0.0.1,也就是本机ip,这里的目的地端口即为socks代理监听的端口。

TG连接测试

填写如下

Screenshot_2020-08-01-23-22-14.jpg

如果发现没通,请仔细检查自己参数与示例的对应关系。

后记

个人体验延迟非常低,并且视频加载速度很快,使用已基本接近在国内使用微信。