p1ratrulezzz / mtproxy-server-linux
MTProto(Telegram)代理服务器
Requires
- byjg/cache-engine: 4.0.*
- malkusch/lock: ^1.1
README
这是一个设置自己mtprotocol代理的实用脚本。注意:这个代理一旦创建,就可以被你共享代理的用户使用,它不会给他们访问你账户的权限,所以使用和分享给朋友都是完全安全的!此外:赞助频道即将上线。这意味着你的代理可以强制用户订阅某些频道。这可以作为设置此类代理的动机。
测试MTProto代理服务器
Python - 高度推荐!!!
支持频道广告,完全支持ipv6,安装最简单!
注意:需要通过apt-get安装python3和python3-crypto包。安装docker版本:https://p1ratrulezzz.me/2018/06/eshhe-odin-variant-mtproto-proxy-s-reklamoj.html
在CentOS上的安装(自动):检查repo中的教程 https://github.com/HirbodBehnam/MTProtoProxyCentOSInstall 并别忘了点赞。
在CentOS上简单安装命令
wget -O - https://git.io/vhgUt | sudo -E bash -
在Ubuntu/Debian上的安装
cd /opt git clone https://github.com/alexbers/mtprotoproxy.git cd mtprotoproxy apt-get install python3 python3-crypto ## edit config.py file with desired port and proxy tag and start! ## python3 mtprotoproxy.py
Repo: https://github.com/alexbers/mtprotoproxy(点赞此repo并与朋友分享)
C(官方Telegram MTProxy)
意见:安装困难。资源利用率高,支持频道广告,如果成功安装则运行稳定。在某些服务器上无法工作,尤其是在俄罗斯的服务器上(即使使用VPN)。除非你想推广你的频道(在这种情况下,无论如何最好使用Python版本),否则不建议安装。
注意:这是一个非常初级的版本,使其工作可能相当棘手,尽管这是可能的。还可以查看我的带有教程的分支和博客文章 https://github.com/p1ratrulezzz/MTProxy-1 以及这里 https://p1ratrulezzz.me/2018/06/creating-your-own-official-mtproto-proxy-with-channel-promotion-very-easy-way.html
Repo: https://github.com/TelegramMessenger/MTProxy
是的,这个服务器确实有设置推广频道的功能(请查看我的分支和博客文章以获取教程)
PHP(此repo)
注意:在Android客户端存在问题。无法发送消息。桌面客户端运行良好。
请测试上述服务器以收集关于CPU负载等的统计数据。版本0.1.6存在创建大量僵尸进程并完全杀死服务器的问题。请将每PHP脚本的内存_limit设置为32MB以节省资源。
NodeJS
Repo: https://github.com/FreedomPrevails/JSMTProxy
注意:如果连接的人很多并且正在上传文件,服务器将承受高CPU负载。
Java
注意:需要JRE 8或JDK 8。版本9及以上将无法工作。
Repo: https://github.com/makkarpov/mtoxy
在开始安装之前
一些VPS提供商正在阻止其服务器上的Telegram连接。以下是这些服务的列表,它将在一段时间内逐步填写,但到目前为止,已经有了以下这些
- OVH
- IPhoster
请不要使用这些提供商的MTProto代理服务器。
安装
初始守护进程文件位于 https://github.com/danog/MadelineProto(别忘了Star这个仓库)
Ubuntu 16.04服务器教程
- 通过SSH以root身份登录到您的VDS
- 安装需求
apt-get update apt-get install php7.0-cli php7.0-xml php7.0-curl php7.0-opcache php7.0-zip apt-get install composer wget -O composer-setup.php https://getcomposer.org/installer && php composer-setup.php --install-dir=$(dirname $(which composer)) --filename=composer && rm composer-setup.php
- 创建mtproxy用户
useradd --shell /usr/sbin/nologin -M -u 3000 -o mtproxy
注意:您设置的密码无关紧要
- 将包下载到/opt文件夹
cd /opt/ composer require p1ratrulezzz/mtproxy-server-linux ^0.1 sh vendor/p1ratrulezzz/mtproxy-server-linux/install.sh `` After that you will see that the directory /opt/mtproto-proxy has been created. 4. Run proxy for the first time ```bash cd /opt/mtproto-proxy chmod +x mtproxyd ./mtproxyd marcopolo 6666
6666 - 是监听端口号,marcopolo - 是生成散列的种子。这样留空是安全的,因为创建的散列将随机生成。但最好设置自己的种子,并使用从Random.org生成的任何长度的密码。它可能要求您使用现有的Telegram账户登录。这是正常的,只需输入您的电话号码,然后通过Telegram获取的授权码。这是一个一次性设置。
您将看到守护进程正在运行,并且它将创建一个secret.txt文件。
cat secret.txt
注意:您可以手动创建此文件,并在其中写入自己的32个字符字符串。在这种情况下,它不会被重写。
它将显示您连接到代理的秘密密码。例如
38f75d6bb9f8138e53489cf1b7a132ec
38f75d6bb9f8138e53489cf1b7a132ec - 是用于在代理服务器上身份验证的32个字符秘密(类似于密码)。此密码将写入secret.txt文件,如果您有root权限,则可以随时查看它。创建自己的密码的最简单方法是使用任何md5生成器(在线工具也行)提供的字符串的md5散列。
注意:密码可以手动设置。它必须是任何十六进制字符串(仅数字和字符范围a-f,并且始终小写)。此密钥用于使用AES加密加密您的流量。
现在按Ctrl+C终止代理进程。
- 检查文件权限
chown -R mtproxy:mtproxy /opt/mtproto-proxy
- 安装Linux服务以启动/停止/重启和自动启动代理
wget -O /etc/init.d/mtproxy 'https://raw.githubusercontent.com/p1ratrulezzz/mtproxy-server-linux/master/etc/init.d/mtproxy' chmod +x /etc/init.d/mtproxy systemctl daemon-reload systemctl start mtproxy systemctl enable mtproxy
然后检查它是否正在运行
systemctl start mtproxy
您应该看到它是“活动(正在运行)”
mtproxy.service - LSB: MTProxy service
Loaded: loaded (/etc/init.d/mtproxy; bad; vendor preset: enabled)
Active: active (running) since Thu 2018-05-17 21:55:08 UTC; 1 day 9h ago
Docs: man:systemd-sysv-generator(8)
Process: 16657 ExecStop=/etc/init.d/mtproxy stop (code=exited, status=0/SUCCESS)
Process: 16752 ExecStart=/etc/init.d/mtproxy start (code=exited, status=0/SUCCESS)
Tasks: 14
Memory: 55.3M
CPU: 1min 14.837s
CGroup: /system.slice/mtproxy.service
注意:您应该编辑文件/etc/init.d/mtproxy并设置自己的种子和端口。
- 测试您的安装
- 使用可以从https://github.com/telegramdesktop/tdesktop/releases下载的Telegram桌面客户端
- 使用可以从https://t.me/tgbeta/2975下载的Android客户端
(使用Alpha版本,因为它是唯一支持MTproto代理的版本)
服务器:您的域名或VDS服务器的IP地址 端口:6666 密钥:从secret.txt文件中获取的秘密
注意:VDS/VPS服务器的IP地址可以通过运行以下命令来揭示
curl ipinfo.io/ip
或(在具有内部IP的服务器上可能不起作用,但这种情况不在我们考虑范围内,所以应该没问题)
ifconfig
其他代理服务器实现
查看此账户 https://github.com/mtProtoProxy 以查看所有MTProto代理实现。
可以使用此存储库中的守护进程脚本来将这些服务器(除了nodejs,对于nodejs使用pm2 upstart)集成到任何服务器中。
Java实现: https://github.com/makkarpov/mtoxy
MTProxy安装程序的另一个版本(由madeline驱动)
查看此存储库: https://github.com/aquigni/MTProxySystemd。它提供了一个易于安装的shell脚本。它安装了与此存储库中提供的相同版本的MTProto代理。