Výnimka UFW pre VPN pri zmene adresy koncového bodu
Kill switch stále prepúšťa včerajšieho peera, zatiaľ čo sa názov VPN prekladá inam. Obnovte výnimku UFW ako jeden spravovaný postup.
Klient sa pokúša znovu pripojiť a z počítača nič nevychádza, hoci rovnaký profil minulý týždeň fungoval. Názov koncového bodu sa teraz prekladá na inú adresu a odchádzajúca výnimka stále uvádza tú starú. Toto jediné zastarané povolenie stačí na to, aby sa z fungujúceho kill switch stal úplný výpadok, a v žiadnom ukazovateli stavu na ploche to nie je vidieť. Oprava je malý postup, nie jednoriadková úprava.
Tunel sa znovu pripojí a potom už nič neodchádza
Odchádzajúce pravidlo, ktoré uvádza cieľovú adresu, je snímka, zatiaľ čo odpovede DNS snímkou nie sú. Keď poskytovateľ adresu otočí, paket, ktorý klient posiela k novému peerovi, nezodpovedá ničomu a predvolený zákaz ho zahodí. Klient potom hlási vypršanie časového limitu, čo vyzerá skôr ako problém servera než firewallu.
Pripnutie adresy, ktorú vráti verejné vyhľadávanie, zabezpečí, že dnes to funguje a zajtra je to pokazené. To je jednorazová úprava, nie politika údržby.
Opíšte výnimku, ktorú skutočne zamýšľate
Začnite tým, že si zapíšete štyri hodnoty, ktoré pravidlo potrebuje: schválený názov koncového bodu alebo množinu adries, transport, cieľový port a rozhranie, ktorým paket odchádza. Všetky štyri sú súčasťou povolenia a ktorákoľvek z nich môže byť nesprávna, aj keď pravidlo stále vyzerá vierohodne. Pravidlo, ktoré je správne v troch z nich, zlyháva presne tak ako pravidlo, ktoré je nesprávne vo všetkých štyroch. Zapíšte ich skôr, než napíšete príkaz, pretože pravidlo je len také dobré, aký je opis za ním.
Príkaz nižšie ukazuje podobu pre jeden koncový bod IPv4 UDP na káblovom uplinku. Nahraďte obe hodnoty tými, ktoré ste overili voči nasadeniu.
sudo ufw allow out on enp3s0 proto udp to 192.0.2.44 port 1194
sudo ufw status verbose
Toto povolenie neoprávňuje ľubovoľné ciele na rovnakom porte, nevytvára počúvajúci socket a nepokrýva TCP. Manuálová stránka UFW opisuje, ako adresa, rozhranie a protokol zužujú pravidlo, a práve to zúženie je celý zmysel.
Obnovte to ako jeden postup
Berte výnimku ako zdroj s vlastníkom a prechodom, nie ako príkaz, na ktorý si niekto spomenie. Najprv získajte kandidáta z vlastného resolvera a inventára koncových bodov nasadenia a vedome určte, ako sa tento názov prekladá, kým tunel existuje. Potom kandidáta overte voči zamýšľanému protokolu, portu a rodine adries, kým sa dotknete sady pravidiel.
Najprv nainštalujte nové úzke povolenie a potvrďte, že sa načítalo, pretože poslať klienta na adresu, ktorú firewall stále blokuje, vyvolá chybu, ktorá vyzerá ako porucha servera. Nesúvisiace pravidlá počas zmeny nechajte nedotknuté.
Sledujte prechod klienta jeho podporovanou cestou opätovného pripojenia a potvrďte, ktorú vzdialenú adresu si vybral. Aktualizácia samotného DNS existujúci socket nepresunie a nastavenie trvalosti koncového bodu môže držať klienta pri starom peerovi dlho po zmene záznamu.
Napokon zastarané povolenie vedome vyraďte a povoľte schválené prekrývajúce sa okno, kým je stará relácia ešte aktívna. Príliš skoré odstránenie starého záznamu spôsobí krátky výpadok; ponechanie navždy zanechá povolenie, ktoré nikto nevie vysvetliť.
Vedome vyraďte staré povolenie
Odstraňovanie je miesto, kde leží väčšina rizika, pretože staré pravidlo je jediná vec, ktorá práve teraz funguje. Ak inštalácia kandidáta zlyhala, nepokračujte a nemažte záznam, ktorý ešte nesie prevádzku. Ak zlyhá samotné odstránenie, poznačte zastarané povolenie ako zastarané, namiesto toho, aby ste politiku vyhlásili za aktuálnu.
Zopakujte celú kontrolu, keď sa uplink zmení z Ethernetu na Wi-Fi, keď sa zmení transport alebo keď služba rotuje cez niekoľko adries. Pravidlo špecifické pre rozhranie má po zmene siete prestať zodpovedať, a toto správanie je správne, aj keď vyzerá ako regresia.
Potom dokážte zmluvu neškodnou prevádzkou. Schválený koncový bod musí byť počas nastavenia dosiahnuteľný, chránená aplikácia musí po pripojení fungovať a nesúvisiaca priama prevádzka musí zostať počas výpadku zablokovaná. Zahrňte obe rodiny adries a jeden zámerne neúspešný pokus o aktualizáciu, pretože spojenie, ktoré uspeje po jedinej úprave pripnutej adresy, nedokazuje ani jeden z týchto prípadov.