Pravilo uđe, terminal koji već imate nastavlja da odgovara, a sljedeća prijava bude odbijena. Ta praznina je cijela teškoća testiranja promjene firewalla preko veze koju mijenjate. Praćenje veza odluči jednom i onda prestane gledati, pa je uspostavljeni tok jedina sonda koja ne može vidjeti novu politiku. Ono što slijedi poredi tri načina povratka, a zatim utvrđuje redoslijed kojim se pravila mijenjaju i provjeravaju.

Zašto je preživjela sesija najslabiji dokaz

Stateful firewall ocjenjuje prvi paket toka i zadržava tu presudu dokle god zapis postoji. Pravila dodana poslije primjenjuju se na tokove koji počnu kasnije, zato prozor u koji kucate ostaje upotrebljiv dok su svi ostali odbijeni. Što god iz njega naučite, opisuje politiku koja je bila na snazi prije nekoliko minuta. Čak i snimak na tom toku pokazuje odluku koju je mašina već donijela.

Tretirajte radnu sesiju kao izlaz u nuždi, a ne kao mjerenje. Svaka provjera koja je vrijedna mora otvoriti novi tok sa izvora koji će novo pravilo ocijeniti, a prva provjera treba biti ona čiji bi neuspjeh najviše zaboli. Kada je ta sesija vaš jedini put unutra, promjena nije spremna.

Tri načina povratka, poredana po tome o čemu svaki zavisi

Poredajte opcije po tome koliko zavise od uređaja koji se testira, jer tom rasporedu posežete kada se pravilo pokaže pogrešnim. Konzola koja nikada ne prolazi kroz firewall je nezavisna, uvježbani rollback gotovo isto, a već otvorena sesija nije.

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

Prije promjene prijavite se preko konzole i dokažite da radi, jer vanpojasni put koji nikada niste koristili je dijagram, a ne rezerva. Rollback zaslužuje svoje mjesto tek poslije probe na toj platformi, s tim skupom pravila, po odobrenoj proceduri umjesto improvizacije na živoj mašini. Zapišite korake i neka vam ih neko drugi pročita. Ako slijedu treba vaše pamćenje da bi se dovršio, to nije plan.

Jedna promjena, pa veza koja se mora ocijeniti

Sačuvajte živi skup pravila i datoteku koja ga posjeduje, pa napravite jedno usko uređivanje. Jedna promjena po testu čini ishod pripisivim; dvije odjednom ostavljaju radnu mašinu i nikakvu ideju koje je uređivanje obavilo posao. Gdje platforma može raščlaniti konfiguraciju bez učitavanja, učinite to prvo, da tipfeler padne dok ništa nije uloženo.

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

Zatim pokrenite novu sesiju sa izvora na koji će izmijenjeno pravilo odgovarati, dok je konzola još priključena. Ponovite jednom ako uspije, jer prvi pokušaj može sletjeti na zapis koji je tabela već držala. Ako ne uspije, još uvijek imate put unutra i odluku koju možete poništiti, a to je najjeftiniji loš ishod koji postoji.

Brojači, stanje i datoteka odgovaraju na različita pitanja

Svako od tri zapažanja može samo za sebe izgledati uvjerljivo i zavesti vas u pogledu druga dva. Brojači pokazuju da li je tok koji ste upravo stvorili stigao do pravila koje ste izmijenili. Tabela stanja pokazuje koje tokove mašina smatra već uspostavljenim, i tako pokvareno pravilo može i dalje izgledati zdravo. Sačuvana datoteka pokazuje šta će uređaj raditi poslije sljedećeg ponovnog učitavanja, a to možda nije ono što živi skup pravila radi sada.

ss -tn state established

Čitajte brojače kao razliku, a ne kao zbir, jer je jedini broj koji je važan onaj koji je pomjerio vaš testni tok. Pravilo čiji se brojač nikada ne povećava ne odgovara, koliko god ispravno izgledalo na papiru. Potvrdite i slučaj odbijanja: politika koja nikada ništa nije odbila nikada nije dokazala da odbija ono što ste namjeravali blokirati. Prođite kroz jedan interfejs u svakoj familiji koju implementacija zaista nosi, jer pravilo v4 ne govori ništa o toku v6.

Vratite iz sačuvanog skupa pravila, pa uskladite datoteku

Kada promjena ne uspije, učitajte sačuvani skup pravila umjesto dodavanja dopuštajućih pravila dok prijave ponovo ne prorade. Svako dodatno dopuštenje stišava simptom i ostavlja rupu koja nadživi incident i sjećanje na njega. Vratite, ponovo se povežite, pa držite neuspjelo poređenje uz zapis onoga što ste pokušali.

Poslije uspješne promjene natjerajte datoteku na disku da opisuje skup pravila koji radi i potvrdite da ga ponovno učitavanje reprodukuje. Živi skup pravila koji se odvojio od vlastite konfiguracijske datoteke je zamka postavljena za sljedeće podizanje.

Povezani članci