Tags:
Node Thumbnail

แอปแชต Telegram มีชื่อเสียงขึ้นมาได้ส่วนหนึ่งจากการต่อสู้กับการบล็อคโดยทางการรัสเซียอยู่ถึงสองปีจนกระทั่งรัสเซียยุติการบล็อคไปในที่สุด และระหว่างช่วงที่ถูกบล็อคอัตราการใช้งาน Telegram ก็ไม่ได้ลดลงแต่อย่างใด

แม้ว่า Telegram จะไม่ใช่โปรแกรมวิเศษที่สามารถหลบเลี่ยงการบล็อคได้เหนือว่าโปรแกรมอื่นๆ แต่ก็เป็นแอปแชตที่มีแนวทางสนับสนุนการหลบเลี่ยงการบล็อคไว้หลากหลาย จากปกติที่ผู้ใช้ต้องอาศัย VPN ในการหลบเลี่ยงการบล็อค ซึ่งหาก VPN มีความเร็วในการเชื่อมต่อไม่ดี โดยเฉพาะหากต้องการใช้บริการในประเทศ ก็จะทำให้การใช้งานโทรศัพท์โดยรวมแย่ลง แต่ Telegram รองรับการ "มุดท่อ" ของตัวเองอีกสองช่องทาง คือ SOCKS5 proxy และ MT Proto Proxy ระบบพรอกซี่แบบพิเศษที่เปิดให้คนที่เข้ามาเชื่อมต่อใช้งาน Telegram ได้อย่างเดียว

SOCKS5 proxy นั้นสามารถสร้างได้โดยง่าย ที่สำคัญคือ ssh (secure shell) รองรับการทำ SOCKS5 proxy หากเราติดตั้ง ssh client บนเครื่องของเราเองแล้วเชื่อมต่อไปยังเซิร์ฟเวอร์ด้วยออปชั่น -D[หมายเลขพอร์ต] ก็จะได้ SOCKS proxy บนเครื่องของเราเองที่ทราฟิกจะมุดไปออกที่เซิร์ฟเวอร์ได้แล้ว ที่จริงแล้วเบราว์เซอร์ต่างๆ ก็มักรองรับ SOCKS5 กันทำให้มันเป็นตัวเลือกหนึ่งในการสร้างท่อหลบเลี่ยงการบล็อคเป็นรายแอป การใช้งานได้หลากหลายเช่นนี้แม้จะเป็นข้อดีแต่ก็อาจจะมองเป็นข้อเสียที่เราคงไม่ต้องการแชร์ SOCKS5 proxy กับคนอื่นนัก เพราะเขาอาจจะนำ proxy ไปใช้งานอะไรก็ได้

MT Proto Proxy (MTProxy) หรือ Telegram Proxy เป็นพรอกซี่เฉพาะสำหรับการเชื่อมต่อ Telegram เท่านั้น ทำให้คนจำนวนมากสะดวกใจที่จะติดตั้ง MTProxy แล้วแบ่งปันให้คนอื่นใช้งาน โดยทาง Telegram ปล่อย MTProxy ออกมาในเดือนพฤษภาคม 2018 หลังทางการรัสเซียสั่งบล็อค Telegram ไม่นานนัก หลังจากนั้นมีโครงการอื่นๆ อิมพลีเมนต์ Telegram Proxy ออกมาจำนวนมาก เช่น

  • mtprotoproxy โครงการภาษา Python 3
  • mtproto_proxy โครงการภาษา Erlang
  • mtg โครงการภาษา Go

Telegram Proxy มีฟีเจอร์สำหรับหลบเลี่ยงการตรวจสอบหลายประการ ได้แก่

  • โปรแกรมทั้งหมดนิยมรันบนพอร์ต 443 ให้เหมือนเป็นเว็บเซิร์ฟเวอร์
  • รหัสผ่าน (secret) สำหรับยืนยันว่าคนที่กำลังเชื่อมต่อรู้ว่ากำลังเชื่อมต่อกับ Telegram Proxy จริงๆ หากรหัสผ่านผิด หลายโครงการมีฟีเจอร์ส่งหน้าเว็บหลอกๆ ไปแทนเรียกว่า FakeTLS (ซ่อนใบไม้ต้องซ่อนในป่า)
  • ตัวไคลเอนต์ Telegram มีความสามารถในการเติมข้อมูล (padding) เพื่อให้ตรวจสอบจากขนาดแพ็กเก็ตได้ยากว่าเป็นการเชื่อมต่อ Telegram

การติดตั้ง Telegram Proxy

MTProxy ของ Telegram เองไม่มีแจกเป็นไบนารีแต่แจกเป็นอิมเมจ Docker แทน หากเซิร์ฟเวอร์เพิ่งเปิดมาใหม่อาจจะต้องติดตั้ง docker ก่อน ด้วยคำสั่ง sudo apt install docker.io (สำหรับ Ubuntu) จากนั้นเราสามารถรันอิมเมจด้วยคำสั่ง

docker run -d -p443:443 --name=mtproto-proxy --restart=always -v proxy-config:/data telegrammessenger/proxy:latest

และเปิดดูข้อมูลคอนฟิกด้วยคำสั่ง docker logs mtproto-proxy จะเห็นข้อมูลใกล้เคียงคามนี้

