22 Punkte von xguru 2024-03-10 | 4 Kommentare | Auf WhatsApp teilen
  • OpenGFW ist eine Open-Source-Implementierung von Chinas Great Firewall für Linux, die Nutzer selbst aufbauen können
  • „Jetzt müssen nicht mehr nur Menschen mit Macht den Spaß haben; es ist Zeit, Zensur für alle möglich zu machen und den Menschen damit Macht zu geben“
  • Man kann auf dem heimischen Router mit professionellem Filtering beginnen und selbst Big Brother spielen
  • Achtung: Dieses Projekt befindet sich noch in einem frühen Entwicklungsstadium und sollte auf eigene Verantwortung verwendet werden

Funktionen

  • Vollständige IP/TCP-Reassemblierung, verschiedene Protokoll-Parser (HTTP, TLS, QUIC, DNS, SSH, SOCKS4/5, WireGuard usw.)
  • Erkennung von „vollständig verschlüsseltem Traffic“ wie Shadowsocks
  • Erkennung von Trojan (Proxy-Protokoll) auf Basis von Trojan-killer
  • [In Arbeit] Machine-Learning-basierte Traffic-Klassifizierung
  • Vollständige Unterstützung für IPv4 und IPv6
  • Flow-basierter Multicore-Load-Balancing
  • Connection-Offloading
  • Leistungsstarke regelbasierte Engine auf expr-Basis
  • Hot-reload-fähige Regeln (Reload per SIGHUP-Signal)
  • Flexibles Framework für Parser und Modifier
  • Erweiterbare IO-Implementierung (unterstützt nur NFQueue)
  • [In Arbeit] Web-UI

Anwendungsfälle

  • Werbeblocker
  • Elterliche Kontrolle für Kinder
  • Schutz vor Malware
  • Verhinderung des Missbrauchs von VPN-/Proxy-Diensten
  • Traffic-Analyse (Nur-Log-Modus)
  • Hilft dabei, diktatorische Ambitionen auszuleben (Help you fulfill your dictatorial ambitions)

Verwendung

Build

  go build  

Ausführen

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

OpenWrt

  • OpenGFW wurde unter OpenWrt 23.05 erfolgreich getestet; es wird erwartet, dass es auch mit anderen Versionen funktioniert, dies wurde jedoch nicht verifiziert
  • Abhängigkeiten installieren:
    opkg install kmod-nft-queue kmod-nf-conntrack-netlink

Beispielkonfiguration

Unterstützte Aktionen

  • allow: Verbindung erlauben, keine weitere Verarbeitung
  • block: Verbindung blockieren, keine weitere Verarbeitung
  • drop: Bei UDP wird das Paket, das die Regel ausgelöst hat, verworfen, und zukünftige Pakete desselben Flows werden weiterhin verarbeitet. Bei TCP identisch zu block
  • modify: Bei UDP wird das Paket, das die Regel ausgelöst hat, mit dem angegebenen Modifier verändert, und zukünftige Pakete desselben Flows werden weiterhin verarbeitet. Bei TCP identisch zu allow

4 Kommentare

 
[Dieser Kommentar wurde ausgeblendet.]
 
slimeyslime 2024-03-15

Hahahahahahahahahahaha

 
nemorize 2024-03-10

Hahaha, das ist lustig.

 
xguru 2024-03-10

Hacker-News-Kommentare

  • Ich habe auf Twitter Leute gesehen, die sich über dieses Projekt lustig machen, aber es gibt auch Menschen, die es tatsächlich brauchen. Ich habe versucht zu verhindern, dass ein Produkt verdächtige Daten an einen Home-Server sendet, bin aber daran gescheitert, vor Wireshark zu sitzen und alle DoH-Server herauszufinden. Ich hoffe, dass dank dieses Projekts der Tag kommt, an dem man solche Verbindungen selbst bei Nutzung von DoH blockieren kann, ohne Domains zu einer TLS-Whitelist hinzufügen zu müssen.
  • Der Begriff „vollständig verschlüsselter Traffic“ ist ein verwirrender Ausdruck, der nur bei genauem Kontext richtig verstanden werden kann. Mein persönlicher Vorschlag ist, dass ein Begriff wie „High Entropy“ (HighE) konkreter ist als „vollständig verschlüsselt“.
  • Es wäre lustig, wenn dieses Projekt wie War Thunder würde. Dann könnte es passieren, dass ein chinesischer Beamter aus Groll einen Pull Request einreicht, weil es sich von der tatsächlichen Funktionsweise der GFW unterscheidet.
  • Der Punkt „Erfüllt Ihre diktatorischen Ambitionen“ in der Funktionsliste hat mir den Tag versüßt.
  • Für solche Produkte gibt es echte Anwendungsfälle. Zum Beispiel brauchen Schulen so etwas, um Ablenkungen möglichst gering zu halten. Allerdings mache ich mir Sorgen wegen Malware. Wer kann das Team hinter diesem Projekt verifizieren?
  • Ein Modell davon zu haben, wie etwas funktioniert, ist sehr hilfreich, um Gegenmaßnahmen zu erkunden.
  • Dieses Projekt ist wie eine Open-Source-Rakete für Regime wie den Iran und Nordkorea. Ich respektiere das, aber manche Regierungen könnten es missbrauchen, um Freiheit zu unterdrücken.
  • Es eignet sich sehr gut dafür, dass Menschen außerhalb des chinesischen Festlands erleben können, was Chinesen online erfahren.
  • Jetzt kann die iranische Regierung vermutlich aufhören, China dafür zu bezahlen, dass diese Technologie genutzt wird, um Iranern den Zugang zum offenen Internet zu blockieren. Es ist interessant, dass Open Source auf Offenheit abzielt und trotzdem zu einem völlig gegenteiligen Ergebnis führen kann.
  • Ich bin schockiert, dass sich offenbar niemand darüber Sorgen macht, dass dieses Projekt anderen diktatorischen Regierungen helfen könnte, die Hürden für eine Implementierung zu senken.