kiến thức Tạo MTProto Proxy cho Telegram

  • Người tạo chủ đề Người tạo chủ đề Pr0vjp
  • Ngày bắt đầu Ngày bắt đầu
Chính xác thì mtproto bị telegram bỏ rơi rồi, dù nhẹ và bảo mật tốt nhưng lắm lỗi, cái dễ thấy nhất là bị rớt kết nối ko tự kết nối lại, tắt bật để kêt nối lại, các phiên bản cũng đã ngừng phát triển, với mức độ chặn ko gắt của VN thì dùng sock5 với microsock, dante là chân ái, gõ 3 lệnh là xài ngay nhưng dễ bị quét :shame:
Theo mình hỏi chatgpt với perplexity thì socks5 nó cũng ko có bản cập nhật nào lớn trong 30 năm, ko mã hóa dữ liệu chỉ ẩn IP, 1 số hệ thống ví dụ Windscribe đã bỏ hẳn server socks5. Vậy thì so với mtproto cũng 1 9 1 10 chứ nhỉ, hơn gì đâu
 
lưu ý là bọn nước ngoài có giới hạn băng thông nhé, như aws cỡ 1-2tb gì đó. hết là xì tiền :big_smile:
thím ơi thằng MTproto nó có bản update mới liên tục ở git này .


bản unofficial thôi , nhưng đc cái update liên tục . thím xem có làm cái script all in one giúp em với đc ko thím ?

