SNX na Linuxu: 32-bitne biblioteke i resolver koji se resetira
SNX na Linuxu pada na loaderu, tablici ruta ili resolveru, i svaki od tih kvarova izgleda kao problem s prijavom. Obradite četiri simptoma po redu.
Check Pointov SSL Network Extender pada na Linuxu na četiri prepoznatljiva načina, a tri se od njih pogrešno čitaju kao problem s prijavom. Ili se binarni fajl ne pokreće, ili se pokrene i ne ostavi rutu, ili se poveže i razrješavanje imena umre, ili portal u pregledniku radi a naredbeni redak ne. Obradite ih tim redom, jer je svaki uvjet ulaza za sljedeći.
Simptom prvi: loader odbija prije prijave
Instalater povučen s vatrozida stavlja 32-bitni binarni fajl sa setuid-root u /usr/bin/snx. Na 64-bitnoj distribuciji ne radi dok se ne omogući arhitektura i386 i dok ne postoje biblioteke s kojima se linka.
sudo dpkg --add-architecture i386
sudo apt update
sudo apt install libstdc++5:i386 libstdc++6:i386 libx11-6:i386 libpam0g:i386
ldd /usr/bin/snx | grep "not found"Prazna lista not found kapija je za sve nakon nje. Točan skup paketa mijenja se između izdanja: jedno radno izvješće tražilo je libstdc++5:i386, libx11-6:i386 i libpam0g:i386, drugo je tražilo i libstdc++6:i386. Čitajte ldd umjesto da kopirate popis paketa iz tutorijala pisanog za drugu distribuciju.
Ako snx uopće nije pronađen, instalater nikad nije završio ili se instalirao negdje izvan vašeg PATH-a. To je druga vrsta kvara i vrijedi ga potvrditi prije nego dodate arhitekture u sustav. Provjerite s command -v snx i pogledajte u direktorij koji je instalater prijavio. Dodavanje i386 paketa na stroj na kojem binarni fajl jednostavno ne postoji ne popravlja ništa.
Simptom drugi: prijava uspije a ništa se ne rutira
Uspješna prijava stvara tunsnx i sama uređuje tablicu ruta, pa provjerite što stvarno postoji prije nego promijenite bilo što drugo.
ip -br addr show tunsnx
ip route | grep tunsnx
snx -dKoristite snx -d za rastavljanje. Ubijanje procesa ostavlja sučelje i njegove rute za sobom, a sljedeći pokušaj onda pada zbog razloga koji nema veze s vjerodajnicama. Prva prijava također zapisuje potpis poslužitelja pod /etc/snx/, zbog čega nenadzirana skripta može trebati jedno interaktivno pokretanje prije nego uopće proradi. Brišite to stanje samo kad namjeravate ponovno odobriti poslužitelj.
Simptom treći: imena se razrješavaju dok se tunel ne podigne
Ovo je onaj koji tiho puca. snx upisuje gurnute DNS poslužitelje izravno u /etc/resolv.conf. Gdje je ta putanja simbolička poveznica u /run/systemd/resolve/, izmjena se može izgubiti pri sljedećem događaju resolvera, a nakon prekida gurnuti unosi mogu jednako tako ostati.
Dva rasporeda rade, a izbor treba biti namjeran, a ne ono što je predložio prvi rezultat pretrage:
- Preuzmite datoteku: zamijenite simboličku poveznicu statičkom datotekom i instalirajte
libnss-resolveplus njegovu i386 varijantu, da imenska služba i dalje ima pričuvu kad se datoteka prepiše ispod nje. - Zadržite systemd-resolved kao vlasnika i registrirajte poveznicu tunela:
resolvectl dns tunsnx 10.0.0.10, paresolvectl domain tunsnx corp.example, i potvrdite sresolvectl status.
Zapišite DNS poslužitelje prije VPN-a prije povezivanja. Ako datoteku uređujete ručno, uklanjanje gurnutih unosa poslije dio je postupka, a ne opcionalno čišćenje, jer prijenosnik koji zadrži korporativni DNS nakon prekida neće moći razriješiti ništa drugo.
Simptom četvrti: portal radi a CLI ne
Novija izdanja vatrozida premjestila su međuprogramsku opremu iz preglednika u lokalni Java daemon, pa portal razgovara s lokalnim agentom na portu 14186. Ta adresa treba izuzetak za certifikat u pregledniku i proces koji radi.
ps ax | grep cshell
/usr/bin/cshell/launcherNaredbeni redak je odvojena putanja: snx -s vpn.example.com -u user, a ~/.snxrc čuva poslužitelj, korisničko ime i postavku ponovne autentifikacije. Radna sesija portala ne govori ništa o tome je li CLI ispravno instaliran, a goli klijent ne obrađuje jednokratne kodove.
Prečac s kontejnerom koji košta više nego što štedi
snx provjerava modul tun, učitava ga kad ga nema, stvara sučelje tunela, prepisuje rute i pušta promet kroz njega. Reproducirati to unutar kontejnera znači montirati /dev i /lib/modules i dati široke mogućnosti, što kontejneru predaje većinu mrežne administracije hosta.
Kad je pješčanik doista potreban, virtualni stroj je čišća granica: klijent dobije kernel koji smije mijenjati, a host zadrži svoju tablicu ruta. Odaberite to prije nego potrošite poslijepodne na mogućnosti koje ćete požaliti što ste dali.