OpenConnect vpnc-script: kuru failu tas izpilda?
Palīgskripts, kas instalē maršrutus un DNS, ir atsevišķs no tuneļa klienta. Atrodiet ceļu, ko izmanto darbojošais klients, pirms aizstāt to ar kopiju no foruma.
OpenConnect var pabeigt tuneļa roku paspiešanu un tomēr atstāt jūs bez maršruta uz privāto apakštīklu, jo klients un palīgskripts, kas maina vietējā tīkla stāvokli, ir divas dažādas programmas. Autentifikācija pierāda, ka vārteja pieņēma sesiju; tā neko nepierāda par to, kura saskarne, kādi maršruti vai kādi risinātāja iestatījumi tika instalēti pēc tam. Lielākā daļa mulsinošo ziņojumu rodas, aizstājot palīgskriptu ar kopiju no vecas atbildes, kas maina katras savienojuma uzvedību mašīnā. Pirms kaut ko tajā mainīt, atrodiet palīgskriptu, ko darbojošais klients patiešām izsauc.
Divas programmas, divas atbildības
Klients pārvalda transportu, autentifikāciju un tuneļa ierīci. Atsevišķs palīgskripts pārvalda to, kas notiek vietējā sistēmā, kad tunelis jau pastāv: adresāciju uz saskarnes, maršrutus uz apakštīkliem, ko paziņoja vārteja, un risinātāja konfigurāciju. OpenConnect palīgskripta dokumentācija apraksta šo dalījumu un vidi, ko saņem palīgskripts. Šī atšķirība ir svarīga kļūmes laikā, jo noraidīta parole un trūkstošs maršruts nav viens un tas pats notikums, pat ja darbvirsma rāda vienu dialogu abiem.
Šī dalījuma paturēšana prātā arī izskaidro, kāpēc savienojums var ziņot par panākumiem, kamēr privātie nosaukumi joprojām netiek atrisināti. Tunelis ir uzcelts abos gadījumos, un atšķiras tikai vietējās integrācijas posms.
Atrodiet palīgskriptu, ko izmanto darbojošais klients
Ceļš tiek noteikts pakotnes būvēšanas laikā un to var pārrakstīt katrā izsaukumā, tāpēc failam, ko atceraties no citas distribūcijas, var nebūt nekāda sakara ar šo savienojumu. Jautājiet darbojošajam procesam, nevis dokumentācijai, kas nejauši ir atvērta.
openconnect --version
ps -o args= -C openconnect
dpkg -L openconnect | grep -i script
ls -l /etc/vpnc/ 2>/dev/null
Ja procesa rindā ir --script arguments, tad šis fails uzvar pār kompilēto noklusējumu. Vecāki ceļi, piemēram, /etc/vpnc/vpnc-script var pastāvēt un palikt neizmantoti, tāpēc to dzēšana vai rediģēšana neko nemaina jaunā būvējumā. Pārbaudiet arī modificēšanas datumu, jo palīgskripts, kam gadiem neviens nav pieskāries, ir spēcīga zīme, ka darbu dara iepakotais noklusējums.
NetworkManager integrācija ir trešais īpašnieks ar savu palīgskriptu un saviem profila iestatījumiem. Otra maršrutu vai risinātāja skripta uzlikšana virs šīs integrācijas dublē maršrutus un atstāj risinātāju, ko divas programmas apgalvo, ka pārvalda. Izvēlieties vienu īpašnieku katram savienojumam un pirms testēšanas izslēdziet otru.
Lasiet pirmo neizdevušos darbību, nevis pēdējo brīdinājumu
Saskarnes konfigurācija, maršrutu instalēšana, risinātāja izvēle un novecojuša stāvokļa tīrīšana ir atsevišķi soļi, un pēdējais izdrukātais brīdinājums bieži ir tīrīšanas sūdzība, nevis kļūme, kas pārtrauca savienojumu. Lasiet uz augšu līdz pirmajai konkrētajai neizdevušajai darbībai. Palīgskripta kļūda, kas nosauc failu vai adresi, ir vērtīgāka par desmit rindām demontāžas trokšņa.
Salīdziniet paredzēto vietējo rezultātu ar novēroto: tuneļa ierīce pastāv, maršruts uz zināmu privāto adresi iet caur to, un risinātājs atbild par privātu nosaukumu. Palīgskripts, kas izdodas pirmajos divos un neizdodas trešajā, norāda uz risinātāja politiku, nevis maršrutēšanu. Palīgskripts, kas ierīci nemaz nekonfigurē, droši vien nekad netika palaists, un tas ir atļauju, nevis tīkla jautājums. Pirms jebkādas loģikas pārrakstīšanas apstipriniet izpildes bitu un servisa kontu.
Pārbaudiet savienošanu, atkārtotu savienošanu un atvienošanu
Iestatīšana ir tikai puse no līguma, jo tam pašam palīgskriptam ir jāatjauno vai jānoņem stāvoklis, kas tam pieder, kad tunelis aizveras. Palīgskripts, kas pievieno maršrutus un nekad tos nenoņem, atstāj mašīnu ar novecojušu ceļu, kas pārdzīvo 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'
Palaidiet pirmos trīs, kamēr esat savienots, atvienojieties, pēc tam palaidiet tos vēlreiz un apstipriniet, ka maršruts un risinātāja ieraksts ir pazuduši. Ceturtā rinda parāda, vai palīgskripts vispār tika izsaukts un kuru izpildes ceļu serviss izmantoja. Saglabājiet šo izvades pāri biļetē, jo tieši salīdzinājums pirms un pēc padara tīrīšanas kļūdu acīmredzamu.
Turiet palīgskriptu iepakotu un servisa kontam izpildāmu, jo skripts, kas darbojas jūsu čaulā, tomēr var tikt noraidīts ierobežotas servisa politikas apstākļos. Kad pielāgošana patiešām ir nepieciešama, dokumentējiet tās mērķi un īpašnieku un katrā atjauninājumā salīdziniet ar iepakoto versiju. Nepaskaidrots palīgskripta atzars ir viena no nedaudzajām lietām, kas var likt strādājošam savienojumam neizdoties pēc gada.