Firewallpakket geïnstalleerd, regels weg na de herstart
Installatie, de actieve regelset en wat die herstelt zijn drie aparte taken. Elke geladen regel opslaan kan experimenten samen met het VPN-beleid bewaren.
Het pakket installeerde schoon, de regels werden getest, en na de volgende herstart stond de gateway wijd open. Niets in de transactie mislukte; de fout zat in de aanname wat zou blijven bestaan. Firewallgereedschap installeren, bepalen welke regels moeten overleven en ze op het juiste moment herstellen zijn drie aparte taken.
Wat het symptoom je echt vertelt
Een regelset die bij herstart verdwijnt heeft een van drie eigenaren: niets heeft hem opgeslagen, iets anders heeft hem vervangen, of hij is hersteld voordat bestond waarvan hij afhankelijk is. De eerste twee zijn zichtbaar in de configuratie; de derde blijkt alleen uit de volgorde. Daarom kan een herstart op dataverlies lijken terwijl het in werkelijkheid een volgordeprobleem is.
Begin met opschrijven wat waar was vóór de herstart: welke dienst de regels hield, welk bestand of welke database hij bij de start las, en of die bron ooit was beschreven. Een actieve regelset die niemand heeft opgeslagen is een geldige verklaring en de meest voorkomende.
Begin niet met het opnieuw installeren van het pakket.
Lees het persistentiegereedschap voordat je het gebruikt
De Debian-gereedschappen behandelen persistentie als een plugin-probleem: elke plugin weet hoe hij zijn eigen regels schrijft, en één wrapper roept ze aan. De opslagactie bewaart alles wat op dat moment is geladen, en de startactie laadt die momentopname terug. Niets in beide acties beoordeelt wat er wordt opgeslagen.
Dat is een momentopname, geen beoordeling. Een achtergebleven toestemming uit een debugsessie, een half afgerond experiment of een soepele regel die een ander hulpmiddel invoegde, worden allemaal permanent naast het beleid dat je wilde houden. Toestand opslaan en toestand goedkeuren zijn verschillende activiteiten, en slechts één ervan vereist oordeel. Lees eerst de geladen set en bepaal daarna welke regels het verdienen te overleven.
Sla bewust op, nadat je hebt gelezen wat er is geladen.
Bepaal wat moet overleven
Sommige regels horen bij de levenscyclus van een interface en zouden daarmee moeten verdwijnen. Andere moeten de tunnel overleven, en het duidelijkste voorbeeld is een beperking die verhindert dat clientverkeer terugvalt op de fysieke interface wanneer de tunnel wegvalt. Die twee categorieën hebben verschillende hersteltriggers nodig, niet één gedeelde momentopname.
Schrijf het bedoelde resultaat voor drie momenten op: opstart, VPN-activering en tunnelverlies. Controleer dan of het gekozen gereedschap elk daarvan kan uitdrukken. Een persistentiepakket dat een statische momentopname herlaadt, dekt het eerste en misschien geen van de andere, omdat een momentopname geen idee heeft wanneer de tunneltoestand veranderde. Als het ze niet kan uitdrukken, hoort de leemte bij een andere component.
Het beleid, niet het pakket, bepaalt het antwoord.
Controleer de herstelvolgorde
Het bestand herstellen is niet hetzelfde als het resultaat bezitten. Een ander beheerprogramma kan de regels vervangen, een eerdere toestemming kan ze overschaduwen, of clients kunnen al gaan zenden voordat de beperking ingaat. Beoordeel opstart- en herverbindingsgedrag, niet alleen het bestaan van een opgeslagen bestand.
systemctl status netfilter-persistent
iptables -S
Ga er niet van uit dat het stoppen van de persistentiedienst onschadelijk is, want het pakket documenteert een voorwaardelijke flush bij het stoppen. Stel de werkelijke configuratie van de dienst vast voordat je stoppen of herstarten als experiment gebruikt op een gateway die je op afstand beheert. Een consolesessie en een gedocumenteerde terugdraai zijn het minimum voor die test.
Volgorde is een eigenschap van het draaiende systeem, niet van het bestand op schijf.
Accepteer drie aparte resultaten
Leg de pakketinstallatie, de geladen regelset en het afgedwongen beleid vast als aparte feiten. Een pakketnaam in een supportthread beantwoordt alleen het eerste, en dat is degene die zelden telt.
nft list ruleset
Test daarna een toegestane bewerking en een vereiste weigering.
Als de weigering standhoudt na een herstart en na tunnelverlies, overleeft het beleid. Als hij slechts in één van die toestanden standhoudt, heb je het volgordeprobleem gevonden in plaats van het opgelost.