OpenConnect može dovršiti rukovanje tunelom i ipak vas ostaviti bez rute do privatne podmreže, jer su klijent i pomoćnik koji mijenja stanje lokalne mreže dva različita programa. Autentifikacija dokazuje da je pristupnik prihvatio sesiju; ne dokazuje ništa o tome koje su sučelje, rute ili postavke razrješivača instalirane nakon toga. Većina zbunjujućih izvješća dolazi od zamjene pomoćnika kopijom iz starog odgovora, što mijenja ponašanje svake veze na računalu. Pronađite pomoćnika koji pokrenuti klijent doista poziva prije nego što bilo što u njemu uredite.

Dva programa, dvije odgovornosti

Klijent posjeduje prijenos, autentifikaciju i uređaj tunela. Odvojeni pomoćnik posjeduje ono što se događa na lokalnom sustavu kad tunel postoji: adresiranje na sučelju, rute za podmreže koje je pristupnik objavio i konfiguraciju razrješivača. dokumentacija pomoćnika OpenConnect opisuje tu podjelu i okruženje koje pomoćnik dobiva. Razlika je važna tijekom kvara, jer odbijena lozinka i ruta koja nedostaje nisu isti incident čak i kad radna površina prikazuje jedan dijalog za oboje.

Držanje te podjele na umu objašnjava i zašto veza može prijaviti uspjeh dok se privatna imena još ne razrješavaju. Tunel je podignut u oba slučaja, a razlikuje se samo faza lokalne integracije.

Pronađite pomoćnika koji rabi pokrenuti klijent

Putanja se postavlja pri izgradnji paketa i može se nadjačati pri svakom pozivu, pa datoteka koju pamtite iz druge distribucije možda nema nikakve veze s ovom vezom. Pitajte pokrenuti proces, a ne dokumentaciju koja vam je slučajno otvorena.

openconnect --version
ps -o args= -C openconnect
dpkg -L openconnect | grep -i script
ls -l /etc/vpnc/ 2>/dev/null

Ako linija procesa nosi argument --script , ta datoteka pobjeđuje nad kompiliranim zadanim. Starije putanje poput /etc/vpnc/vpnc-script mogu postojati i ostati neiskorištene, zato njihovo brisanje ili uređivanje ništa ne mijenja na novijoj gradnji. Provjerite i datum izmjene, jer pomoćnik koji godinama nikoga nije dotaknuo jak je znak da posao obavlja zadana vrijednost iz paketa.

Integracija s NetworkManagerom treći je vlasnik, s vlastitim pomoćnikom i vlastitim postavkama profila. Slaženje druge skripte za rute ili razrješivač povrh te integracije duplira rute i ostavlja razrješivač za koji dva programa tvrde da ga upravljaju. Odaberite jednog vlasnika po vezi i onemogućite drugog prije testiranja.

Čitajte prvu neuspjelu operaciju, a ne posljednje upozorenje

Konfiguracija sučelja, instalacija ruta, odabir razrješivača i čišćenje zastarjelog stanja odvojeni su koraci, a upozorenje ispisano posljednje često je žalba na čišćenje, a ne kvar koji je slomio vezu. Čitajte prema gore do prve konkretne operacije koja nije uspjela. Greška pomoćnika koja imenuje datoteku ili adresu vrijedi više od deset redaka buke razgradnje.

Usporedite namjeravani lokalni rezultat s opaženim: uređaj tunela postoji, ruta do poznate privatne adrese ide kroz njega, a razrješivač odgovara za privatno ime. Pomoćnik koji uspije u prva dva i padne na trećem upućuje na politiku razrješivača, a ne na usmjeravanje. Pomoćnik koji uopće ne konfigurira uređaj vjerojatno nikada nije ni izvršen, a to je pitanje dopuštenja, a ne mreže. Potvrdite izvršni bit i servisni račun prije nego što prepišete bilo koju logiku.

Provjerite povezivanje, ponovno povezivanje i prekid

Postavljanje je samo polovica ugovora, jer isti pomoćnik mora obnoviti ili ukloniti stanje koje posjeduje kad se tunel zatvori. Pomoćnik koji dodaje rute i nikada ih ne uklanja ostavlja računalo sa zastarjelom putanjom koja nadživi sesiju.

ip -brief address show tun0
ip route get 10.24.8.15
resolvectl status tun0
journalctl -u NetworkManager -b --no-pager | grep -i -E 'vpnc|script'

Pokrenite prva tri dok ste povezani, prekinite vezu, pa ih pokrenite ponovno i potvrdite da su ruta i unos razrješivača nestali. Četvrti redak pokazuje je li pomoćnik uopće pozvan i koju je izvršnu putanju rabila usluga. Zabilježite taj par izlaza u tiketu, jer upravo prije-i-poslije čini grešku čišćenja očiglednom.

Držite pomoćnika zapakiranog i izvršnog za servisni račun, jer skripta koja radi u vašoj ljusci ipak može biti odbijena pod ograničenom servisnom politikom. Kad je prilagodba doista potrebna, dokumentirajte njezinu svrhu i vlasnika i usporedite je sa zapakiranom verzijom pri svakom nadograđivanju. Neobjašnjen fork pomoćnika jedna je od rijetkih stvari koje mogu učiniti da radna veza pokvari za godinu.

Povezani članci