Pościg za CNAME
Idź łańcuchem aliasów.
Trackery podszyte pod first-party domeny: hop za hopem, do 16 — i tak zablokowane.
źródłosrc/filter/cname.rs
Warden to filtr DNS, który stawiasz u siebie — phishing, malware i trackery padają, zanim wstanie jakiekolwiek połączenie. On-prem albo prywatna chmura. Bez konta w chmurze, bez opłat za stanowisko.
Jeden statyczny binary na VM, bare metalu albo hoście kontenerów, który i tak już stoi — Linux amd64 / arm64. Bez appliance'u do kupienia, bez agentów na stacjach.
On-prem albo prywatna chmura. Logi DNS to dane osobowe pod RODO — Warden nigdy ich nie wypuszcza z sieci. Bez telemetrii, bez konta, nic nie dzwoni do domu.
Cała konfiguracja to jeden deklaratywny plik TOML: wersja w Git, recenzja w pull requestach, odtworzenie jednym poleceniem.
AGPLv3 — bez licencji za stanowisko, bez subskrypcji, bez lock-in. Zespół bezpieczeństwa może przeczytać każdą linijkę.
Każde urządzenie musi odpytać DNS — filtrujesz tam i trackery, zamaskowane hopy CNAME i tunele DNS giną przed pierwszym pakietem. Bez agenta na stacji. Obejmuje też to, czego nie zarządzasz: laptopy kontraktorów, IoT, drukarki.
Idź łańcuchem aliasów.
Trackery podszyte pod first-party domeny: hop za hopem, do 16 — i tak zablokowane.
źródłosrc/filter/cname.rs
Feed sam się nie odblokuje.
Listy, które subskrybujesz, nie przemycią allow, $important ani regex. Te moce mają tylko reguły napisane przez Twój zespół.
źródłosrc/lists/parser.rs
Exfil nie udaje DNS.
Seria unikalnych nazw spoza cache pod jedną domeną — typowy kształt DNS exfil. Warden tym zapytaniom odmawia. Włączone z pudełka.
źródłosrc/security/tunneling.rs
IoT i OT, zamknięte.
Włącz block_all na profilu i przechodzi tylko to, co admin wpisał na allow — drukarki, kamery, automatyka budynku zostają na nazwach, które wpisałeś.
źródłosrc/config/schema/profile.rs
Finanse, inżynieria, Wi-Fi gości. Każda grupa swoje reguły — na urządzenie, grupę albo podsieć.
Bloki, wyjątki, harmonogramy.
Grupa urządzeń dzieli jeden profil — listy, wyjątki, block-all. Harmonogram dopinasz do grupy, gdy okno ma znaczenie.
źródłosrc/config/schema/group.rs
CIDR to tu VLAN.
Mapujesz CIDR na profil. Personel, goście, IoT, OT — każdy zakres swoje reguły. Najdłuższy prefiks wygrywa.
źródłosrc/config/schema/subnet.rs
DNS na opt-in.
Zostaw profil domyślny pusty i wszystko, czego nie zmapowałeś, dostaje REFUSED. Telefony gości i nowe IoT nie mają DNS, dopóki nie powiesz.
źródłosrc/dns/handler.rs
Domena firmowa zostaje w środku.
Strefę wysyłasz na inny resolver — corp.example.com na DC, reszta przez Warden. Najdłuższy suffix wygrywa.
źródłosrc/upstream/forwarding.rs
Filtruj bez zapisu lookupów albo trzymaj pełny log. Zmiany konfiguracji piszą ślad audytu. Metryki, jeśli je włączysz — bez nowej bazy.
Prywatność zostaje włączona.
Filtrowanie działa, gdy wyłączysz query log — albo zostawisz blocked-only / sampled. Lookup nie musi być audytem ludzi.
źródłosrc/config/settings.rs
Kto ruszył konfigurację.
Jedna linia JSON na reload, boot, shutdown i mutację — uid, pliki, SHA-256 przed i po. warden audit tail to czyta.
źródłosrc/config/audit.rs
Opt-in. Domyślnie off.
OpenMetrics na /metrics, gdy API stoi i metryki są włączone. Bez sidecara eksportera. Domyślnie off.
źródłosrc/api/routes.rs
Amplifikacja, przyhamowana.
Budżet per klient wewnątrz allow_from; per prefiks poza nim. Sfałszowane źródła odpadają albo schodzą na TCP. Włączone z pudełka.
źródłosrc/security/rrl.rs