- OpenGFW, kullanıcıların bizzat kurabileceği, Çin'in Büyük Güvenlik Duvarı'nın (Great Firewall of China) Linux için açık kaynaklı bir sürümü
- "Artık sadece gücü elinde tutanların eğlenmesine gerek yok; sansürü herkes için mümkün kılıp insanlara güç verme zamanı"
- Evinizdeki router'da uzman gibi filtreleme yapmaya başlayıp Big Brother rolünü üstlenebilirsiniz
- Uyarı: Bu proje hâlâ geliştirmenin erken aşamasındadır ve kullanım sorumluluğu kullanıcıya aittir
Özellikler
- Tam IP/TCP yeniden birleştirme, çeşitli protokol ayrıştırıcıları (HTTP, TLS, QUIC, DNS, SSH, SOCKS4/5, WireGuard vb.)
- Shadowsocks gibi "tamamen şifrelenmiş trafik" algılama özelliği
- Trojan-killer tabanlı Trojan (proxy protokolü) algılama özelliği
- [Devam ediyor] makine öğrenimi tabanlı trafik sınıflandırması
- Tam IPv4 ve IPv6 desteği
- Akış tabanlı çok çekirdekli yük dengeleme
- Bağlantı offloading
expr tabanlı güçlü kural motoru
- Hot-reload destekli kurallar (
SIGHUP sinyaliyle yeniden yükleme)
- Esnek ayrıştırıcı ve değiştirici framework'ü
- Genişletilebilir IO uygulaması (yalnızca NFQueue desteklenir)
- [Devam ediyor] web UI
Kullanım senaryoları
- Reklam engelleme
- Ebeveynlerin çocuk kontrolü
- Kötü amaçlı yazılım koruması
- VPN/proxy hizmetlerinin kötüye kullanımını önleme
- Trafik analizi (yalnızca log modu)
- Diktatörce hırslarınızı gerçekleştirmenize yardımcı olur (Help you fulfill your dictatorial ambitions)
Kullanım
Derleme
go build
Çalıştırma
export OPENGFW_LOG_LEVEL=debug
./OpenGFW -c config.yaml rules.yaml
OpenWrt
- OpenGFW'nin OpenWrt 23.05 üzerinde çalıştığı test edildi; diğer sürümlerde de çalışması bekleniyor, ancak doğrulanmadı
- Bağımlılıkları yükleme:
opkg install kmod-nft-queue kmod-nf-conntrack-netlink
Örnek yapılandırma
Desteklenen eylemler
allow: bağlantıya izin verilir, ek işlem yok
block: bağlantı engellenir, ek işlem yok
drop: UDP için, kuralı tetikleyen paket düşürülür ve aynı akıştaki gelecekteki paketlerin işlenmesine devam edilir. TCP için block ile aynıdır
modify: UDP için, kuralı tetikleyen paket verilen değiştirici kullanılarak değiştirilir ve aynı akıştaki gelecekteki paketlerin işlenmesine devam edilir. TCP için allow ile aynıdır
4 yorum
Hahahahahahahahahahahaha
Hahahaha, ilginçmiş.
Hacker News yorumları