Posts Tagged: MTProxy

Telegram 专用代理服务器 MTProxy 搭建

近日,Telegram 在俄罗斯遭封锁事件催生了基于其自有加密协议 MTProto 的代理服务器 MTProxy,官方源码使用 C 语言编写,托管于 TelegramMessenger/MTProxy。我试着在自己的 VPS 上搭建了一个,虽然官方文档非常简陋,但还算顺利。

服务器端编译

首先在 VPS (Ubuntu 18.04) 上克隆服务器端源码:

$ cd ~/dev/
$ git clone https://github.com/TelegramMessenger/MTProxy.git
$ cd MTProxy

编译之前需要安装必要的工具链和开发库:

$ sudo apt install build-essential libssl-dev zlib1g-dev

然后在 MTProxy 源码的根目录下直接执行 make 即可,编译出的可执行文件是 objs/bin/mtproto-proxy

之前的 README.md 没有说明需要安装的库文件,make 时在链接阶段有如下错误:

/usr/bin/x86_64-linux-gnu-ld: cannot find -lz

就是因为没有安装 zlib1g-dev 导致的。

服务器端运行

为简化说明,直接在编译结果目录中操作:

$ cd objs/bin/

获取 AES 密钥用于连接 Telegram 服务器:

$ curl -s https://core.telegram.org/getProxySecret -o proxy-secret