Pravidlo vstoupí, terminál, který už máte, dál odpovídá, a příští přihlášení je odmítnuto. Přesně tato mezera je celá obtížnost testování změny firewallu přes spojení, které měníte. Sledování spojení rozhodne jednou a pak přestane hledět, takže navázaný tok je jediná sonda, která novou politiku nevidí. Následující text porovnává tři cesty zpět a poté určuje pořadí, v němž se pravidla mění a kontrolují.

Proč je přeživší relace nejslabší důkaz

Stavový firewall vyhodnotí první paket toku a tento verdikt si drží, dokud záznam existuje. Pravidla přidaná později platí pro toky, které začnou později, a proto okno, do kterého píšete, zůstává použitelné, zatímco všichni ostatní jsou odmítáni. Co se z něj dozvíte, popisuje politiku, která platila před několika minutami. I záznam pořízený na onom toku ukazuje rozhodnutí, které stroj už učinil.

Berte fungující relaci jako únikový východ, ne jako měření. Každá kontrola, která stojí za to, musí otevřít nový tok ze zdroje, který nové pravidlo vyhodnotí, a první kontrola má být ta, jejíž selhání by bolelo nejvíc. Když je tato relace vaší jedinou cestou dovnitř, změna ještě není připravena.

Tři cesty zpět, seřazené podle toho, na čem každá závisí

Seřaďte možnosti podle toho, jak moc závisí na testovaném zařízení, protože k tomuto pořadí sáhnete, když se pravidlo ukáže jako chybné. Konzole, která nikdy neprochází firewallem, je nezávislá, nacvičený rollback téměř také a už otevřená relace nikoli.

Way back inWhat it survivesWhere it fails
out-of-band or hypervisor consolea policy that blocks new loginsneeds separate access you have already tried
rollback rehearsed on that platforma rule that breaks remote accessfails when nobody ever ran it
the session that is already openthe change itselfcannot show whether new flows work

Před změnou se přihlaste přes konzoli a dokažte, že funguje, protože mimopásmová cesta, kterou jste nikdy nepoužili, je diagram, a ne záloha. Rollback si své místo zaslouží až po nácviku na oné platformě, s onou sadou pravidel, podle schváleného postupu místo improvizace na živém stroji. Zapište kroky a nechte je někoho jiného přečíst zpět. Pokud posloupnost potřebuje k dokončení vaši paměť, není to plán.

Jedna změna, pak spojení, které se musí vyhodnotit

Uložte živou sadu pravidel a soubor, který ji vlastní, a pak proveďte jednu úzkou úpravu. Jedna změna na test udržuje výsledek přiřaditelný; dvě najednou vám nechají funkční stroj a žádnou představu, která úprava práci udělala. Kde platforma umí analyzovat konfiguraci bez jejího načtení, udělejte to nejdřív, aby překlep selhal, dokud nic není v sázce.

nft list ruleset > /root/ruleset.before
nft -c -f /etc/nftables.conf

Potom spusťte novou relaci ze zdroje, na který změněné pravidlo bude odpovídat, zatímco konzole je ještě připojená. Pokud uspěje, jednou to zopakujte, protože první pokus může přistát na záznamu, který tabulka už držela. Pokud selže, pořád máte cestu dovnitř a rozhodnutí k vrácení, což je nejlevnější špatný výsledek, který je k dispozici.

Počítadla, stav a soubor odpovídají na různé otázky

Každé ze tří pozorování může samo o sobě vypadat přesvědčivě a zmást vás ohledně ostatních dvou. Počítadla ukazují, zda tok, který jste právě vytvořili, dosáhl pravidla, které jste upravili. Tabulka stavu ukazuje, které toky stroj považuje za již navázané, a tak může porouchané pravidlo stále vypadat zdravě. Uložený soubor ukazuje, co zařízení udělá po příštím načtení, a to nemusí být to, co běžící sada pravidel dělá teď.

ss -tn state established

Čtěte počítadla jako rozdíl, ne jako součet, protože jediné číslo, na kterém záleží, je to, které posunul váš testovací tok. Pravidlo, jehož počítadlo nikdy neroste, se neshoduje, ať na papíře vypadá jakkoli správně. Potvrďte i případ odmítnutí: politika, která nikdy nic neodmítla, nikdy nedokázala, že odmítá to, co jste chtěli blokovat. Projděte jedno rozhraní v každé rodině, kterou nasazení skutečně nese, protože pravidlo v4 neříká nic o toku v6.

Obnovte z uložené sady pravidel a pak sluďte soubor

Když změna selže, načtěte uloženou sadu pravidel místo přidávání povolujících pravidel, dokud přihlášení znovu nefungují. Každé další povolení utiší symptom a zanechá díru, která přežije incident i vzpomínku na něj. Obnovte, připojte se znovu a pak držte neúspěšné srovnání vedle záznamu o tom, co jste zkusili.

Po úspěšné změně ať soubor na disku popisuje sadu pravidel, která běží, a potvrďte, že načtení ji reprodukuje. Živá sada pravidel, která se rozešla s vlastním konfiguračním souborem, je past nastražená na příští restart.

Související články