Kodėl jūsų VPN sąsaja nuolat palieka savo firewalld zoną
Zona laikosi, kol tunelis vėl prisijungia, o tada jos nebėra. Išsiaiškinkite, ar tą sąsają valdo NetworkManager, ar firewalld, prieš įklijuodami komandą.
Pridedate tun0 prie tinkamos zonos, programa pradeda veikti, o pataisa išgaruoja per kitą prisijungimą. Tos pačios komandos paleidimas iš naujo veikia, todėl atrodo, kad firewalld pamiršo. Ji nepamiršo; kažkas su stipresne pretenzija į tą sąsają ją priskyrė iš naujo.
Zona išlieka, kol sąsaja sukuriama iš naujo
firewalld zonos priskyrimas sąsajai yra susiejimas, o susiejimai pririšti prie sąsajos objekto tokio, koks jis yra dabar. VPN klientas, kuris išardo įrenginį ir sukuria jį iš naujo, sukuria naują objektą, o naujasis pradeda nuo to, ką sako priskiriantysis komponentas. Štai kodėl simptomas kartojasi kiekvieno prisijungimo metu, o ne su kiekvienu paketu.
Ta pati logika paaiškina elgesį perkraunant: vykdymo metu susiejimai neišgyvena perkrovimo, o nuolatiniai susiejimai taikomi tik tiems įrenginiams, kuriuos firewalld laiko savais.
Prieš ką nors keisdami, išsiaiškinkite, kuris komponentas priskiria zoną.
Prieš ką nors keisdami perskaitykite tris dalykus
Užrašykite zoną, kurią sąsaja turi dabar, aktyvias zonas su jų sąsajomis ir nuolatinį sąsajų sąrašą zonai, kurią ketinate. Šiuos užklausimus paleiskite prieš pakeitimą, po vieno prisijungimo ir po vieno perkrovimo. Trijų rezultatų palyginimas pasakys, ar susiejimas pakeičiamas, ignoruojamas, ar tik taikomas vėlai. Jei nuolatiniame sąraše įrenginys jau įvardytas, o vykdymo zonos sutinka ne, kažkas viršija jūsų pakeitimą.
Kiekviename etape užrašykite ir tikrąjį įrenginio pavadinimą, nes tunelis, kuris šiandien nusileidžia ant tun0, rytoj gali nusileisti ant tun1.
Išsaugotas susiejimas su bendriniu pavadinimu nėra tapatybės patikra, o dvi minutės užrašų sutaupo valandą spėlionių.
Kai ryšį valdo NetworkManager
Jei NetworkManager valdo VPN ryšį, jo profilis neša zoną ir perduoda ją firewalld, kai ryšys aktyvuojamas. Nuolatinis firewalld sąsajos susiejimas tam pačiam įrenginiui tuomet gali būti ignoruojamas, nes savininkas yra NetworkManager. Nustatykite zoną ryšyje ir patvirtinkite, kad redaguojate VPN profilį, o ne nesusijusį fizinį ryšį ar laikiną įrašą.
To atributo pakeitimas gali iš karto paveikti aktyvų ryšį.
Laikykite pasiekiamą administravimo kelią ir prieš taikydami perskaitykite paskirties zonos politiką. ifcfg failo ZONE lauko redagavimas teisingas tik ten, kur tas failas vis dar yra konfigūracijos šaltinis.
Kai susiejimą valdo firewalld
Atskiram tuneliui su sąmoningai stabiliu sąsajos pavadinimu nuolatinis sąsajos pakeitimas yra tinkamas įrankis. Taikykite jį per perkrovą ar gyvavimo ciklą, kurį naudoja jūsų diegimas, tada patikrinkite vykdymo būseną, nes tik nuolatinis pakeitimas aprašo ketinimą, o ne tai, kas aktyvu. Abu gali nesutapti tiek, kiek trunka perkrova.
Jei sąsajos pavadinimas dinamiškas, palaikykite priskyrimą per ryšio gyvavimo ciklą, o ne lenktyniaukite su tuneliu, kuris pirmas pareikalauja pavadinimo.
Nemeskite sąsajos į trusted vien tam, kad programa veiktų.
Išbandykite perkrovą, prisijungimą ir pakartotinį paleidimą
Pakeitimas baigtas tik tada, kai išgyvena visus tris.
Pirmiausia atlikite perkrovą, nes ten dingsta tik vykdymo metu padaryti pakeitimai. Tada iš naujo prijunkite tunelį, nes ten pakeista sąsaja praranda savo susiejimą. Tada paleiskite iš naujo, nes ten galiausiai pasirodo savininko neatitikimas. Kiekviename etape užrašykite zoną ir palyginkite ją su užrašytu ketinimu, ir pažymėkite, kuris žingsnis sukūrė skirtumą.
Jei zona teisinga, o programa vis tiek nepavyksta, problema yra zonos taisyklėse arba klasifikacijoje pagal šaltinį, o ne narystėje. firewalld dokumentacija apie ryšius ir sąsajas yra nuoroda, kaip nuosavybė turėtų veikti.
Įrašykite savininką, reikšmę ir laukiamą rezultatą į runbook, ir kitas perskirstymas bus paaiškinamas.