Menyebarkan Telegram MTProxy Anda dengan statistik

Menyebarkan Telegram MTProxy Anda dengan statistik

"Saya mewarisi kekacauan ini,
dimulai dengan Zello yang tak tahu malu; LinkedIn
dan diakhiri dengan "semua orang" di platform Telegram
dalam duniaku.

Dan kemudian cegukan,
Pejabat itu menambahkan dengan tergesa-gesa dan keras:
tapi saya akan membereskan semuanya (di sini di IT)"
(...).

Durov, dengan tepat percaya bahwa negara otoriterlah yang harus ditakuti olehnya, seorang cypherpunk, dan Roskomnadzor serta perisai emas dengan filter DPI mereka tidak terlalu mengganggunya.
(Teknik politik)

Kebijakan teknis saya lebih sederhana, saya dapat menjelaskan di sini pemikiran saya tentang pemblokiran yang ceroboh di Runet, tetapi saya percaya bahwa warga progresif pengguna Rusia Modern dan Habr telah merasakan ketidakprofesionalan pemerintah saat ini di kulit mereka sendiri, jadi saya akan membatasi diri pada satu frase: kebijakan teknis kami adalah "Digital Resistance". "menyediakan kerabat dan teman dengan saluran komunikasi yang stabil."

Menyebarkan MTProto proxy Telegram

  • Tingkat kerumitan teknisnya "mudah", jika, misalnya, Anda mengikuti lembar contekan ini.
  • Tingkat keandalannya "di atas rata-rata": gambar buruh pelabuhan bekerja dengan stabil, tidak perlu dimulai ulang setiap hari, seperti yang ditulis pengembang dalam dokumentasi resmi Telegram mereka, tetapi wadah tersebut mungkin mengandung beberapa kerentanan.
  • Tingkat resistensi/kecemasan - 10 anggota ISIS menenun konspirasi "penggunaan kerabat", larangan tidak datang dari RKN sekali pun sepanjang waktu (sejak musim semi).
  • Tingkat kepercayaan adalah "ketidakpercayaan bayi publik", masalah di sisi klien (beberapa teman mencurigai MtprotoProxy saya).
  • Tingkat testosteron - "tidak menjadi lebih tinggi."
  • Biaya keuangan - "0₽".
  • Hadiah finansial - "tidak bergantung pada warga negara Durov." Promosi - kemampuan untuk memaksakan iklan.

Kami akan meningkatkan TelegramProxy kami pada kapasitas "bebas / pribadi" Amazon-ec2: t2.micro. saya menggunakan ini mobil.

Oke, gunakan server gratis Anda, buka situs web resminya dockerhub dan unduh wadah buruh pelabuhan.

Tidak perlu mencari gambar, file, atau tombol ajaib - "mereka tidak ada", semua keajaiban dilakukan di CLI:

$ docker pull telegrammessenger/proxy #образ скачан.

Tetapi sebelum "itu", instal buruh pelabuhan untuk CLI:

sudo apt-get install docker.io docker

Selanjutnya, dalam dokumentasi resmi MtprotoProxyTelegram, kami ditawari untuk melakukan sesuatu seperti berikut ini, kami melakukannya:

$ sudo su && docker run -d -p443:443 --name=mtproto-proxy --restart=always -v proxy-config:/data telegrammessenger/proxy:latest #запускаем наш контейнер «mtproto-proxy».

Setelah perintah ini, string HEX akan muncul di keluaran terminal, tetapi kami tidak tertarik padanya.

Kami menulis di CLI:

$ docker logs mtproto-proxy

Dan kami mendapatkan data yang diperlukan:

Menyebarkan Telegram MTProxy Anda dengan statistik
Dalam keluaran log ini, kami diperlihatkan (dioleskan):

A) ip server kami (ip server eksternal);
B) dan rahasia acak - string acak di HEX.

