之前有一篇使用一鍵快速腳本搭建 Telegram 專用代理 MTProxy-Go,不過好像原作者被抓去喝茶還是什麼鬼的 🥸

反正那個腳本已經年久失修,不太能正常使用了

有些上游來源路徑已經改過,所以在 build 過程會失敗,於是另外找了 Docker 版本

Docker 版本跟之前腳本相比起來搭建出錯機率小很多,因為整個都幫你包好了,日後更新起來也很容易

另外可能還會有人問 Telegram 不就直接可以正常使用嗎?為什麼還要翻牆代理?

在台灣確實可以正常使用,但是台灣手機號碼註冊分配到 Telegram 的新加坡機房速度時好時壞,有時候圖片或者影片會跑好久

為了要有更好的使用體驗,如果能自己搭一個海外 VPS 會改善非常多,像是 GCP 的台灣或者 AWS 的日本都能有不錯的連線穩定度

安裝 Docker Community 穩定版

雖然這安裝 Docker 的部分已經講過很多次,不過還是再寫一遍

如果你已經有 Docker 執行環境就可以跳過

一樣先 SSH 連到伺服器上,安裝 Docker 跟需要的軟體,以下適用於 Debian 與 Ubuntu

# 先完整更新一下系統
$ sudo apt update && sudo apt full-upgrade -y
# 安裝一下等下會需要用到的軟體
$ sudo apt install curl -y

更新好以後,使用 Docker 官方的一鍵安裝腳本

$ curl -fsSL https://get.docker.com/ | sh

接著稍等片刻,他會自動安裝到最新穩定版的 Docker

安裝完畢後,設定一下權限

# 將你帳號加入 docker 群組
$ sudo usermod -aG docker $USER
# 退出重連一次
$ exit

以上就完成執行 Docker 基本環境安裝

MTProxy-Go 無廢話直接跑起來 Docker 版

2021-04-26 update

感謝 leo15dev 提醒,MTProxy-Go 作者有 v2 的新版本,目前已經進入 RC 候選正式版

所以以下直接改成 MTProxy-Go 作者的 Docker 版本

$ docker run --rm nineseconds/mtg:master generate-secret --hex shopee.tw

上面這條指令可以幫你快速產生註冊一組 Secret Key 並開啟 TLS 混淆,讓你假裝好像在連 shopee.tw

當然你也可以改成其他網站,像是如果你要在中國使用,就不要填 facebook.com or google.com 之類的

輸出的 Key 請拷貝起來,下面馬上就會用到

這組 Key 就像密碼一樣,請自己記錄好並且妥善保存好,不應該隨便跟不信任的人分享

# 先新建一個設定檔
$ nano /etc/mtg-config.toml

拷貝以下內容,然後改成你自己的設定值

1
2
secret = "eeae027dc1bc63156223d2f25c7ec9626672e636f6d"
bind-to = "0.0.0.0:3128"

第 1 行請自己替換掉剛剛你自己註冊的 Secret Key,之後記得保存退出

設定檔最低只需要以上兩行資訊即可跑起來,如果你還想要設定更多進階功能可以參考作者設定檔範例

$ docker run -d \
--name mtg \
-v /etc/mtg-config.toml:/config.toml \
-p 9958:3128 --restart=unless-stopped \
nineseconds/mtg:master

以上指令一按下去就會直接跑一個 MTProxy-Go 的代理伺服器起來了,非常的方便!

接著記得開個防火牆連接埠

# Port 請改成你自己實際使用的
$ sudo iptables -I INPUT -p tcp --dport 9958 -j ACCEPT
# 裝個 iptables-persistent 保存規則
$ sudo apt install iptables-persistent -y

給 Telegram 連線的連結

而要丟給 Telegram 連線的連結可以套用以下規則

https://t.me/proxy?server=<YOUR_IP>&port=<PORT>&secret=<SECRET>

YOUR_IP 請改為你的伺服器外網公共 IP

PORTSECRET 就如上個步驟你設定的那樣填,你實際多少就填多少

實際完成後大概會是長下面這樣:

https://t.me/proxy?server=101.101.101.101&port=9958&secret=ee78442ab5f0965ae521b60b691e46b932351f75796562652e146f2d

完成後的連結直接丟到 Telegram 裡面,按一下即可新增連線

日後要更新也很簡單,建議可以另外新建一個 WatchTower 全自動無人值守升級

以上搭一個私人 Telegram 專用代理 MTProxy-Go 就是這麼簡單 🖖