跳至內容
主選單
主選單
移至側邊欄
隱藏
導覽
首頁
近期變更
隨機頁面
MediaWiki說明
Gea-Suan Lin's Wiki
搜尋
搜尋
登入
個人工具
登入
檢視 MTProxy 的原始碼
頁面
討論
臺灣正體
不转换
简体
繁體
大陆简体
香港繁體
澳門繁體
大马简体
新加坡简体
臺灣正體
閱讀
檢視原始碼
檢視歷史
工具
工具
移至側邊欄
隱藏
操作
閱讀
檢視原始碼
檢視歷史
一般
連結至此的頁面
相關變更
特殊頁面
頁面資訊
←
MTProxy
由於以下原因,您無權編輯此頁面:
您請求的操作只有這個群組的使用者能使用:
使用者
您可以檢視並複製此頁面的原始碼。
'''MTProxy'''是[[Telegram]]的Proxy軟體。 == 安裝 == 這邊是以[[Ubuntu]] 18.04的環境測試,先安裝編譯需要的工具: <syntaxhighlight lang="bash"> sudo apt update; sudo apt install -y git curl build-essential libssl-dev zlib1g-dev </syntaxhighlight> 再來是編譯並安裝,這邊是裝到系統內的方式,需要root權限,程式(可執行檔)會裝到<code>/usr/sbin/mtproto-proxy</code>,而設定檔會放到<code>/etc/mtproxy/</code>下: <syntaxhighlight lang="bash"> cd /tmp; git clone https://github.com/TelegramMessenger/MTProxy.git; cd MTProxy; make; sudo cp objs/bin/mtproto-proxy /usr/bin; sudo mkdir /etc/mtproxy; sudo curl -s https://core.telegram.org/getProxySecret -o /etc/mtproxy/proxy-secret; sudo curl -s https://core.telegram.org/getProxyConfig -o /etc/mtproxy/proxy-multi.conf; head -c 16 /dev/urandom | xxd -ps | sudo tee /etc/mtproxy/secret </syntaxhighlight> 另外也還是編譯與安裝,但這會裝到自己目錄下的<code>~/mtproxy/</code>下: <syntaxhighlight lang="bash"> cd /tmp; git clone https://github.com/TelegramMessenger/MTProxy.git; cd MTProxy; make; mkdir -p ~/mtproxy; cp objs/bin/mtproto-proxy ~/mtproxy; curl -s https://core.telegram.org/getProxySecret -o ~/mtproxy/proxy-secret; curl -s https://core.telegram.org/getProxyConfig -o ~/mtproxy/proxy-multi.conf; head -c 16 /dev/urandom | xxd -ps > ~/mtproxy/secret </syntaxhighlight> == 啟動 == 可以設定透過使用者自己的Crontab在開機時啟動: <syntaxhighlight lang="bash"> echo '@reboot ( /usr/bin/mtproto-proxy -p 8888 -H 4443 -S $(cat ~/mtproxy/secret) --aes-pwd ~/mtproxy/proxy-secret ~/mtproxy/proxy-multi.conf 2>&1 ) | /usr/bin/logger -t mtproto-proxy -p local0.debug' >> ~/crontab."${USER}"; crontab ~/crontab."${USER}" </syntaxhighlight> 另外也可以設定透過Systemd在開機時啟動: <syntaxhighlight lang="bash"> echo -e '[Unit]\nDescription=MTProxy\nAfter=network.target\n\n[Service]\nType=simple\nWorkingDirectory=/etc/mtproxy\nExecStart=/bin/sh -c "/usr/bin/mtproto-proxy -u nobody -p 8888 -H 4443 -S $(cat /etc/mtproxy/secret) --aes-pwd /etc/mtproxy/proxy-secret /etc/mtproxy/proxy-multi.conf"\nRestart=on-failure\n\n[Install]\nWantedBy=multi-user.target' | sudo tee /lib/systemd/system/MTProxy.service; sudo systemctl daemon-reload; sudo systemctl enable MTProxy; sudo service MTProxy start </syntaxhighlight> 要注意的是,如果機器拿到的IP address不是對外的Public IP(像是在[[AWS]]與[[GCP]]上),需要多指定<code>--nat-info [local-addr]:[global-addr]</code>,像是<code>--nat-info 10.1.2.3:123.45.67.89</code>這樣,對應的指令就變成: <syntaxhighlight lang="bash"> echo '@reboot ( /usr/bin/mtproto-proxy -p 8888 -H 4443 -S $(cat ~/mtproxy/secret) --aes-pwd ~/mtproxy/proxy-secret ~/mtproxy/proxy-multi.conf --nat-info 10.1.2.3:123.45.67.89 2>&1 ) | /usr/bin/logger -t mtproto-proxy -p local0.debug' >> ~/crontab."${USER}"; crontab ~/crontab."${USER}" </syntaxhighlight> <syntaxhighlight lang="bash"> echo -e '[Unit]\nDescription=MTProxy\nAfter=network.target\n\n[Service]\nType=simple\nWorkingDirectory=/etc/mtproxy\nExecStart=/bin/sh -c "/usr/bin/mtproto-proxy -u nobody -p 8888 -H 4443 -S $(cat /etc/mtproxy/secret) --aes-pwd /etc/mtproxy/proxy-secret /etc/mtproxy/proxy-multi.conf --nat-info 10.1.2.3:123.45.67.89"\nRestart=on-failure\n\n[Install]\nWantedBy=multi-user.target' | sudo tee /lib/systemd/system/MTProxy.service; sudo systemctl daemon-reload; sudo systemctl enable MTProxy; sudo service MTProxy start </syntaxhighlight> 要記得Port 4443對外要打開,除了本機的[[iptables]]或[[UFW]]外,雲端服務上面的Security Group也要記得檢查。 == 外部連結 == * {{Official|https://github.com/TelegramMessenger/MTProxy}} {{en}} [[Category:軟體]]
此頁面使用了以下模板:
Template:En
(
檢視原始碼
)
Template:En icon
(
檢視原始碼
)
Template:ISO 639 name en
(
檢視原始碼
)
Template:Lan
(
檢視原始碼
)
Template:Language icon
(
檢視原始碼
)
Template:Official
(
檢視原始碼
)
Template:Official website
(
檢視原始碼
)
Module:Arguments
(
檢視原始碼
)
Module:Lan
(
檢視原始碼
)
Module:Official website
(
檢視原始碼
)
Module:URL
(
檢視原始碼
)
返回到「
MTProxy
」。
切換限制內容寬度