การเปิดตัว outline-ss-server 1.4, การใช้งานพร็อกซี Shadowsocks จากโครงการ Outline

พร็อกซีเซิร์ฟเวอร์ outline-ss-server 1.4 ได้รับการเผยแพร่แล้ว โดยใช้โปรโตคอล Shadowsocks เพื่อซ่อนธรรมชาติของการรับส่งข้อมูล บายพาสไฟร์วอลล์ และระบบตรวจสอบแพ็กเก็ตหลอก เซิร์ฟเวอร์กำลังได้รับการพัฒนาโดยโครงการ Outline ซึ่งมีการรวมแอปพลิเคชันไคลเอ็นต์และอินเทอร์เฟซการควบคุมเพิ่มเติมที่ช่วยให้คุณปรับใช้เซิร์ฟเวอร์ Shadowsocks แบบผู้ใช้หลายคนบนเซิร์ฟเวอร์ outline-ss-server ในสภาพแวดล้อมคลาวด์สาธารณะหรือในอุปกรณ์ของคุณเองได้อย่างรวดเร็ว จัดการผ่านเว็บอินเตอร์เฟสและจัดระเบียบการเข้าถึงของผู้ใช้ด้วยปุ่ม รหัสนี้ได้รับการพัฒนาและดูแลโดย Jigsaw ซึ่งเป็นหน่วยงานภายใน Google ที่สร้างขึ้นเพื่อพัฒนาเครื่องมือสำหรับการหลบเลี่ยงการเซ็นเซอร์และจัดระเบียบการแลกเปลี่ยนข้อมูลอย่างเสรี

Outline-ss-server เขียนด้วย Go และเผยแพร่ภายใต้ใบอนุญาต Apache 2.0 โค้ดเซิร์ฟเวอร์พร็อกซี go-shadowsocks2 ซึ่งสร้างโดยชุมชนนักพัฒนา Shadowsocks ใช้เป็นพื้นฐาน เมื่อเร็ว ๆ นี้ กิจกรรมหลักของโครงการ Shadowsocks มุ่งเน้นไปที่การพัฒนาเซิร์ฟเวอร์ใหม่ในภาษา Rust และการใช้งาน Go ไม่ได้รับการอัปเดตมานานกว่าหนึ่งปี และล้าหลังอย่างเห็นได้ชัดในการทำงาน

ความแตกต่างระหว่าง outline-ss-server และ go-shadowsocks2 ลงมาที่การรองรับการเชื่อมต่อผู้ใช้หลายคนผ่านพอร์ตเครือข่ายเดียว ความสามารถในการเปิดพอร์ตเครือข่ายหลายพอร์ตเพื่อรับการเชื่อมต่อ การสนับสนุนการรีสตาร์ทแบบด่วนและการอัปเดตการกำหนดค่าโดยไม่ทำลายการเชื่อมต่อ การตรวจสอบในตัว และเครื่องมือแก้ไขทราฟฟิกบนแพลตฟอร์ม prometheus .io

การเปิดตัว outline-ss-server 1.4, การใช้งานพร็อกซี Shadowsocks จากโครงการ Outline

outline-ss-server ยังเพิ่มการป้องกันคำขอโพรบและการโจมตีทราฟฟิกซ้ำ การโจมตีผ่านคำขอการตรวจสอบมีวัตถุประสงค์เพื่อตรวจสอบการมีอยู่ของพร็อกซี ตัวอย่างเช่น ผู้โจมตีสามารถส่งชุดข้อมูลขนาดต่างๆ ไปยังเซิร์ฟเวอร์ Shadowsocks เป้าหมาย และวิเคราะห์ว่าเซิร์ฟเวอร์จะอ่านข้อมูลมากน้อยเพียงใดก่อนที่จะระบุข้อผิดพลาดและปิดการเชื่อมต่อ การโจมตีซ้ำจะขึ้นอยู่กับการไฮแจ็กเซสชันระหว่างไคลเอ็นต์และเซิร์ฟเวอร์ จากนั้นพยายามส่งข้อมูลที่ถูกไฮแจ็กอีกครั้งเพื่อตรวจสอบว่ามีพร็อกซีอยู่หรือไม่

เพื่อป้องกันการโจมตีผ่านคำขอการยืนยัน เซิร์ฟเวอร์ outline-ss-server เมื่อข้อมูลที่ไม่ถูกต้องมาถึง จะไม่ยุติการเชื่อมต่อและไม่แสดงข้อผิดพลาด แต่ยังคงรับข้อมูลต่อไป โดยทำหน้าที่เป็นเหมือนหลุมดำ เพื่อป้องกันการเล่นซ้ำ ข้อมูลที่ได้รับจากไคลเอนต์จะถูกตรวจสอบเพิ่มเติมสำหรับการทำซ้ำโดยเช็คซัมที่เก็บไว้สำหรับลำดับการจับมือไม่กี่พันครั้งล่าสุด (สูงสุด 40 ขนาดถูกกำหนดเมื่อเริ่มต้นเซิร์ฟเวอร์และใช้หน่วยความจำ 20 ไบต์ต่อลำดับ) หากต้องการบล็อกการตอบสนองซ้ำๆ จากเซิร์ฟเวอร์ ลำดับการจับมือกันของเซิร์ฟเวอร์ทั้งหมดจะใช้รหัสการตรวจสอบสิทธิ์ HMAC พร้อมแท็ก 32 บิต

ในแง่ของระดับการซ่อนการรับส่งข้อมูล โปรโตคอล Shadowsocks ในการใช้งาน outline-ss-server นั้นใกล้เคียงกับ Obfs4 pluggable transport ในเครือข่าย Tor ที่ไม่ระบุตัวตน โปรโตคอลถูกสร้างขึ้นเพื่อหลีกเลี่ยงระบบการเซ็นเซอร์ทราฟฟิกของจีน ("ไฟร์วอลล์แห่งประเทศจีน") และช่วยให้คุณสามารถซ่อนทราฟฟิกที่ส่งต่อผ่านเซิร์ฟเวอร์อื่นได้อย่างมีประสิทธิภาพ (ทราฟฟิกเป็นปัญหาในการระบุเนื่องจากการแนบเมล็ดสุ่มและจำลองสตรีมต่อเนื่อง)

SOCKS5 ใช้เป็นโปรโตคอลสำหรับคำขอพร็อกซี - พร็อกซีที่รองรับ SOCKS5 จะถูกเปิดใช้งานบนระบบโลคัล ซึ่งจะส่งสัญญาณทราฟฟิกไปยังเซิร์ฟเวอร์ระยะไกลซึ่งคำขอจะถูกดำเนินการจริง การรับส่งข้อมูลระหว่างไคลเอนต์และเซิร์ฟเวอร์นั้นอยู่ในอุโมงค์เข้ารหัส (รองรับการเข้ารหัส AEAD_CHACHA20_POLY1305, AEAD_AES_128_GCM และ AEAD_AES_256_GCM) ที่ซ่อนความจริงของการสร้างซึ่งเป็นงานหลักของ Shadowsocks รองรับ TCP และ UDP Tunneling รวมถึงการสร้าง Tunnel ตามอำเภอใจ ไม่จำกัดเพียง SOCKS5 ผ่านการใช้ปลั๊กอิน ชวนให้นึกถึงการขนส่งที่เสียบปลั๊กได้ใน Tor

ที่มา: opennet.ru

เพิ่มความคิดเห็น