博文

目前显示的是 六月, 2019的博文

一种作死的 Telegram 代理方案

图片
markdown 最近实验室来了新人,作为从上到下全员布道师的好传统,自然要安利我们新生代沙雕程序员的首选im:tg,但是受限于某不可名状的墙,手上莫得梯子的新人们无法随时随地聊天吹水,于是便搞了这么个借助一台国外和一台国内vps来提供代理的作死想法。 ## 解决方案 解决方案的选择一向是这种需求最重要的事情,这里我选择了暴露一个socks5代理,主要是为了近期mtproto在墙内严打风生水起,而且tg客户端原生支持socks5代理及认证。有了认证,至少理论上来讲,被爬出来做公开代理的几率应该就小不少了(余裕余裕)。而且还有clash做filter,保证只让tg流量通过。 于是拓扑图如下: 上面虽然标着使用的理由,但是做出选择的大部分原因大概还是我个人想折腾( 但是当我docker心爆发想要搞docker的时候,发现goproxy这玩意不支持在容器中运行,而且不完全开源,还强制更新,于是自己[改了改clash](https://github.com/Dreamacro/clash/pull/216),加了个认证功能,现在变成了这个样子: ## 具体部署 部署过程中发现似乎这玩意可以搞成一个Docker image,于是就开心的搞了。( 全然忘记即将考大物 ) 地址在此:https://hub.docker.com/r/popu111/tg-sb-proxy-server 首先不要忘了pull一下镜像: ```bash docker pull popu111/tg-sb-proxy-server ``` 在郭外的服务器上: ```bash docker run -d --privileged --cap-add=NET_ADMIN -e IS_SERVER=1 \ -p 1433:1433 \ --name tgsb \ popu111/tg-sb-proxy-server # 加入自动启动 docker update --restart=always tgsb ``` 获取一下连接信息: ```bash docker exec -i tgsb cat /root/keys.txt ``` 然后在郭内的服务器上连上: ```bash docker run -d --privileged -e IS_SERVER=0 \