em thấy cái script tự cài bản mtproxy mới : GitHub - n4t1412dev/MTProxy-GetPageSpeed (https://github.com/n4t1412dev/MTProxy-GetPageSpeed)

nhưng mà chạy thử thì ko kết nối được .

WeBjMbk.gif
WeBjMbk.gif
 
Sửa lần cuối:
Theo mình hỏi chatgpt với perplexity thì socks5 nó cũng ko có bản cập nhật nào lớn trong 30 năm, ko mã hóa dữ liệu chỉ ẩn IP, 1 số hệ thống ví dụ Windscribe đã bỏ hẳn server socks5. Vậy thì so với mtproto cũng 1 9 1 10 chứ nhỉ, hơn gì đâu
thằng sock5 là 30 năm chạy ổn định , ko có bug gì lớn .

còn thằng MTProto là đang phát triển dở thì bỏ ngang , 1 đống lỗi lớn .

p/s : em thấy mọi người bảo thằng MTProto vẫn đc cộng đồng phát triển ở git này GitHub - GetPageSpeed/MTProxy: Community fork of MTProxy that doesn't suck (https://github.com/GetPageSpeed/MTProxy) .
 
Theo mình hỏi chatgpt với perplexity thì socks5 nó cũng ko có bản cập nhật nào lớn trong 30 năm, ko mã hóa dữ liệu chỉ ẩn IP, 1 số hệ thống ví dụ Windscribe đã bỏ hẳn server socks5. Vậy thì so với mtproto cũng 1 9 1 10 chứ nhỉ, hơn gì đâu
2 công nghệ khác biệt hoàn toàn mtproto là giao thức độc quyền của telegram, bảo mật cao, tạo ra chống chặn cực mạnh mà giờ telegram ngoan lắm rồi nên ko cần lắm. sock5 là proxy tầng thấp, cực kỳ phổ biến, hỗ trợ mọi app. Dù không mã hóa, nhưng vẫn rất hữu dụng nếu biết triển khai đúng cách ( kết hợp với TLS/HTTPS hoặc dùng qua VPS ping + speed ổn định hơn nhiều). Không cập nhật không có nghĩa là lỗi thời, đơn giản là đã ổn định từ lâu đúng vai trò cùi bép của nó, ai muốn mã hóa thì tìm phương án khác! fen so vậy thấy hơi sai sai :beat_shot: dùng thử mtproto trong 1 2 tuần pải bỏ vì quá chán ! trừ khi VN chặn full DPI mới cần :burn_joss_stick:
 
Sửa lần cuối:
Anh em xài Sock5 làm gì, lằng nhà lằng nhằng, xài MT Proto chính chủ quá ngon gọn nhẹ. 1 con của mình hơn 200 thiết bị chưa thấy vấn đề gì.
 
bác dùng bản MTProto nào thế bác ơi ?
Của Alexbers. Mình share bạn file .sh để cài cho nhanh này, 1 lệnh là xong
(nhớ thay Secret-key-cua-ban vào)

Bash:
#!/bin/bash

echo "🛠️ Sếp chờ em tý, em đang bắt đầu cài đặt MTProto đây ạ..."
apt-get update && apt-get install -y python3 python3-pip git
cd /root || exit
rm -rf mtprotoproxy
git clone https://github.com/alexbers/mtprotoproxy.git
cd mtprotoproxy || exit
cat <<EOT > config.py
PORT = 443
USERS = {
    'user1': 'Secret-key-cua-ban',

}
FAKE_TLS_DOMAIN = 'www.dantri.vn'
TLS_DOMAIN = 'www.dantri.vn'
EOT
find . -name "*.pyc" -delete
find . -name "__pycache__" -type d -exec rm -r {} +
cat <<EOT > /etc/systemd/system/mtproxy.service

[Unit]
Description=MTProto Proxy by Alexbers - Dantri.vn
After=network.target

[Service]
WorkingDirectory=/root/mtprotoproxy
ExecStart=/usr/bin/python3 mtprotoproxy.py
Restart=always
User=root

[Install]
WantedBy=multi-user.target
EOT
systemctl daemon-reload
systemctl enable mtproxy
systemctl start mtproxy

echo "✅ Em đã tạo xong rồi, Sếp copy link để xài nhé"
echo "🌐 Copy link dưới để mở trên Telegram là ngon luôn ạ:"
IP=$(curl -s https://api.ipify.org)
echo "tg://proxy?server=$IP&port=443&secret=eeSecret-key-cua-ban"
 
Sửa lần cuối:
Script bên dưới là ver tối ưu hệ thống + kết nối nhé.

Bash:
#!/bin/bash

# ==================
# SCRIPT TỐI ƯU
# ==================

echo "🛠️ Bắt đầu cài đặt và tối ưu MTProto Proxy..."

apt-get update -y # Cập nhật danh sách gói
apt-get install -y python3 python3-pip git curl # Cài đặt các gói cần thiết: Python, pip, Git, Curl (để lấy IP)

echo -e "\n⚙️ Cài đặt thư viện mã hóa Python (cryptography) và uvloop để tăng tốc độ..."
# 'cryptography' cung cấp các thuật toán mã hóa nhanh hơn so với Python thuần.
# 'uvloop' là một triển khai event loop thay thế nhanh hơn asyncio mặc định của Python.
pip3 install cryptography uvloop || { echo "Lỗi: Không thể cài đặt các thư viện Python. Vui lòng kiểm tra kết nối internet hoặc quyền." ; exit 1; }

echo -e "\n⬇️ Clone mã nguồn mtprotoproxy từ GitHub..."
cd /root || { echo "Lỗi: Không thể chuyển đến thư mục /root. Vui lòng kiểm tra quyền." ; exit 1; }

# Xóa thư mục mtprotoproxy cũ nếu tồn tại để đảm bảo cài đặt sạch.
rm -rf mtprotoproxy

git clone https://github.com/alexbers/mtprotoproxy.git || { echo "Lỗi: Không thể clone repository. Vui lòng kiểm tra kết nối Git." ; exit 1; }

cd mtprotoproxy || { echo "Lỗi: Không thể vào thư mục mtprotoproxy." ; exit 1; }

echo -e "\n📝 Tạo file cấu hình config.py..."
cat <<EOT > config.py
PORT = 443

# Các tài khoản người dùng (secrets). Bạn có thể thêm nhiều secret ở đây.
# Khi chạy nhiều instance, các instance sẽ tự động chia sẻ tải cho các secret này.
# LƯU Ý BẢO MẬT: Secret đang được hardcode. Nên tạo ngẫu nhiên hoặc yêu cầu nhập từ người dùng.
USERS = {
    'user1': '00df26358627e9817d9628c7c1c60b8e',
    'user2': '8j9k0la0b1c2d3e4f5g6h7i1m2n3o4p5', # Thêm secret thứ hai
    'user3': 'x7y8z9q0r1s2t3u4v5w6a0b1c2d3e4f5', # Thêm secret thứ ba
}

# Domain giả mạo cho TLS obfuscation.
# Chọn một domain phổ biến, hợp pháp để ngụy trang lưu lượng truy cập.
FAKE_TLS_DOMAIN = 'www.dantri.vn'
TLS_DOMAIN = 'www.dantri.vn'

# --- CÁC CẤU HÌNH TỐI ƯU HIỆU SUẤT TRONG config.py ---
# BUF_SIZE: Kích thước buffer đọc/ghi. Tăng giá trị này có thể cải thiện tốc độ truyền dữ liệu
# Giá trị mặc định là 64 * 1024. Đặt 256KB hoặc 512KB là phổ biến.
BUF_SIZE = 256 * 1024 # Thử nghiệm với 256KB. Nếu RAM lớn có thể thử 512 * 1024.

# CONN_MIN_TIMEOUT: Thời gian chờ tối thiểu cho một kết nối. Tăng giá trị này
#có thể giúp giữ các kết nối lâu hơn, giảm chi phí thiết lập lại kết nối.
CONN_MIN_TIMEOUT = 300 # Mặc định là 30 giây. Đặt 300 giây (5 phút).
EOT

echo -e "\n🧹 Dọn dẹp các file cache Python cũ..."
find . -name "*.pyc" -delete # Xóa các file bytecode đã biên dịch
find . -name "__pycache__" -type d -exec rm -r {} + # Xóa các thư mục cache

echo -e "\n🚀 Tối ưu hóa cài đặt TCP network stack và giới hạn hệ thống..."
# Các thiết lập này giúp hệ thống xử lý nhiều kết nối đồng thời và tăng thông lượng mạng.
cat <<EOT_SYSCTL >> /etc/sysctl.conf
# Tối ưu hóa TCP Network Stack
net.core.somaxconn = 65536         # Tăng backlog của socket lắng nghe
net.core.netdev_max_backlog = 65536 # Tăng hàng đợi cho thiết bị mạng
net.ipv4.tcp_max_syn_backlog = 65536 # Tăng hàng đợi cho các yêu cầu SYN
net.ipv4.tcp_fin_timeout = 10      # Giảm thời gian chờ FIN-WAIT-2
net.ipv4.tcp_tw_reuse = 1          # Cho phép tái sử dụng các socket TIME-WAIT
net.ipv4.tcp_max_tw_buckets = 2000000 # Tăng số lượng socket TIME-WAIT tối đa
net.ipv4.ip_local_port_range = 1024 65535 # Phạm vi cổng local khả dụng
net.ipv4.tcp_rmem = 4096 87380 67108864 # Kích thước buffer đọc TCP (min, default, max)
net.ipv4.tcp_wmem = 4096 87380 67108864 # Kích thước buffer ghi TCP (min, default, max)
net.ipv4.tcp_mtu_probing = 1       # Kích hoạt tính năng dò tìm MTU
net.ipv4.tcp_congestion_control = bbr # RẤT QUAN TRỌNG: Sử dụng thuật toán điều khiển tắc nghẽn BBR
net.ipv4.tcp_max_orphans = 262144  # Tăng số lượng socket "mồ côi" tối đa
net.ipv4.tcp_mem = 262144 393216 524288 # Tối ưu hóa sử dụng bộ nhớ TCP (min, pressure, max)
EOT_SYSCTL

sysctl -p # Áp dụng ngay lập tức các thay đổi từ sysctl.conf
echo "Sysctl đã được cập nhật và áp dụng."

echo -e "\n📄 Tạo Systemd service file cho MTProto Proxy..."
cat <<EOT > /etc/systemd/system/mtproxy.service
[Unit]
Description=MTProto Proxy by Alexbers - Dantri.vn - Optimized
After=network.target # Đảm bảo mạng đã sẵn sàng trước khi khởi động service

[Service]
# Quan trọng: Type=forking cho phép script khởi chạy nhiều tiến trình con.
Type=forking
WorkingDirectory=/root/mtprotoproxy # Thư mục làm việc của service

# --- SCRIPT WRAPPER ĐỂ CHẠY NHIỀU INSTANCE (TẬN DỤNG MULTI-CORE) ---
# Lệnh ExecStart sẽ gọi một script bash phụ để khởi chạy nhiều tiến trình mtprotoproxy.py
ExecStart=/root/mtprotoproxy/run_multi_instance.sh

Restart=always # Luôn khởi động lại dịch vụ nếu nó dừng hoặc gặp lỗi
# LƯU Ý BẢO MẬT: Chạy với quyền root. Nên thay bằng user không có quyền root (ví dụ User=mtproxy-user)
User=root

# --- Tối ưu giới hạn tài nguyên cho service ---
LimitNOFILE=65536 # Tăng số lượng file descriptor tối đa mà tiến trình có thể mở
                  # Quan trọng khi xử lý nhiều kết nối đồng thời.
# LimitNPROC=65536 # Giới hạn số lượng tiến trình con có thể tạo (có thể thêm nếu cần)

[Install]
WantedBy=multi-user.target # Đảm bảo service được kích hoạt khi hệ thống đạt trạng thái multi-user
EOT

# Cấp quyền thực thi cho script multi-instance
chmod +x /root/mtprotoproxy/run_multi_instance.sh

#TẠO SCRIPT PHỤ ĐỂ CHẠY NHIỀU INSTANCE (run_multi_instance.sh)
echo -e "\n📜 Tạo script run_multi_instance.sh để tận dụng đa nhân CPU..."
cat <<EOT > /root/mtprotoproxy/run_multi_instance.sh
#!/bin/bash

# Phát hiện số lượng CPU cores của VPS
NUM_CORES=\$(nproc)
# Hoặc bạn có thể đặt cứng số lượng instance nếu muốn kiểm soát (ví dụ: NUM_CORES=4)
# NUM_CORES=4

echo "Khởi chạy \$NUM_CORES MTProto Proxy instances..."

# Lặp và chạy từng instance ở chế độ nền
for (( i=1; i<=\$NUM_CORES; i++ )); do
    # Sử dụng 'uvloop' để tối ưu hóa event loop
    /usr/bin/python3 -m uvloop mtprotoproxy.py &
done

# 'wait' lệnh này quan trọng để giữ cho script cha (run_multi_instance.sh) chạy,
# do đó systemd sẽ không nghĩ rằng service đã dừng ngay lập tức.
wait
EOT
chmod +x /root/mtprotoproxy/run_multi_instance.sh

echo -e "\n⚡ Kích hoạt và khởi động MTProto Proxy service..."
systemctl daemon-reload # Tải lại cấu hình Systemd để nhận diện service mới
systemctl enable mtproxy # Bật service để nó tự khởi động cùng VPS
systemctl start mtproxy # Khởi động service ngay lập tức

#TẠO LINK KẾT NỐI TELEGRAM ---
echo -e "\n✅ MTProto Proxy đã được cài đặt và chạy thành công!"
echo "🌐 Tạo link Telegram kết nối Proxy:"

IP=$(curl -s https://api.ipify.org)

# Chú ý: 'ee' là prefix cho secret khi sử dụng TLS obfuscation.
# Bạn có thể chia sẻ các link với các secret khác nhau nếu bạn đã định nghĩa nhiều secret trong config.py
echo "Link kết nối chính (user1):"
echo "tg://proxy?server=$IP&port=443&secret=ee27e9817d9628c00df267c1c60b86358e"
echo ""
echo "Các secret khác có thể dùng:"
echo "Secret user2: eeA0B1C2D3E4F5G6H7I8J9K0L1M2N3O4P5" # (Thêm ee vào đầu secret trong link)
echo "Secret user3: eeQ0R1S2T3U4V5W6X7Y8Z9A0B1C2D3E4F5" # (Thêm ee vào đầu secret trong link)


echo -e "\n🎉 Done! Đã xong tất cả!"
echo "Hãy kiểm tra trạng thái proxy bằng lệnh: sudo systemctl status mtproxy --no-pager"
echo "Kiểm tra CPU usage bằng lệnh: htop"
 
Script bên dưới là ver tối ưu hệ thống + kết nối nhé.

Bash:
#!/bin/bash

# ==================
# SCRIPT TỐI ƯU
# ==================

echo "🛠️ Bắt đầu cài đặt và tối ưu MTProto Proxy..."

apt-get update -y # Cập nhật danh sách gói
apt-get install -y python3 python3-pip git curl # Cài đặt các gói cần thiết: Python, pip, Git, Curl (để lấy IP)

echo -e "\n⚙️ Cài đặt thư viện mã hóa Python (cryptography) và uvloop để tăng tốc độ..."
# 'cryptography' cung cấp các thuật toán mã hóa nhanh hơn so với Python thuần.
# 'uvloop' là một triển khai event loop thay thế nhanh hơn asyncio mặc định của Python.
pip3 install cryptography uvloop || { echo "Lỗi: Không thể cài đặt các thư viện Python. Vui lòng kiểm tra kết nối internet hoặc quyền." ; exit 1; }

echo -e "\n⬇️ Clone mã nguồn mtprotoproxy từ GitHub..."
cd /root || { echo "Lỗi: Không thể chuyển đến thư mục /root. Vui lòng kiểm tra quyền." ; exit 1; }

# Xóa thư mục mtprotoproxy cũ nếu tồn tại để đảm bảo cài đặt sạch.
rm -rf mtprotoproxy

git clone https://github.com/alexbers/mtprotoproxy.git || { echo "Lỗi: Không thể clone repository. Vui lòng kiểm tra kết nối Git." ; exit 1; }

cd mtprotoproxy || { echo "Lỗi: Không thể vào thư mục mtprotoproxy." ; exit 1; }

echo -e "\n📝 Tạo file cấu hình config.py..."
cat <<EOT > config.py
PORT = 443

# Các tài khoản người dùng (secrets). Bạn có thể thêm nhiều secret ở đây.
# Khi chạy nhiều instance, các instance sẽ tự động chia sẻ tải cho các secret này.
# LƯU Ý BẢO MẬT: Secret đang được hardcode. Nên tạo ngẫu nhiên hoặc yêu cầu nhập từ người dùng.
USERS = {
    'user1': '00df26358627e9817d9628c7c1c60b8e',
    'user2': '8j9k0la0b1c2d3e4f5g6h7i1m2n3o4p5', # Thêm secret thứ hai
    'user3': 'x7y8z9q0r1s2t3u4v5w6a0b1c2d3e4f5', # Thêm secret thứ ba
}

# Domain giả mạo cho TLS obfuscation.
# Chọn một domain phổ biến, hợp pháp để ngụy trang lưu lượng truy cập.
FAKE_TLS_DOMAIN = 'www.dantri.vn'
TLS_DOMAIN = 'www.dantri.vn'

# --- CÁC CẤU HÌNH TỐI ƯU HIỆU SUẤT TRONG config.py ---
# BUF_SIZE: Kích thước buffer đọc/ghi. Tăng giá trị này có thể cải thiện tốc độ truyền dữ liệu
# Giá trị mặc định là 64 * 1024. Đặt 256KB hoặc 512KB là phổ biến.
BUF_SIZE = 256 * 1024 # Thử nghiệm với 256KB. Nếu RAM lớn có thể thử 512 * 1024.

# CONN_MIN_TIMEOUT: Thời gian chờ tối thiểu cho một kết nối. Tăng giá trị này
#có thể giúp giữ các kết nối lâu hơn, giảm chi phí thiết lập lại kết nối.
CONN_MIN_TIMEOUT = 300 # Mặc định là 30 giây. Đặt 300 giây (5 phút).
EOT

echo -e "\n🧹 Dọn dẹp các file cache Python cũ..."
find . -name "*.pyc" -delete # Xóa các file bytecode đã biên dịch
find . -name "__pycache__" -type d -exec rm -r {} + # Xóa các thư mục cache

echo -e "\n🚀 Tối ưu hóa cài đặt TCP network stack và giới hạn hệ thống..."
# Các thiết lập này giúp hệ thống xử lý nhiều kết nối đồng thời và tăng thông lượng mạng.
cat <<EOT_SYSCTL >> /etc/sysctl.conf
# Tối ưu hóa TCP Network Stack
net.core.somaxconn = 65536         # Tăng backlog của socket lắng nghe
net.core.netdev_max_backlog = 65536 # Tăng hàng đợi cho thiết bị mạng
net.ipv4.tcp_max_syn_backlog = 65536 # Tăng hàng đợi cho các yêu cầu SYN
net.ipv4.tcp_fin_timeout = 10      # Giảm thời gian chờ FIN-WAIT-2
net.ipv4.tcp_tw_reuse = 1          # Cho phép tái sử dụng các socket TIME-WAIT
net.ipv4.tcp_max_tw_buckets = 2000000 # Tăng số lượng socket TIME-WAIT tối đa
net.ipv4.ip_local_port_range = 1024 65535 # Phạm vi cổng local khả dụng
net.ipv4.tcp_rmem = 4096 87380 67108864 # Kích thước buffer đọc TCP (min, default, max)
net.ipv4.tcp_wmem = 4096 87380 67108864 # Kích thước buffer ghi TCP (min, default, max)
net.ipv4.tcp_mtu_probing = 1       # Kích hoạt tính năng dò tìm MTU
net.ipv4.tcp_congestion_control = bbr # RẤT QUAN TRỌNG: Sử dụng thuật toán điều khiển tắc nghẽn BBR
net.ipv4.tcp_max_orphans = 262144  # Tăng số lượng socket "mồ côi" tối đa
net.ipv4.tcp_mem = 262144 393216 524288 # Tối ưu hóa sử dụng bộ nhớ TCP (min, pressure, max)
EOT_SYSCTL

sysctl -p # Áp dụng ngay lập tức các thay đổi từ sysctl.conf
echo "Sysctl đã được cập nhật và áp dụng."

echo -e "\n📄 Tạo Systemd service file cho MTProto Proxy..."
cat <<EOT > /etc/systemd/system/mtproxy.service
[Unit]
Description=MTProto Proxy by Alexbers - Dantri.vn - Optimized
After=network.target # Đảm bảo mạng đã sẵn sàng trước khi khởi động service

[Service]
# Quan trọng: Type=forking cho phép script khởi chạy nhiều tiến trình con.
Type=forking
WorkingDirectory=/root/mtprotoproxy # Thư mục làm việc của service

# --- SCRIPT WRAPPER ĐỂ CHẠY NHIỀU INSTANCE (TẬN DỤNG MULTI-CORE) ---
# Lệnh ExecStart sẽ gọi một script bash phụ để khởi chạy nhiều tiến trình mtprotoproxy.py
ExecStart=/root/mtprotoproxy/run_multi_instance.sh

Restart=always # Luôn khởi động lại dịch vụ nếu nó dừng hoặc gặp lỗi
# LƯU Ý BẢO MẬT: Chạy với quyền root. Nên thay bằng user không có quyền root (ví dụ User=mtproxy-user)
User=root

# --- Tối ưu giới hạn tài nguyên cho service ---
LimitNOFILE=65536 # Tăng số lượng file descriptor tối đa mà tiến trình có thể mở
                  # Quan trọng khi xử lý nhiều kết nối đồng thời.
# LimitNPROC=65536 # Giới hạn số lượng tiến trình con có thể tạo (có thể thêm nếu cần)

[Install]
WantedBy=multi-user.target # Đảm bảo service được kích hoạt khi hệ thống đạt trạng thái multi-user
EOT

# Cấp quyền thực thi cho script multi-instance
chmod +x /root/mtprotoproxy/run_multi_instance.sh

#TẠO SCRIPT PHỤ ĐỂ CHẠY NHIỀU INSTANCE (run_multi_instance.sh)
echo -e "\n📜 Tạo script run_multi_instance.sh để tận dụng đa nhân CPU..."
cat <<EOT > /root/mtprotoproxy/run_multi_instance.sh
#!/bin/bash

# Phát hiện số lượng CPU cores của VPS
NUM_CORES=\$(nproc)
# Hoặc bạn có thể đặt cứng số lượng instance nếu muốn kiểm soát (ví dụ: NUM_CORES=4)
# NUM_CORES=4

echo "Khởi chạy \$NUM_CORES MTProto Proxy instances..."

# Lặp và chạy từng instance ở chế độ nền
for (( i=1; i<=\$NUM_CORES; i++ )); do
    # Sử dụng 'uvloop' để tối ưu hóa event loop
    /usr/bin/python3 -m uvloop mtprotoproxy.py &
done

# 'wait' lệnh này quan trọng để giữ cho script cha (run_multi_instance.sh) chạy,
# do đó systemd sẽ không nghĩ rằng service đã dừng ngay lập tức.
wait
EOT
chmod +x /root/mtprotoproxy/run_multi_instance.sh

echo -e "\n⚡ Kích hoạt và khởi động MTProto Proxy service..."
systemctl daemon-reload # Tải lại cấu hình Systemd để nhận diện service mới
systemctl enable mtproxy # Bật service để nó tự khởi động cùng VPS
systemctl start mtproxy # Khởi động service ngay lập tức

#TẠO LINK KẾT NỐI TELEGRAM ---
echo -e "\n✅ MTProto Proxy đã được cài đặt và chạy thành công!"
echo "🌐 Tạo link Telegram kết nối Proxy:"

IP=$(curl -s https://api.ipify.org)

# Chú ý: 'ee' là prefix cho secret khi sử dụng TLS obfuscation.
# Bạn có thể chia sẻ các link với các secret khác nhau nếu bạn đã định nghĩa nhiều secret trong config.py
echo "Link kết nối chính (user1):"
echo "tg://proxy?server=$IP&port=443&secret=ee27e9817d9628c00df267c1c60b86358e"
echo ""
echo "Các secret khác có thể dùng:"
echo "Secret user2: eeA0B1C2D3E4F5G6H7I8J9K0L1M2N3O4P5" # (Thêm ee vào đầu secret trong link)
echo "Secret user3: eeQ0R1S2T3U4V5W6X7Y8Z9A0B1C2D3E4F5" # (Thêm ee vào đầu secret trong link)


echo -e "\n🎉 Done! Đã xong tất cả!"
echo "Hãy kiểm tra trạng thái proxy bằng lệnh: sudo systemctl status mtproxy --no-pager"
echo "Kiểm tra CPU usage bằng lệnh: htop"
Này kiếm con vps ngon mới băm đc à bác
 
Này kiếm con vps ngon mới băm đc à bác

Mình hỏi chatgpt o3 thì đây là nó trả lời về script của bác ấy, ko biết có đúng ko
1. Script làm gì?​

Khu vựcViệc script thực hiệnNhận xét nhanh
Cài gói & mã nguồnapt-get Python 3, pip, git, curl → clone alexbers/mtprotoproxyRepo này ngừng cập nhật từ 05 / 2022 github.com
Tạo config.pyHard-code 3 secret, bật Fake-TLS bằng domain www.dantri.vn, tăng BUF_SIZE, CONN_MIN_TIMEOUTSecret, domain và buffer nên nhận từ biến môi trường / tham số thay vì ghi cứng
Tối ưu kernelThêm hàng loạt sysctl (BBR, backlog 65 k, …)Có tác dụng nếu VPS đang dùng kernel ≥ 4.9 + cho phép BBR, nhưng có thể phá các dịch vụ khác nếu cấu hình chưa phù hợp
Systemd & đa tiến trìnhService Type=forking → gọi run_multi_instance.sh sinh N tiến trình = số coreSystemd không có PIDFile, khó stop/ reload; nhiều tiến trình cùng bind 443 yêu cầu SO_REUSEPORT – Python proxy không bật mặc định
Sinh link TelegramDùng curl ipify + prefix ee để in linkOK cho demo nhưng lộ secret ngay trên terminal/-history

2. Ưu điểm​

  • One-shot – copy-paste là chạy; không phải viết từng bước.
  • Tự động khởi động cùng hệ thống, có systemctl quản lý.
  • Tối ưu cơ bản: dùng uvloop, kernel BBR, tăng FD/ backlog → giúp giảm độ trễ trên VPS giá rẻ.
  • Hỗ trợ nhiều secret sẵn, phù hợp chia sẻ cho vài người.

3. Nhược điểm & rủi ro​

Nhóm vấn đềChi tiết
Hiệu năngProxy Python chỉ ~4 000 kết nối đồng thời/ core, trong khi MTProxy C chính thức đạt 10–16 k/ core github.com. Với VPS 1–2 core thì chênh lệch không lớn, nhưng nếu bạn phục vụ kênh/nhóm hàng nghìn user sẽ nghẽn CPU.
Bảo trìDự án Alexbers không còn release mới từ 2022 ➜ chưa chắc tương thích các thay đổi protocol (anti-replay, padding v4, v.v.). Bạn sẽ phải tự vá nếu Telegram thay frame.
Bảo mật* Hard-code secret dễ rò rỉ, log lại trong journalctl.
  • Service chạy root, không chroot, không firewall ➜ nếu proxy bị khai thác bạn mất toàn bộ VPS.
  • Fake-TLS dùng 1 domain cố định → dễ bị chặn bằng SNI-filter hoặc DPI.
Script logic* python3 -m uvloop mtprotoproxy.py không kích hoạt uvloop cho app; phải export UVLOOP=True hoặc sửa code.
  • Không kiểm tra kernel hỗ trợ BBR trước khi echo vào /etc/sysctl.conf.
  • Không rollback nếu một bước lỗi (ví dụ clone repo fail nhưng sysctl vẫn ghi).
Tối ưu “quá tay”BUF_SIZE = 256 kB + CONN_MIN_TIMEOUT = 300 s có thể --› tiêu tốn RAM/ FD cho user “idle”, tăng time-wait socket.
Khả năng bị chặnMTProto proxy công khai thường bị block IP rất nhanh ở các nước/ISP siết chặt (Iran, Nga…). Hướng dẫn an toàn 2025 cũng khuyên “proxy phải thân mật, ít user, thường đổi IP” blog.invitemember.com.

4. Có nên dùng?​

  • Dùng tạm/ cá nhân (< 100 user): OK nếu bạn cần gọn nhẹ, VPS 1 core, chặn tường lửa không gắt, phải lên trong 5 phút.
  • Dùng sản xuất/ kênh lớn/ môi trường dễ bị block: Không khuyến khích. Bạn nên chuyển sang một trong các lựa chọn:
Giải phápLý do đề xuất
MTProxy chính thức (C)telegrammessenger/proxyHiệu năng gấp 2–4 lần proxy Python, code gốc Telegram, có anti-replay & FakeTLS chuẩn.
mtg (Go) của 9secondsNhẹ, self-contained binary, hỗ trợ chain-proxy, block-list, dễ build Docker, doc bảo trì tốt github.com.
Erlang proxy (seriyps/mtproto_proxy)Tốc độ cao, tận dụng BEAM để giữ hàng chục nghìn socket ổn định.
V2Ray / Shadowsocks + MTProto in-appNếu ISP lọc sâu, hãy chạy MTProto phía trong tunnel V2Ray hoặc Trojan để lớp ngoài khó bị phát hiện.
 
Làm sao để add proxy SOCKS5 MTProxy vào các con chat bot đc viết bằng C# các thím nhỉ :(
Thử mấy code trên mạng đều tạch :(
 
Ko rành lắm nhưng đã tạo được 1 cái mtproto dùng docker, oracle free vĩnh viễn vps, thím nào chưa làm hay ngại proxy công cộng thì làm, cũng đơn giản ah, e dùng grok nhé :D
má cái Oracle Cloud Free Tier em tạo mãi mà không được thím ạ. em có thẻ Visa của HSBC.
mặc dù nhạp thông tin tên, địa chỉ giống với thẻ tín dụng.
thao tác trên Edge ẩn danh như trên mạng hướng dẫn... Hồi đó thím tạo sao chỉ em với

Gửi service customer thì nó mail như không mail như hình 2:
1750482404092.png
 

Tệp đính kèm

  • Oracle.png
    Oracle.png
    125,7 KB · Lượt xem: 30
má cái Oracle Cloud Free Tier em tạo mãi mà không được thím ạ. em có thẻ Visa của HSBC.
mặc dù nhạp thông tin tên, địa chỉ giống với thẻ tín dụng.
thao tác trên Edge ẩn danh như trên mạng hướng dẫn... Hồi đó thím tạo sao chỉ em với

Gửi service customer thì nó mail như không mail như hình 2:
Xem tệp đính kèm 3104953
Mình dùng thẻ cake, có lẽ là lý do chăng? Chứ thông tin nhập đúng là dc thôi mà?
 
má cái Oracle Cloud Free Tier em tạo mãi mà không được thím ạ. em có thẻ Visa của HSBC.
mặc dù nhạp thông tin tên, địa chỉ giống với thẻ tín dụng.
thao tác trên Edge ẩn danh như trên mạng hướng dẫn... Hồi đó thím tạo sao chỉ em với

Gửi service customer thì nó mail như không mail như hình 2:
Xem tệp đính kèm 3104953
Kiểm tra lại cái thẻ visa của bạn là thẻ credit hay thẻ debit. Oracle nó chỉ nhận thẻ credit thôi.
 

Thống kê chủ đề

Ngày tạo
Pr0vjp,
Người trả lời cuối
takigami,
Trả lời
585
Lượt xem
104.230
Quay lại
Lên đầu trang