Du er ved at redigere tunnelen, der bærer din egen session, så det arbejde, der redder dig, sker før ændringen, ikke under scramblen efter den. Sikkerhedsnettet er ikke på VPN-siden: det er gendannelsesskærmen, en konsol eller en anden sti, der ikke løber gennem den enhed, du redigerer. Jeg planlægger alle tre på den samme routergrænseflade, som jeg er ved at redigere, og jeg bruger stien én gang, mens alt stadig fungerer. Dette er den gennemgang, jeg følger, i rækkefølge.

Gå gennem gendannelsesflowet, før du har brug for det

Åbn den side, der ville fortryde din ændring. På pfSense er det Diagnostics > Backup & Restore; på OpenWrt er det System > Backup / Flash Firmware; på OPNsense er det System > Konfiguration > Sikkerhedskopier, som også beholder tidligere revisioner, du kan vende tilbage til uden en fil. Du gendanner ikke noget endnu. Du tjekker, om den side åbner fra den sti, du vil have under ændringen, om den ønsker en genstart efterfølgende, og om den afviser et arkiv skrevet af en anden firmwareudgivelse. Netgate dokumenterer sit eget eksport- og gendannelsesflow kl docs.netgate.com.

En gendannelse udskifter hele konfigurationen, så det er ikke en fortrydelse for én regel. Arkivet rummer brugere, certifikater, VPN-nøgler, firewall-regler og de admin-grænsefladeindstillinger, der bestemmer, hvem der må logge ind. Derfor eksporterer jeg umiddelbart før ændringen og navngiver filen med datoen og den enkelte indstilling, jeg har tænkt mig at røre ved. Gendannelse af en månedgammel fil gendanner også en månedgammel tunnel og en månedgammel nøgle.

Hvis platformen kun indlæser arkiver fra den samme udgivelse, skal du bemærke det nu: en firmwareopgradering plus en VPN-redigering i ét vindue efterlader dig med en fil, som routeren ikke vil acceptere.

Bevis en vej ind, der springer tunnelen over

En anden SSH-session fra den samme bærbare computer til den samme offentlige adresse er ikke en anden vej; begge dør sammen. Den uafhængige sti er en af disse: en seriel eller KVM-konsol, en hypervisor eller cloud-konsol, et administrations-VLAN, der kan nås fra en vært, der ikke er bag tunnelen, et andet WAN- eller LTE-modem med sin egen administrative regel eller en person på stedet.

Test den valgte sti, mens routeren er sund. Log ind over det, åbn VPN-siden, og stop før du gemmer. Hvis en låseregel kun lader den nå instrumentbrættet, har du stadig tid til at rette det, og rettelsen skal sidde over afvisningsreglen i regelrækkefølgen.

De fleste routere binder admin-tjenesten til en grænseflade eller en adressefamilie, så en out-of-band-rute skal ankomme, hvor tjenesten lytter. At udvide bindingen til vinduet virker, men det er i sig selv en ændring af den sti, du er afhængig af.

Eksporter filen og skriv triggeren

Flyt eksporten fra routeren og fra den maskine, der kan miste sin tunnel. En sikkerhedskopi, der er gemt på routerens filsystem, forsvinder i præcis den fejl, du planlægger, og en, der sidder på den bærbare computer, der er ved at miste forbindelsen, er knap nok bedre.

Behandl den fil som en legitimation. Den har private nøgler, foruddelte hemmeligheder, certifikatmateriale og hash-hash, så krypter den eller gem den med samme omhu som routerens login.

Skriv derefter en sætning: Hvis jeg ikke kan åbne en ny administrationssession fra PATH inden for N minutter efter ændringen, gendanner jeg FILE og genstarter. Sætningen tvinger omfanget ned til én variabel. Rute-, DNS- og firewall-redigeringer, der er begået sammen, er hurtige at gemme og langsomme til at opdele, når du får et forsøg mere.

Brug en commit-timer, hvor platformen har en

Flere platforme vil fortryde ændringen for dig, hvis du undlader at bekræfte den. RouterOS Safe Mode, indtastet med Ctrl+X i en terminal, fortryder de ændringer, der er foretaget i den session, når sessionen falder. Junos ruller tilbage en ubekræftet forpligtelse bekræftet. Cisco IOS-par genindlæses med genindlæsningsannullering. Enterprise-firewalls iscenesætter almindeligvis afventende ændringer med en auto-revert timer. OpenWrt og de fleste forbrugerfirmware har intet tilsvarende, så der skal timeren være ekstern: en planlagt gendannelse, et cron-job, der skifter en fil tilbage og genstarter tjenesten, eller en genstart til den tidligere konfiguration.

Antag ikke, at en funktion med samme navn dækker samme omfang. Et produkts auto-revert dækker muligvis kun firewallregler; en anden kan dække hele konfigurationen, inklusive den administrationsregel, du lige har ændret for at holde dig tilgængelig. Læs, hvad timeren vender tilbage, før du stoler på den.

En timer er ingen erstatning for en eksporteret fil. Det fejler i det tilfælde, der betyder mest her: sessionen overlever, ledelsesplanet gør det ikke, og intet udløser nogensinde tilbagevenden.

Test en helt ny forbindelse, ikke den åbne

En etableret session bliver ofte ved med at arbejde gennem ændringer, der blokerer for hvert nyt håndtryk, fordi dens tilstand allerede eksisterer, og politikken evalueres, når en forbindelse oprettes. Efter ændringen skal du oprette nye forbindelser fra fjernsiden: en frisk SSH-session, et nyt VPN-håndtryk fra en klient, en normal sideindlæsning til routerens LAN-adresse.

# run these from the remote machine, in a new shell
ssh -o ConnectTimeout=8 admin@"$ROUTER_WAN"
nc -vz "$ROUTER_WAN" 443
dig +short example.internal "@$ROUTER_LAN"

Test derefter nedstrøms for tunnelen i stedet for selve tunnelen: navneopløsning, en TCP-forbindelse til en intern tjeneste og den applikation, du faktisk bruger. En tunnel, der etablerer, men ikke uddeler brugbar DNS, ser sund ud i klientstatus og ødelagt i browseren, og den forskel afgør, om du gendanner filen eller rette en regel.

Gentag efter en tvungen afbrydelse og gentilslutning, og en gang til efter en genstart, hvis platformen genaktiverer tilstanden ved opstart. Nogle konfigurationer består hver live-test og mislykkes ved første opstart med de nye regler på plads.

Luk de døre, du åbnede for vinduet

Fjern den midlertidige administratorregel for enhver kilde, smid-kontoen, den udvidede binding, den tilladelige DNS-regel og fejlretningslogningen. Denne fjernelse er i sig selv en ændring af den sti, du er afhængig af, så kør den nye forbindelsestest efter den, fra den eksterne side.

Behold den eksporterede fil, indtil ændringen har overlevet en genstart og en reel klientgenopret forbindelse, og roter derefter alt, hvad du har delt, mens vinduet var åbent. En konfiguration, der fungerer indtil næste opstart, er en stille måde at miste en router på en uge senere, når ingen husker, hvilken regel der var midlertidig.

Skriv ændringen ned, hvor den næste person ser: hvad flyttede sig, hvilken fil fortryder den, hvilken sti der når konsollen, og hvilken regel var midlertidig.

Før du åbner VPN-siden, skal der eksistere fire ting: et gendannelsesflow, du har testet, en anden sti, du har bevist, en eksporteret fil, du faktisk kan nå, og en skriftlig trigger. Hvis der mangler nogen, skal du rette det først. Ændringen kan vente en time; en lockout kan ikke.

Relaterede artikler