####
#### Telegram Proxy
####

[+] No secret passed. Will generate 1 random ones.
[*] Final configuration:
[*] Secret 1: af7160d1f251268c9c89eca69c555dcd
[*] tg:// link for secret 1 auto configuration: tg://proxy?server=128.199.157.252&port=443&secret=af7160d1f251268c9c89eca69c555dcd
[*] t.me link for secret 1: https://t.me/proxy?server=128.199.157.252&port=443&secret=af7160d1f251268c9c89eca69c555dcd
[*] Tag: no tag
[*] External IP: 128.199.157.252
[*] Make sure to fix the links in case you run the proxy on a different port.

[+] Starting proxy...

สังเกตว่าเราจะได้ URL มาสองแบบได้แก่

  • tg://proxy?server=128.199.157.252&port=443&secret=af7160d1f251268c9c89eca69c555dcd สำหรับส่งทางแชต Telegram เอง
  • https://t.me/proxy?server=128.199.157.252&port=443&secret=af7160d1f251268c9c89eca69c555dcd สำหรับส่งช่องทางอื่นๆ

เมื่อผู้ใช้คลิกลิงก์นี้ ตัวแอป Telegram จะแสดงข้อมูลและถามว่าต้องการเชื่อมต่อกับพรอกซี่นี้หรือไม่ เพียงแค่กดเชื่อมต่อก็ใช้งานต่อไปได้ทันที

No Description

ภาพหน้าจอยืนยันเชื่อมต่อพรอกซี่หลังกดลิงก์

No Description

หน้าจอรายการพรอกซี่ที่ใช้งานอยู่

Telegram เองมีโครงสร้างรองรับการวางพรอกซี่หลายอย่าง โดยเฉพาะ API สำหรับการดึงไอพีที่ใช้เชื่อมต่อ เฉพาะไอพีที่ทาง Telegram เปิดเผยผ่าน API ก็มีนับ 10 ไอพี ไม่ใช่เพียงแค่ 4 ไอพีอย่างที่มีความพยายามบล็อค แม้ตอนนี้กระบวนการบล็อคยังไม่เป็นผลนักแต่หากมีความพยายามมากกว่านี้ก็จะทำให้เราเชื่อมต่อไม่ได้บางช่วงจนกว่าทาง Telegram หลบหลีกไอพีให้ กลายเป็นเกมแมวจับหนูระหว่างรัฐบาลกับ Telegram การใช้พรอกซี่จึงน่าจะเป็นทางออกที่ดีกว่าในระยะยาวเพื่อการเชื่อมต่ออย่างต่อเนื่องต่อไป

ส่งท้าย เซิร์ฟเวอร์, รหัสผ่าน, และ URL ทั้งหมดในบทความนี้ไม่สามารถใช้งานได้แล้ว

Get latest news from Blognone

Comments

By: freeriod on 23 October 2020 - 04:11 #1182094
freeriod's picture

น่าไปสู้จีนดู

By: lew
FounderJusci's WriterMEconomicsAndroid
on 23 October 2020 - 14:44 #1182144 Reply to:1182094
lew's picture

เข้าใจว่ามุดออกมาได้นะครับ แต่ปัญหาคือหาแอปโหลดยาก และชุมชนในการแชร์ URL ของ proxy ไม่เข้มแข็งเหมือนรัสเซีย


lewcpe.com, @wasonliw

By: Sephanov
iPhoneUbuntu
on 23 October 2020 - 07:27 #1182096
Sephanov's picture

ใน Telegram มีทีม Volunteer support ครับ แค่แจ้งไปแป็บเดียว เค้าก็ตอบกลับแล้ว คราวก่อนก็ลองแชทไปคุยเรื่องที่รบ.จะบล็อค IP เค้าบอกต้องไม่ซีเรียส ขอแค่เราเช็ค connection จาก ลิ้งค์ที่เค้าส่งมาให้เทส ถ้ามีปัญหาเดี๋ยวทีมแก้ให้แป๊บเดียว

อุปส์ พูดมากไปรึเปล่านะ...

By: whitebigbird
Contributor
on 23 October 2020 - 09:30 #1182109 Reply to:1182096
whitebigbird's picture

ต้องไม่ซีเรียส หรือ ไม่ต้องซีเรียสนะครับ?

By: Sephanov
iPhoneUbuntu
on 23 October 2020 - 09:48 #1182114 Reply to:1182109
Sephanov's picture

“ไม่ต้องซีเรียส” ครับ พิมพ์ไวไปนิด ?

By: langisser
In Love
on 23 October 2020 - 15:39 #1182148

ผมงงกับหัวข้อ “ ถ้าเขาจะบล็ค หลบได้เขาก็บล็อค” มีใครใจดีช้วยขยายความให้ผมหน่อยได้มั้ยครับ

By: nanana
Windows PhoneAndroidUbuntu
on 23 October 2020 - 20:32 #1182163 Reply to:1182148

มาจากเพลงนี้ครับ
ถ้าเขาจะรัก (ยืนเฉยๆเขาก็รัก)
https://www.youtube.com/watch?v=_67mg_mOaJM

By: langisser
In Love
on 24 October 2020 - 11:19 #1182207 Reply to:1182163

ขอบคุณครับ ผมพลาดเองสินะ