MTProxy是一款代理工具,但它目前仅仅只能代理Telegram,也可以说这是一款在Telegram中内置好的代理工具。目前我们可以自行将MTProxy的服务端部署到任何一台VPS或者独立服务器内。
这玩意可以说是解决了我的一大难题,我这人平时不怎么用TG的最根本原因就是每次上个TG还要先打开SocksCap64,然后再通过SocksCap64运行Telegram。简而言之就是我觉得用着太麻烦,索性就懒得去用了。也就偶尔用手机APP上一下看看消息之类的。现在有了MTProxy上Telegram就非常方便了,只要一次配置好代理,往后都可以直接运行Telegram,就跟登录QQ一样方便~
本文使用CentOS7.5X64位系统,如果你需要别的系统的安装方法,可以浏览官方的项目页面:
https://github.com/TelegramMessenger/MTProxy
其实官方的这个安装方法已经写的很详细了,不过第一次安装难免会出现一些变数,所以还是自己记录一下符合自己操作习惯的安装方法。
OK,屁话不多说233,一起来部署一个MTProxy的服务端玩玩~
开发工具包走一波:
yum -y groupinstall "Development Tools"
安装编译所需的额外依赖:
yum -y install openssl-devel zlib-devel
拉取项目文件以及进入到项目目录:
cd git clone https://github.com/TelegramMessenger/MTProxy cd MTProxy
编译:
make
进入目录就可以看到编译好的可执行文件了:
cd objs/bin
现在我们通过Telegram的官方渠道获取两个配置文件:
curl -s https://core.telegram.org/getProxySecret -o proxy-secret curl -s https://core.telegram.org/getProxyConfig -o proxy-multi.conf
接着执行如下命令生成一个密匙:
head -c 16 /dev/urandom | xxd -ps
注:妥善保管这个密匙,请勿轻易告诉他人或公开。
现在我们就可以尝试运行一下MTProxy了,执行如下命令:
./mtproto-proxy -u nobody -p 8888 -H 2333 -S 密匙 --aes-pwd proxy-secret proxy-multi.conf -M 1
注:
1、8888是本地监听端口,如无特殊需求保持默认即可。
2、2333是服务端口,可根据需要自行修改。
3、将“密匙”替换成你之前生成的密匙。
成功运行后,如图所示:
接着我们按键盘组合键Ctrl+C退出运行。现在来创建一个系统服务,可以在往后更方便的管理和运行MTProxy。
新建服务文件:
vi /etc/systemd/system/MTProxy.service
写入:
[Unit] Description=MTProxy After=network.target [Service] Type=simple WorkingDirectory=/root/MTProxy ExecStart=/root/MTProxy/objs/bin/mtproto-proxy -u nobody -p 8888 -H 2333 -S 密匙 --aes-pwd /root/MTProxy/objs/bin/proxy-secret /root/MTProxy/objs/bin/proxy-multi.conf -M 1 Restart=on-failure [Install] WantedBy=multi-user.target
注:
1、确保WorkingDirectory以及ExecStart内正确写明mtproto-proxy可执行文件的绝对路径。以及指定proxy-secret、proxy-multi.conf的路径也是绝对路径。如果你是按照我的这篇文章来一字不动部署的,那么可以直接看第2点注意说明。
2、“密匙”改为之前你生成的密匙。
重加载,让新的服务文件生效:
systemctl daemon-reload
现在就可以启动MTProxy了:
systemctl start MTProxy.service
查看运行状态:
systemctl status MTProxy.service
如图所示是Active就说明MTProxy运行正常:
把MTProxy设为开机启动:
systemctl enable MTProxy.service
停止MTProxy的运行:
systemctl stop MTProxy.service
OK,到这里,MTProxy的服务端就部署完成了,接下来我们打开Telegram登录自己的账号。(这次打开TG肯定还是需要用到别的代理工具的,比如SSR之类的。)
首先我们关注一下这个Telegram机器人:
https://t.me/MTProxybot
如果你是通过搜索的方式来关注,注意是如下图箭头所指的那个用户才是真正的机器人,其他的两个都是假冒的:
和机器人开始对话:
告诉机器人,我们要设置新代理:
把我们的服务器公网IP+MTProxy的服务端口以及之前生成的密匙发送给它:
成功后,该机器人会回复给你类似如下图的信息:
然后我们直接点击tg://开头协议的地址,Telegram就会弹出如下图提示框,问我们是否需要添加这个代理:
至此,大功告成,现在就可以愉快的使用Telegram了~
写在最后:
MTProxy小巧方便,不占用系统资源。要是Telegram能把这个项目开发成一个类似SSR那样的代理工具,我想这玩意会非常火= =
老哥。
Telegarm自带sock代理
登录的时候就可以设置了。。
你用啥SocksCap64(多此一举)
https://imgchr.com/i/CLQ0pT
https://imgchr.com/i/CLQdhV
这是Telegarm自带的sock5设置
我的锅,我错了
lala可否写篇Shadowsocks的进程守护教程,后台有时候掉了,老是要登服务器启动好麻烦
MTProxy很吃服务器资源,它并不小巧..
很吃吗?挂着一个多星期了,一般CPU使用率不超过5。
MTProxy支持nat吗,状态显示已经运行,但是无法连接,关闭防火墙了
没在NAT机器上用过,这个我不是很清楚。
博主呀,出事啦~~
curl -s https://core.telegram.org/getProxySecret -o proxy-secret
创建不了文件,而且打开链接发现是乱码也~~ 怎么办?
要不,你把你的这个文件分享下被~~~谢谢~
这是密钥文件,怎么可以随便分享?这链接是TG官方的,如果有问题的话,他们会修复的。
就算是Telegarm自带了sock代理,也要在本地装代理客户端吧。但是看博主的教程,用MTProxy就不用额外再装客户端代理了。
配置好MTProxy后就不需要别的客户端代理了,MTProxy是内置在Telegram里面的。
-bash :xxd command no found
阿里云香港 CentOS7.4X64 不知道为什么链接不上 端口是开通的
一直连接中就是无法连上 博主有遇到过吗? 一切都按照文章处理 而且都正常
实在搞不懂
阿里云的安全组放行了相应端口没?还有系统的防火墙也要关掉,或者放行相应端口。
你好, GCP 上部署的 MTProxy, 连接上后一直显示 Updating…, 可能是什么原因呢
GCP console 里面配置过防火墙关闭了, 也能够连接上的, 不是卡在连接上
直接./mtproto-proxy这样带参数运行,然后连接看看日志信息。
按照这个方法弄了以后,tg一直显示在链接MTProxy服务器,连不上,不知道怎么回事
参考上面的回复,另外防火墙关闭或者放行相应端口。。。
pc端的telegram不能用哦
可以用。
这个代理已经被精准识别,我每次换端口封掉不用24h 这可咋办
不用不就完事了。。TG不是默认还支持一个SOCKS5么。。
唉,不行,搞不了,缺少XXD命令,也不知道怎么安装。换一个VPS又出现别的问题,我还是用一键的吧
CentOS7的xxd命令应该在这个包里面:vim-common
装一下应该就有了:yum -y install vim-common
不过这个MTProxy现在已经被和谐了,貌似装也没啥用就是。。
没有被和谐啊,还是可以用的,只是好像不能通过官方机器人发布顶置广告了,心痛。。
好久没用过这个了,之前听很多人说这个已经被和谐了。。