Little Snitch pro Linux: eBPF firewall s monitorováním procesů a blokováním provozu
Little Snitch je přizpůsoben pro Linux pomocí eBPF pro zachycení všech odchozích síťových spojení. Démon shromažďuje data o provozu, která jsou přiřazena konkrétním procesům, aniž by bylo nutné upravovat jádro. Webové rozhraní na localhost:3031 zobrazuje aktivitu v reálném čase: aktuální spojení, historická data, objemy provozu. Filtrace podle aktivity, objemu nebo názvu procesu umožňuje rychle identifikovat podezřelý provoz. Blokování probíhá jedním kliknutím s uložením pravidel pro budoucí relace.
Grafy provozu vizualizují špičky zátěže s možností vybrání časových intervalů pro detailní analýzu. To je kritické pro střední a senior vývojáře spravující servery nebo pracovní stanice, kde telemetrie aplikací uniká do sítě bez kontroly.
Možnosti nastavení pravidel a blokovacích seznamů
Vlastní pravidla
Pravidla se konfigurují podle procesů, portů a protokolů prostřednictvím TOML konfigurací v adresáři /var/lib/littlesnitch/config/. Přepsací soubory v /var/lib/littlesnitch/overrides/ mají přednost, což usnadňuje testování bez rizika poškození základní konfigurace. Příklad: povolit celý provoz pro Firefox, ale blokovat odchozí provoz ze specifického CLI nástroje.
Blokovací seznamy
Integrace připravených seznamů – Hagezi, Peter Lowe, Steven Black, oisd.nl. Formáty: domény řádek po řádku, /etc/hosts, CIDR. Nekompatibilní s .lsrules z macOS verze, což vyžaduje konverzi při migraci.
- Procesově orientované blokování: přiřazení k PID/executable, nikoli k IP.
- Port/protokol: TCP/UDP s jemnou kontrolou.
- Historie a statistika: objemy bajtů, frekvence požadavků podle domén.
- Podpora PWA: instalace rozhraní jako aplikace v Chromium/Firefox.
Kompromiss: eBPF omezuje velikost mezipaměti při zátěži, což snižuje přesnost přiřazení paketů, ale pokrytí pro soukromí provozu je blízké 100%.
Architektura a kompromisy
eBPF program v jádru předává metadata demonovi, který agreguje statistiku a aplikuje filtry. Nedochází k deep packet inspection jako u macOS – linuxová verze se zaměřuje na metadata spojení (ID procesu, cílový port/doména). Při vysoké zátěži (tisíce spojení za sekundu) mohou tabulky eBPF zaplnit a přeskočit přiřazení jednotlivých paketů.
Výhody eBPF: nulová kopírování, nízký overhead, škálovatelnost na multi-core systémech.
Omezení: striktní limity na velikost programů (až 1 MB po JIT), žádný analýza obsahu. Autoři zdůrazňují: nástroj pro soukromí, nikoli pro defense-in-depth proti cíleným útokům. Pro produkční prostředí kombinujte s nftables.
Serverový deploy bez grafického rozhraní: přístup přes SSH tunel (ssh -L 3031:localhost:3031) nebo nginx reverse proxy. Žádné GUI závislosti, demon běží v pozadí.
Licence a přizpůsobení
- eBPF modul: GPLv2, zdrojové kódy na GitHubu.
- Webové rozhraní: GPLv2, open source.
- Demon: proprietární, zdarma pro osobní i komerční použití.
Konfigurace v TOML umožňuje skriptování: automatizace pravidel prostřednictvím Ansible/chef. Pro senior vývojáře je důležitý kontrola telemetrie v CI/CD pipelinech nebo Kubernetes pods, kde kontejnery generují nekontrolovaný provoz.
Co je důležité
- eBPF poskytuje procesově orientovaný monitoring bez kernel modulů s nízkým overheadem.
- Webové rozhraní + PWA pro pohodlí, headless režim pro servery.
- Blokovací seznamy a pravidla pokrývají 90 % případů soukromí, ale nejsou náhradou DPI.
- Zcela zdarma, na rozdíl od placené verze pro macOS za €59.
- Kompromis: ztráta přesnosti při extrémní zátěži kvůli omezením eBPF.
— Editorial Team
Zatím žádné komentáře.