22 คะแนน โดย xguru 2024-03-10 | 4 ความคิดเห็น | แชร์ทาง WhatsApp
  • OpenGFW เป็นโอเพนซอร์สสำหรับลินุกซ์ที่ให้ผู้ใช้สร้าง Great Firewall of China แบบของตัวเองได้
  • "ตอนนี้ไม่จำเป็นต้องมีแค่ผู้มีอำนาจเท่านั้นที่ได้สนุกอีกต่อไป ถึงเวลาที่จะทำให้การเซ็นเซอร์เป็นสิ่งที่ใครก็ทำได้ และมอบอำนาจให้ผู้คน"
  • สามารถเริ่มทำฟิลเตอร์บนเราเตอร์ที่บ้านได้แบบมืออาชีพ และลองสวมบท Big Brother ได้
  • ข้อควรระวัง: โปรเจกต์นี้ยังอยู่ในช่วงเริ่มต้นของการพัฒนา และควรใช้งานด้วยความรับผิดชอบของผู้ใช้เอง

ฟีเจอร์

  • รองรับการประกอบกลับแบบเต็มสำหรับ IP/TCP, ตัววิเคราะห์โปรโตคอลหลากหลายชนิด (HTTP, TLS, QUIC, DNS, SSH, SOCKS4/5, WireGuard เป็นต้น)
  • ความสามารถในการตรวจจับ "ทราฟฟิกที่เข้ารหัสอย่างสมบูรณ์" เช่น Shadowsocks
  • ความสามารถในการตรวจจับ Trojan (โปรโตคอลพร็อกซี) ที่อิงจาก Trojan-killer
  • [กำลังพัฒนา] การจัดประเภททราฟฟิกด้วยแมชชีนเลิร์นนิง
  • รองรับ IPv4 และ IPv6 แบบเต็มรูปแบบ
  • การกระจายโหลดแบบมัลติคอร์ตามโฟลว์
  • การ offload การเชื่อมต่อ
  • เอนจินกฎที่ทรงพลังบนพื้นฐานของ expr
  • กฎที่ hot-reload ได้ (รีโหลดด้วยสัญญาณ SIGHUP)
  • เฟรมเวิร์กตัววิเคราะห์และตัวแก้ไขที่ยืดหยุ่น
  • การใช้งาน IO ที่ขยายได้ (รองรับเฉพาะ NFQueue)
  • [กำลังพัฒนา] เว็บ UI

กรณีใช้งาน

  • บล็อกโฆษณา
  • การควบคุมบุตรหลานโดยผู้ปกครอง
  • การป้องกันมัลแวร์
  • ป้องกันการนำบริการ VPN/พร็อกซีไปใช้ในทางที่ผิด
  • วิเคราะห์ทราฟฟิก (โหมดบันทึกล็อกเท่านั้น)
  • ช่วยให้คุณเติมเต็มความทะเยอทะยานแบบเผด็จการ (Help you fulfill your dictatorial ambitions)

วิธีใช้งาน

บิลด์

  go build  

รัน

  export OPENGFW_LOG_LEVEL=debug  
  ./OpenGFW -c config.yaml rules.yaml  

OpenWrt

  • มีการทดสอบแล้วว่า OpenGFW ทำงานบน OpenWrt 23.05 ได้ และคาดว่าน่าจะทำงานได้บนเวอร์ชันอื่นด้วย แต่ยังไม่ได้ยืนยัน
  • ติดตั้ง dependency:
    opkg install kmod-nft-queue kmod-nf-conntrack-netlink

ตัวอย่างการตั้งค่า

  • ตั้งค่าเส้นทางสำหรับโหลดไฟล์ฐานข้อมูล geoip/geosite ภายในเครื่อง
  • หากไม่ตั้งค่า ระบบจะดาวน์โหลดจาก https://github.com/Loyalsoldier/v2ray-rules-dat โดยอัตโนมัติ

การกระทำที่รองรับ

  • allow: อนุญาตการเชื่อมต่อ โดยไม่มีการประมวลผลเพิ่มเติม
  • block: บล็อกการเชื่อมต่อ โดยไม่มีการประมวลผลเพิ่มเติม
  • drop: สำหรับ UDP จะทิ้งแพ็กเก็ตที่ทำให้กฎถูกทริกเกอร์ และประมวลผลแพ็กเก็ตในอนาคตของโฟลว์เดียวกันต่อไป สำหรับ TCP จะเหมือนกับ block
  • modify: สำหรับ UDP จะแก้ไขแพ็กเก็ตที่ทำให้กฎถูกทริกเกอร์ด้วยตัวแก้ไขที่กำหนด และประมวลผลแพ็กเก็ตในอนาคตของโฟลว์เดียวกันต่อไป สำหรับ TCP จะเหมือนกับ allow

