作为一款即时通讯App,Telegram以其轻巧安全和geek的特性,获得了不少人的青睐,但是显然我们很难做到为了及时收到信息,无时不刻在移动设备上开启着代理,于是专属的代理服务端就成了更好的选择。

介绍:

Github:https://github.com/FreedomPrevails/JSMTProxy
支持的操作系统:Linux/Windows,且能够正常访问Telegram服务;
需要部署的环境:NodeJS(8.0+), NPM, GIT 及 PM2;


Linux下的部署:

部署环境

由于JSMTProxy仅支持8.0以上版本的NodeJS,因此Linux系统需为Ubuntu 14+Debian 8+或者CentOS(具体版本要求不太清楚),我们接下来以Debian 8为例。
1.Node.jsnpm

curl -sL https://deb.nodesource.com/setup_8.x | bash -
apt-get install -y nodejs

此时,node.jsnpm已经都安装完成了,对于一些npm包,可能还需要安装build-essential

apt-get install -y build-essential

2.PM2
通过PM2我们可以方便地启动和管理Node.js程序。

npm install -g pm2

参考来源:https://github.com/nodesource/distributions


部署JSMTProxy

在确认已经安装有git后,在我们希望存放JSMTProxy的目录下,我们进行git clone:

git clone https://github.com/FreedomPrevails/JSMTProxy.git

然后进入JSMTProxy目录内:

cd JSMTProxy

我们首先生成一个随机的密钥,并将生成的密钥记下:

head -c 16 /dev/urandom | xxd -ps

JSMTProxy的配置文件颇为简单,我们进行修改:

vim config.json

看到如下内容:

{
  "port":6969,
  "secret":"b0cbcef5a486d9636472ac27f8e11a9d"
}

我们可以将port/端口号进行自定义,注意:修改后也要在防火墙中开放相应的端口。并将之前记下的随机密钥放入替换。


运行JSMTProxy

我们通过pm2对JSMTProxy进行运行和开机启动:

pm2 start -n MTProxy mtproxy.js
pm2 save
pm2 startup


Windows下的部署:

部署环境

首先我们下载并安装node:
https://nodejs.org/dist/v8.11.2/node-v8.11.2-x64.msi
然后我们win+r打开cmd安装PM2

C:\> npm install pm2 -g

部署JSMTProxy

下载最新版本的JSMTProxy:
https://github.com/FreedomPrevails/JSMTProxy/archive/master.zip
解压到任意目录下,并按照上文Linux的部署方式,修改config.json

运行JSMTProxy

C:\> pm2 start mtproxy.js -i max


使用:

我们以iOS 12下的Telegram为例,通过以下方式进行设置即可:
JSMTProxy-ios.jpg


参考&其他:

1.快速搭建 Telegram 袋里 - YJK
https://blog.yjk.im/telegram-mt/
2.『原创』Telegram 专用的轻量化代理工具 —— MTProxy 一键脚本
https://doub.io/shell-jc7/

Last modification:July 10, 2019
If you think my article is useful to you, please feel free to appreciate