Cron kas dešimt minučių iš naujo paleidžia visiškai sveiką VPN, o ta pati užduotis palieka mirusį veikti visą savaitę. Abi klaidos kyla iš to, kad «veikia» traktuojama kaip vienas faktas, nors jų yra bent keturi. Įrenginys gali būti administraciškai įjungtas, teisingai maršrutizuotas, visiškai užšifruotas ir vis tiek nieko naudingo neperduoti. Pirmiausia atskirkite stebėjimus, ir patikra beveik pati parašys save.

Jungties vėliavėlės apibūdina įrenginį, o ne kelią

Patikra, kurią visi kopijuoja, ieško techninės įrangos adreso, sudaryto vien iš nulių. Šis triukas kai kuriuose tvarkyklėse atskiria tikrą sąsają nuo pakaitinės, o likusiose nieko neįrodo, nes tun įrenginys apskritai neturi MAC, kurį galėtų pranešti. ip -brief link show tun0 vietoj to pateikia vėliavėles: UP reiškia, kad administratorius įjungė įrenginį, o LOWER_UP reiškia, kad tvarkyklė laiko jungtį tinkama naudoti. Perskaičius kartu, jos sako, kad įrenginys egzistuoja ir nėra administraciškai išjungtas. Nė viena iš jų nesako, kad paketas turi kur eiti.

OpenVPN sukuria savo tun įrenginį prieš įdiegiant maršrutus, todėl vėliavėlės gali atrodyti tobulai, kol niekas nemaršrutizuota. Traktuokite jas kaip išankstinę sąlygą, niekada kaip atsakymą.

Paklauskite, kur paketas eitų

Maršruto paieška atsako į klausimą, į kurį vėliavėlės negali. ip route get 10.8.0.1 from 10.8.0.2 įvardija sąsają, šaltinio adresą ir lentelę, kurią naudotų branduolys, ir būtent su tuo reikia tikrinti skaidytą tunelį. Be šaltinio adreso jūs klausiate kažko kito, o su politikos maršrutizavimu atsakymas gali skirtis priklausomai nuo šaltinio. Tai pigiausias sąžiningas testas, nes jis konsultuojasi su tomis pačiomis taisyklėmis, kurias naudos jūsų srautas.

WireGuard atveju pridėkite rankos paspaudimą. wg show atspausdina paskutinio rankos paspaudimo laiko žymą kiekvienam partneriui, o žyma, kuri nustojo judėti į priekį, reiškia, kad partnerio nebėra, kad ir ką sakytų sąsajos vėliavėlės. Sukonfigūruota sąsaja be neseno rankos paspaudimo yra vienas dažniausių klaidingų teigiamų rezultatų naminėje stebėsenoje.

220 lentelė pasakoja IPsec istoriją

strongSwan į 220 lentelę įdiegia sutartų selektorių maršrutus, kai maršrutų diegimas įjungtas. ip route list table 220 todėl atskiria suderėtą nuo maršrutizuoto: tuščia lentelė šalia įkeltos jungties reiškia, kad IKE ir CHILD SA buvo pakelti, bet joks srautas į juos nenukreipiamas. Patikrinkite ip xfrm state šalia, nes ji išvardija įdiegtas saugos asociacijas ir jų galinius taškus.

Spąstų politika yra atvejis, į kurį reikia atkreipti dėmesį. Ji laukia įdomaus srauto, o ne jį maršrutizuoja, todėl lentelė lieka tuščia, kol kažkas nesuaktyvina tunelio.

Tvarkyklės būsena ir demono būsena yra skirtingi sąrašai

NetworkManager išvardija tik jam priklausančias jungtis. nmcli -t -f NAME,TYPE connection show --active nieko negrąžina tuneliui, kurį tiesiogiai paleido wg-quick arba OpenVPN demonas.

Šis skirtumas svarbus, kai scenarijus turi nuspręsti, kurio iš dviejų tvarkyklių klausti. Pasirinkite tą, kuris iš tikrųjų valdo tunelį šiame hoste, ir ignoruokite kito tylą. Jei yra abu, nuspręskite, kuris yra įgaliotas, ir išjunkite antrąjį, nes du tvarkyklės, perrašantys maršrutus vienoje sąsajoje, sukelia gedimus, kurių niekas negali atkartoti. Trūkstamas įrašas yra informacija apie tvarkyklę, o ne apie tunelį.

Susiekite kitą žingsnį su patikra, kurios jam reikia

UDP prievado tikrinimas nieko neįrodo apie pasirengimą, nes UDP neturi rankos paspaudimo ir nc -u pavyksta vos paketui išėjus. Patikrinkite, ką kitas žingsnis iš tikrųjų sunaudoja: TCP ryšį su peradresuotu prievadu, užklausą į hostą tunelio viduje, vardą, kuris išsprendžiamas tik ten. Apribokite laukimą skirtuoju laiku ir bandymų skaičiumi, ir garsiai žlunkite, kai jie baigiasi.

Kabliukai lenkia apklausą, kai klientas juos siūlo. --up ir --down OpenVPN scenarijai paleidžiami po to, kai sąsaja pakeičia būseną, o tai visiškai pašalina lenktynes, bet jie veikia su privilegijomis, kurias demonas pasiliko. Jei OpenVPN per user ir group nusileido į neprivilegijuotą paskyrą, kabliukas veikia kaip ta paskyra. Tada sistemos tarnybos paleidimas iš naujo reikalauja sudo, leidžiančio būtent tą komandą. Patikėkite kartojimą paslaugų tvarkyklei, o ne cron ciklui: apribota paleidimo iš naujo politika su paleidimų limitu atskleidžia sugadintą tunelį, o neribotas ciklas jį slepia neribotai.

Susiję straipsniai