4 ความคิดเห็น

 
[ความคิดเห็นนี้ถูกซ่อน]
 
slimeyslime 2024-03-15

5555555555555555555

 
nemorize 2024-03-10

ฮ่าๆๆ น่าสนุกดีนะ

 
xguru 2024-03-10

ความคิดเห็นจาก Hacker News

  • เห็นคนบน Twitter เยาะเย้ยโปรเจ็กต์นี้อยู่บ้าง แต่ก็มีคนที่ต้องการมันจริง ๆ เช่นกัน เพราะเคยพยายามบล็อกไม่ให้ผลิตภัณฑ์ส่งข้อมูลน่าสงสัยกลับไปยังโฮมเซิร์ฟเวอร์ แต่ก็นั่งไล่ดูใน Wireshark แล้วหาเซิร์ฟเวอร์ DoH ทั้งหมดไม่เจอ โปรเจ็กต์นี้ทำให้หวังว่าสักวันหนึ่งจะสามารถบล็อกได้แม้ใช้ DoH โดยไม่ต้องเพิ่มโดเมนลงใน TLS whitelist
  • คำว่า "ทราฟฟิกที่เข้ารหัสทั้งหมด" เป็นคำที่ชวนสับสนและจะเข้าใจได้ถูกต้องก็ต่อเมื่อมีบริบทที่แม่นยำเท่านั้น ข้อเสนอส่วนตัวคือคำอย่าง "High Entropy" (HighE) มีความเฉพาะเจาะจงมากกว่าคำว่า "เข้ารหัสทั้งหมด"
  • คงจะตลกดีถ้าโปรเจ็กต์นี้กลายเป็นแบบ War Thunder อาจมีสถานการณ์ที่ข้าราชการจีนแค้นใจเพราะมันไม่เหมือนวิธีทำงานจริงของ GFW แล้วส่งพูลรีเควสต์เข้ามา
  • รายการในฟีเจอร์ลิสต์ที่เขียนว่า "ตอบสนองความทะเยอทะยานแบบเผด็จการของคุณ" ทำให้วันของฉันสดใสขึ้น
  • มีกรณีใช้งานจริงสำหรับผลิตภัณฑ์แบบนี้ เช่น ในโรงเรียนอาจต้องการมันเพื่อให้มีสิ่งรบกวนน้อยที่สุด อย่างไรก็ตามก็กังวลเรื่องมัลแวร์ ใครจะเป็นคนตรวจสอบทีมที่อยู่เบื้องหลังโปรเจ็กต์นี้ได้บ้าง?
  • การมีแบบจำลองว่าอะไรทำงานอย่างไรมีประโยชน์มากในการสำรวจวิธีบรรเทาผลกระทบ
  • โปรเจ็กต์นี้เหมือนขีปนาวุธโอเพนซอร์สสำหรับระบอบอย่างอิหร่านและเกาหลีเหนือ ผมนับถือมันนะ แต่บางรัฐบาลก็อาจนำไปใช้ในทางที่ผิดเพื่อกดขี่เสรีภาพได้
  • เหมาะมากสำหรับให้คนที่อยู่นอกจีนแผ่นดินใหญ่ได้สัมผัสว่าชาวจีนเจอกับอะไรบ้างบนโลกออนไลน์
  • ตอนนี้รัฐบาลอิหร่านอาจเลิกจ่ายเงินให้จีนเพื่อใช้เทคโนโลยีนี้ในการปิดกั้นไม่ให้ชาวอิหร่านเข้าถึงอินเทอร์เน็ตแบบเปิดได้แล้ว เป็นเรื่องน่าขำที่โอเพนซอร์สมุ่งหวังความเปิดกว้าง แต่กลับอาจให้ผลลัพธ์ตรงกันข้ามโดยสิ้นเชิง
  • รู้สึกตกใจที่ดูเหมือนไม่มีใครกังวลเลยว่าโปรเจ็กต์นี้อาจช่วยลดอุปสรรคในการนำไปใช้งานให้กับรัฐบาลเผด็จการอื่น ๆ