Sebelum mendaftarkan MtproProxy kami, Anda perlu mengonfigurasi firewall utama melalui iptables (tidak peduli bagaimana Anda mengarahkan lalu lintas ke VPC ini, itu akan menjadi nakal, karena firewall utama di Amazon-EC2 terletak di antarmuka web dan memiliki prioritas lebih tinggi daripada iptables ).

Kita pergi ke "menghibur Amazon-EC2" di Grup Keamanan dan buka port masuk 443 (masking logis lalu lintas untuk pertama kalinya).

Menyebarkan Telegram MTProxy Anda dengan statistik

Kami mengambil data "ip dan rahasia" kami dari log dan pergi ke Telegram messenger, temukan Bot Admin MTProxy resmi (@MTProxybot) dan daftarkan MtproProxy kami: jalankan perintah [/newproxy] dan masukkan [our_ip:443], dan lalu [rahasia /HEX] kami.

Jika Anda mengacaukan saat memasukkan data, bot akan marah dan mengirim Anda ke ...

Jika Anda mengisi dua baris tanpa kesalahan, Anda akan menerima persetujuan dan tautan yang berfungsi ke MtprotoProxyTelegram Anda saat ini, yang dapat Anda bagikan dengan siapa saja.

Menyebarkan Telegram MTProxy Anda dengan statistik

Selain itu, melalui bot ini, Anda dapat menambahkan saluran sponsor Anda (tetapi bukan obrolan), di mana Anda akan memaksakan pandangan Anda pada pengguna yang telah terhubung ke server Anda, atau Anda tidak dapat melakukan "spam" dan tidak mengganggu calon pelanggan Anda tanpa menampilkan saluran dalam daftar messenger yang disematkan.

Beberapa kata lagi tentang bot, di mana Anda dapat meminta statistik, tetapi "juga donat". Rupanya, "statistik" tersedia saat Anda memiliki "kerumunan freeloader" di belakang Anda Makhachkala.

Pemantauan

Berapa banyak pengguna yang dapat kami sambungkan ke server kami? Lagi pula, siapa / apa yang ada? Apa? Dan berapa banyak?

Kami melihat apa yang ada menurut dokumentasi resmi ... Ya, ini, lakukan seperti ini:

$ curl http://localhost:2398/stats или вот так $ docker exec mtproto-proxy curl http://localhost:2398/stats # и нам выдадут статистику прямо в CLI.

"Buat saku Anda lebih lebar" Menurut perintah yang diusulkan, kami akan selalu menerima kesalahan serupa:

«curl: (7) Gagal terhubung ke port localhost 2398: Koneksi ditolak»

Proksi kami akan berfungsi. Tetapi! Bagel, bukan statistik yang kami dapatkan.

Anda dapat melakukan hal-hal untuk mata merah: periksa

$ netstat -an | grep 2398 и...

Awalnya saya mengira ini adalah kusen lain di belakang pengembang Telegram (dan saya masih berpikir demikian), kemudian saya menemukan solusi sementara yang bagus: poles Docker Container dengan file.

Belakangan, sebuah INFA menarik perhatian saya:

tentang tarian negara bagian Roskomnadzor seputar "statistik".

“Kami telah memblokir beberapa proxy publik di server kami menggunakan database proyek firehol. Proyek ini memantau daftar dengan proxy publik dan membuat database dengannya.

Sejak saat itu (sudah hampir dua hari), tidak ada satu pun alamat IP dari proxy Rusia kami yang diblokir.

3. Kami memberi tahu Anda cara membuat proxy yang hampir kebal ke Roskomnadzor dan membagikan skrip untuk memblokir proxy publik.

- Perbarui wadah buruh pelabuhan proxy MTProto (atau daemon) ke versi terbaru: RKN menghitung versi lama dengan port statistik, yang terikat ke 0.0.0.0 dan secara unik mengidentifikasi dirinya sendiri untuk seluruh Internet. Lebih baik lagi, buka port yang diperlukan menggunakan iptables, dan tutup sisanya (ingat bahwa dalam kasus docker container, Anda harus menggunakan aturan FORWARD).

