Ännerung vun der Firewall-Reeg funktionéiert net: Reegeluerdnung a Verbindungsstatus
Eng geännert Reegel kann hannert enger fréierer Erlaabnes stoen oder vum Verbindungstracking iwwerspronge ginn. Trennt déi zwou Tester, benotzt en neie Floss a behält e Wee zréck.
Dir hutt d'Reegel geännert, de Reegelsatz nei gelueden, an den Tunnel verhält sech genee wéi virdrun. Dëst Resultat huet zwou heefeg Ursaachen, an se brauchen ënnerschiddlech Tester. Entweder steet déi nei Reegel hannert enger fréierer Reegel, déi de Pak schonn akzeptéiert huet, oder den Austausch, deen Dir observéiert, ass eng verfollegt Verbindung, déi d'Ännerung ni nei bewäert. Eng Reegel an engem Fichier dréckt Absicht aus; wat iwwer de Pak entscheet, ass den aktive Wee, op deen en trëfft. Gitt déi follgend Kontrollen der Rei no duerch a behält dobäi e Wee zréck op.
Reegeluerdnung a Verbindungsstatus sinn ënnerschiddlech Feeler
Ugeuerdnet Ketten ginn uewen no ënnen bewäert, an déi éischt Reegel, déi zu engem Schlussurteel kënnt, beendegt den Duerchgang duerch déi Kett. Setzt eng breet Erlaabnes iwwer eng suergfälteg geschriwwe Sperrreegel, an d'Sperrreegel gëtt Dokumentatioun: se ass am Reegelsatz, hire Compteur ass null, an kee Pak wäert se jee erreechen. Dee selwechten Text op eng aner Kett ugewannt beweist och näischt. An nftables hänken Basis-Ketten un Hooks mat Prioritéiten, dofir verhënnert eng Erlaabnes an enger Kett net, datt eng aner Kett op engem aneren Hook oder enger anerer Prioritéit dee selwechte Pak gesäit.
D'Verbindungstracking produzéiert dat zweet Symptom, an vun dobaussen gesäit et identesch aus. Soubal en Floss an der Zoustännstabell ass, kënnt eng Erlaabnes fir etabléiert-oder-verbonnen no beim Uewenende vun der Kett zréck, ier Är nei Reegel iwwerhaapt consultéiert gëtt. NAT-Mappings hunn déiselwecht Eegeschaft: d'Iwwersetzung gouf fixéiert, wéi de Floss ugefaangen huet, dofir schreift eng geännert postrouting-Reegel keng Sëtzung ëm, déi schonn leeft. Dofir schéngt eng Ännerung um 09:00 fir eng nei Verbindung ze funktionéieren an schéngt fir d'Sëtzung, déi een um 08:55 opgemaach huet, näischt ze maachen.
Cloud-Sécherheetsgruppen fügen en drëtt Modell derbäi, dat Leit fänkt, déi op iptables geléiert hunn. Hir Inbound-Reegele sinn eng Erlaabneslëscht, déi als Ensembel bewäert gëtt an net als Duerchgang no der éischter Iwwereneenstëmmung, se si stateful, an eng Erlaabnesreegel ewechzehuelen beendegt keng Flëss, déi schonn verfollegt ginn. D'Semantik vun der éischter Iwwereneenstëmmung op enger Plattform unzehuelen, déi se net huet, féiert zu selbstsécheren, falsche Schlussfolgerungen.
Liest den aktive Reegelsatz, net de Fichier, deen Dir geännert hutt
Fänkt domat un, wat de Kernel just elo duerchsetzt. Eng gespäichert Konfiguratioun, déi ni ugewannt gouf, erkläert iwwerraschend vill onverännert Verhalen, an se auszeschléissen kascht ee Befehl:
nft list ruleset
iptables-saveDann freet, ob Är Reegel iwwerhaapt erreecht gëtt. Pak-Compteuere beäntweren dat direkt, an si beäntweren et besser wéi all Iwwerleeung iwwer d'Absicht:
iptables -L FORWARD -v -n --line-numbers
nft list chain inet filter forwardEng Sperrreegel mat null Päck no engem richtegen Testversuch ass kee Politikproblem, et ass e Positiounsproblem. Se ze verréckelen ass eng Ännerung vun enger Zeil, an d'Syntax ass genee dat, wat de urspréngleche Feeler verursaacht huet. Mat iptables -I setzt vir an an -A bäi um Enn; mat nftables insert setzt eng Reegel un den Ufank vun der Kett, während add bäi um Enn setzt. Wann eng Reegel muss gewannen, sot et ausdrécklech, amplaz vun der Uerdnung ze vertrauen, déi zoufälleg gelueden gouf.
Beweist, ob de Floss verfollegt gëtt
Ier Dir d'Reegel beschëllegt, préift, ob den Traffic iwwerhaapt eng verfollegt Verbindung ass. Frot d'Zoustännstabell no dee konkrete Floss, amplaz se ganz auszeginn:
conntrack -L -p tcp --dport 1194
conntrack -E -p tcp --dport 1194D'Lëscht weist den Zoustand an de verbleiwenen Timeout, an esou ënnerscheet Dir eng etabléiert Sëtzung vun engem neien Versuch; den Event-Modus dréckt Aktualiséierungen, soubal se geschéien, wat nëtzlech ass, während Dir e Client nei verbënnt. Wann de Floss schonn an engem etabléierten Zoustand do ass, ier Dir eppes ugepaakt hutt, wäert keng Ännerung vun de Filterreegele säi Schicksal änneren. Dat ass kee Feeler an der Firewall, et ass de Kontrakt vum stateful Filteren.
Widderstitt der Ofkierzung, déi ganz Tabell op engem Produktiounsgateway ze läeren. conntrack -F ass verfügbar, an et zerstéiert och all verfollegte Floss op der Maschinn, abegraff d'Administratiounssëtzung, vun där Dir schafft, an den Tunnel, deen Är Shell dréit. Eenzel Aschreiwunge kënnen geläscht ginn, wann Dir et wierklech braucht, awer en neie Floss vun engem neien Quellport ass normalerweis e méi proppert Experiment.
E puer Weeër ginn net verfollegt, an se verhalen sech ëmgedréit. Traffic, deen notrack an der raw-Tabell markéiert ass, e puer Tunnelen, déi déi normal Hooks ëmgoen, an asymmetresch Routing, dat en Floss tëschent zwee Gateways deelt, produzéieren all Päck, déi een nom aneren bewäert ginn, oder en Zoustand, deen op béide Säiten ni entsteet. Wa sech d'Compteuere bei all Pak beweegen, verdächtegt sou ee Wee, ier Dir d'Uerdnung verdächtegt.
Test vun engem neie Floss mat engem Wee zréck
Ier Dir eng Reegel testt, déi de Fernzougang kéint ofschneiden, baut en Erhuelungswee op: d'Konsole vum Provider, eng seriell Konsole, eng Out-of-Band-Administratiounsadress oder eng zweet Interface, déi d'Reegel net ka treffen. En Rollback-Timer ass e vernünftege Begleeder, well en de virege Reegelsatz restauréiert, och wann Är Sëtzung wärend dem Test stierft.
Test dann mat engem Austausch, deen den Zoustand nach net konnt ofdecken. Trennt de Client a verbënnt en nei, sou datt eng nei Fënneffach entsteet, a beobachtet béid Säiten, während dat geschitt:
tcpdump -ni eth0 'tcp port 1194'
journalctl -k -n 50 --no-pagerMaacht den Test an zwou Richtungen. Eng Reegel, déi den neien erakommende Handshake blockéiert, kann de Wee vun der Äntwert nach erlaben, oder ëmgedréit, an en eesäitegt Resultat ass de gewéinleche Grond, firwat eng Sperr nëmmen hallef funktionéiert. Verbënnt no dem Test nach eng Kéier nei, fir den stallene Zoustand ze bestätegen, a préift, ob legitimen Administratiounszougang iwwerlieft huet; eng Reegel, déi fir ee Port geschriwwe gouf, huet d'Gewunnecht, eng méi breet Range ze treffen wéi gemengt.
Halt Zweck a Positioun mat der Reegel fest
Eng Reegel ouni festgehalenen Zweck ass eng Reegel, déi keen ze ewechzehuelen traut. Halt bei all Sperraschreiwung de Floss fest, deen se schützt, d'Kett an den Hook, an deem se lieft, d'Positioun, déi se géigeniwwer méi breede Erlaabnesse muss halen, an den Test, deen et bewisen huet. Wann een sechs Méint méi spéit de ronderëm Reegelsatz ännert, ass déi Notiz déi eenzeg Warnung, datt d'Positioun bewosst war.
Ier Dir d'Ännerung zoumaacht, bestätegt véier Saachen: de lafende Reegelsatz entsprécht dem Fichier, déi nei Reegel huet no engem neien Versuch Compteuere wéi net null, déi entgéintgesate Richtung an den Administratiounszougang funktionéieren nach, an Dir hutt ee Mol nei verbonnen, fir de stallene Zoustand ze beweisen an net den Zoustand vun enger Sëtzung, déi méi al ass wéi d'Ännerung. Wann eppes dovu net verifizéiert ass, ass d'Ännerung net fäerdeg, wat den Tunnel och mécht.