— Roskomnadzor mempelajari cara membuang lalu lintas sejak lama: mereka melihat permintaan di dalam proxy HTTP dan SOCKS5, dan mereka juga melihat versi lama kebingungan proxy MTProto.

Ketika klien dari beberapa penyedia yang menginstal dump tersebut mengakses Telegram melalui proxy tersebut, RKN melihat permintaan tersebut dan segera memblokir proxy tersebut. Hal yang sama berlaku untuk proksi MTProto dengan kebingungan lama.

Solusi: bagikan rahasia hanya dengan dd di awal ke klien yang terhubung ke proxy (tidak perlu menentukan huruf tambahan dd di pengaturan proxy mtproto itu sendiri). Ini akan mengaktifkan versi kebingungan yang tidak dapat dideteksi oleh dumppile.

Dan tidak ada proxy HTTP atau SOCKS5.

- Penyesuaian, yang dengannya setiap pemilik proxy telegram, yang secara teratur dilarang oleh RKN, dapat sepenuhnya (atau hampir seluruhnya) menghentikan pemblokiran (dan pada saat yang sama memastikan bahwa RKN berbohong).

Skrip yang melarang proxy publik dan manual kecil untuk itu.

Источник

Proksi kami pro-Barat, saya tidak menemui masalah / penyumbatan selama musim semi dan musim panas yang sejuk, itu juga tidak menarik tugas kreatif, jadi saya tidak kehilangan kecepatan dan tidak menambahkan awalan dd* ke kunci.

Manual "mendapatkan statistik/pemantauan" menurut instruksi resmi MtprotoProxyTelegram tidak berfungsi/ketinggalan jaman, Anda harus memperbaiki citra buruh pelabuhan.

Kami memperbaikinya.

Penampung masih berjalan:

$ docker stop mtproto-proxy #останавливаем наш запущенный docker-контейнер и запускаем новый образ с пропущенным флагом статистики

$ docker run --net=host --name=mtproto-proxy2 -d -p443:443 -v proxy-config:/data -e SECRET=ваш_предыдущий_секрет_hex telegrammessenger/proxy:latest

Mari kita periksa statistiknya:

$ curl http://localhost:2398/stats

curl: (7) Gagal terhubung ke port 0.0.0.0 2398: Koneksi ditolak
Statistik masih belum tersedia.!..

Cari tahu ID wadah buruh pelabuhan:

$ docker ps

CONTAINER ID IMAGE COMMAND DIBUAT NAMA PORT STATUS
f423c209cfdc telegrammessenger/proxy:latest "/bin/sh -c '/bin/ba…" Sekitar satu jam yang lalu Naik Sekitar satu menit 0.0.0.0:443->443/tcp mtproto-proxy2

Kami pergi dengan piagam kami di dalam wadah buruh pelabuhan:

$ sudo docker exec -it f423c209cfdc /bin/bash

$ apt-get update
$ apt-get install nano
$ nano -$ run.sh

Dan di baris terakhir skrip "run.sh", tambahkan flag yang hilang:

«--http-statistik»
"exec /usr/local/bin/mtproto-proxy -p 2398 -H 443 -M "$WORKERS" -C 60000 --aes-pwd /etc/telegram/hello-explorers-how-are-you-doing -u root $CONFIG --allow-skip-d h --nat-info "$INTERNAL_IP:$IP" $SECRET_CMD $TAG_CMD"

Tambahkan "--http-stats", sesuatu seperti ini seharusnya berfungsi:

«exec /usr/local/bin/mtproto-proxy -p 2398 --http-stats -H 443 -M "$WORKERS" -C 60000 --aes-pwd /etc/telegram/hello-explorers-how-are-you-doing -u root $CONFIG --allow-skip-d h --nat-info "$INTERNAL_IP:$IP" $SECRET_CMD $TAG_CMD»

Ctrl+o/Ctrl+x/Ctrl+d (simpan/keluar dari nano/keluar wadah).

Mulai ulang wadah buruh pelabuhan kami:

$ docker restart mtproto-proxy2

Semuanya, sekarang atas perintah:

$ curl http://localhost:2398/stats #получаем объемную статистику

Menyebarkan Telegram MTProxy Anda dengan statistik
Ada banyak "sampah" di statistik (1/3 di layar), buat alias:

$ echo "alias telega='curl localhost:2398/stats | grep -e total_special -e load_average_total'" >> .bashrc && bash

Kami mendapatkan wadah buruh pelabuhan yang dipoles untuk: jumlah koneksi dan beban:

$ telega

Menyebarkan Telegram MTProxy Anda dengan statistik
Wadah Docker sedang berjalan, statistiknya berputar.

Sumber daya dihabiskan

Sekeren kamu Stuart Redman, bahkan kamu meninggalkan bekas di celana dalammu. Gambar Docker yang sedang berjalan meninggalkan jejak yang besar.

Tidak masuk akal untuk menjelaskan keuntungan dan kerugian dari gambar buruh pelabuhan, wadah buruh pelabuhan adalah mesin mini-virtual yang mengkonsumsi lebih sedikit sumber daya daripada mesin virtual "nyata", seperti VirtualBox, tetapi memang demikian.

1) Diluncurkan dengan atau tanpa statistik docker-image, dua klien bermain-main atau sepuluh - sumber daya digunakan ~ dengan cara yang sama: 75% dari seluruh kinerja t2.micro CPU.

2) Kami melihat pemantauan server VPC:

Menyebarkan Telegram MTProxy Anda dengan statistik

Dari grafik pemanfaatan sumber daya di VPC, kami melihat bahwa wadah buruh pelabuhan terus-menerus mengonsumsi ~ 7,5% dari total maks. Performa CPU dan pada 28 Mei dihentikan oleh saya secara sengaja/sementara (Catatan - OpenVPN & pptp juga berjalan di server).

Mengapa penggunaan CPU konstan 10% adalah batas untuk server ini?

Karena ada batasan dari Amazon EC2 dan dihitung dalam kredit:

Menyebarkan Telegram MTProxy Anda dengan statistik

1 kredit CPU = 1 CPU bekerja pada beban 100% selama satu menit, dan kami memiliki 6 kredit (yaitu, pada puncaknya, penggunaan CPU 100% dimungkinkan dalam 6 menit, dan kemudian daya CPU akan berkurang). Kombinasi lain: misalnya, 1 kredit CPU = 1 CPU berjalan pada beban 50% selama dua menit (yaitu kita dapat menggunakan CPU pada beban 50% selama 12 menit), atau, misalnya, beban CPU konstan 10%- th selama sepanjang waktu, dll.

Temuan

  • Kami adalah bagian dari "Perlawanan Digital". Memberi "ayah dan ibu" mereka saluran komunikasi yang andal.
  • Jika Anda memiliki MtprotoProxyTelegram dan OpenVPN yang diterapkan di server, tetapi tidak lebih, tidak akan ada penundaan / ping / kegagalan, tetapi jika Anda terus bereksperimen dengan t2 / mikro, maka tunggu rem komunikasi.
  • Ping luar negeri saya ~100-250ms, tidak ada penundaan dalam komunikasi suara.
  • Biaya keuangan untuk semua "ini" (termasuk sumber daya VPC) = 0₽.

Cetak ulang artikel Anda.

UPD: Terima kasih kepada beberapa habrauser untuk komentar yang berguna, memang, itu mungkin (apakah statistiknya didukung?), Ada analog yang lebih baik dari gambar buruh pelabuhan Telegram proksi Mtproto resmi.

Sumber: www.habr.com

Tambah komentar