Kādā foruma pavedienā ifconfig-noexec tiek piedāvāts kā risinājums, kas uztur SSH sesiju dzīvu, kad paceļas tunelis. Pamatojums izklausās ticami, līdz apskaties, ko šī opcija īsti aizskar. Tā neļauj OpenVPN konfigurēt tuneļa saskarnes adresi un tās vērtības nodod skriptiem; par to, kur dodas atbildes uz jūsu pārvaldības savienojumu, tā neko nesaka. Ticēt pretējam rada tuneli bez lietojamas adreses un SSH sesiju, kas tomēr iet bojā.

Ko šī opcija patiešām nodod

Pēc noklusējuma klients paceļ tuneļa ierīci un piešķir vietējo un attālo adresi, ko serveris tam deva. Kad ifconfig-noexec ir iestatīta, šis solis tiek izlaists, un saskaņotās vērtības tiek eksportētas skripta vidē, lai kaut kas cits tās varētu piemērot.

Īpašumtiesības pāriet. To vietā nekas netiek izdomāts.

Tātad jautājums, uz kuru opcija atbild, ir kas konfigurē saskarni, un jautājums, uz kuru tā neatbild, ir kā paketes atrod ceļu atpakaļ pie jums. Turi šos divus šķirtus, citādi pavadīsi visu vakaru rediģējot maršrutus, lai kompensētu saskarni bez adreses.

Trīs līdzīgas opcijas ar atšķirīgiem uzdevumiem

Šo saimi ir viegli sajaukt, jo nosaukumi atšķiras ar vienu vārdu un simptomi pārklājas. Pirms izvēlies kādu no tām, izlasi, ko katra nomāc.

OptionWhat stops happening
ifconfig-noexecOpenVPN's own tunnel-address configuration; values go to scripts instead
route-noexecAutomatic route addition and removal; route details go to a script
route-nopullServer-pushed routes and related options such as DNS are rejected

Šīs ir alternatīvas, kas jāsaprot atsevišķi, nevis kopums, kas jāsalīmē kopā. Adreses konfigurācijas nomākšana nenomāc maršruta izmaiņas, ugunsmūra noteikumus vai stumtās opcijas, kas pārvadā DNS. Deleģēts skripts arī drīkst mainīt maršrutus, un tas ir lēmums, ko tu nodod, nevis no kā izvairies.

Ja piegādātāja klients ietver dzinēju, izmanto tā atbalstīto integrāciju, nevis iemet zema līmeņa direktīvu profilā un ceri, ka ietvars to ievēros. Ietvari bieži atjauno profilu savienošanās laikā, tāpēc manuāls labojums pazūd bez kļūdas. Pirms velti vakaru failam, pārbaudi, kur klients glabā savus iestatījumus. Tas attiecas uz katru tabulas rindu, ne tikai to, kuras dēļ atnāci.

SSH sesija, ko gribēji aizsargāt

SSH savienojumam ir avota adrese, galamērķa adrese un atbildes ceļš. Serverī, kur tikko uzstādīts pilna tuneļa noklusējums, atbilde uz tavu publisko adresi sakrīt ar tuneli, un VPN vārteja to nomet.

Nekas tuneļa saskarnes adreses konfigurācijā to nemaina.

To izlabo konkrētāks maršruts tavai pārvaldības adresei caur vārteju pirms tuneļa, vai politikas noteikums, kas novirza šo trafiku, plus filtrēšanas iestatījumi, ko piemēro tavs resursdators. Abas problēmas dažkārt parādās kopā, un tā viena tiek sajaukta ar otras ārstēšanu. Pārbaudi tās atsevišķi: paceļ tuneli bez opcijas, apskati saskarnes adresi un atbildes ceļu, tad izlem, kura no abām patiešām ir salauzta.

Kas deleģētajam skriptam jāpārņem

Ja tiešām gribi, lai saskarni konfigurē cits īpašnieks, uzskaiti darbu: piemēro vietējo un attālo adresi, paceļ ierīci, atjauno vai noņem adresāciju izslēgšanas laikā un izdari to pašu vēlreiz pēc atkārtotas savienošanās. Vienas veiksmīgas sesijas vērtības nedrīkst iekodēt cieti, jo serveris nākamreiz var dot citu pāri.

Vides mainīgie, ko eksportē klients, ir vienīgā atbalstītā ievade šim darbam.

env | grep -E '^ifconfig_|^route_'

Jebkurā route-up skriptā šie mainīgie ir pieejami; no cron uzdevuma vai manuālas čaulas tie nav. Apstiprini, kuru dzīves cikla āķi izmanto tava versija, un apstiprini, ka āķis darbojas ar pietiekamām tiesībām mainīt saskarni, jo klients jau var būt pārgājis uz nepriviliģētu lietotāju.

Pārbaudi visu dzīves ciklu, nevis vienu sesiju

Paceļ tuneli, pārbaudi adresi ierīcē, tad pievienojies no jauna un pārbaudi vēlreiz. Konfigurācija, kas nostrādā vienreiz un neizdodas otrajā mēģinājumā, parasti nozīmē, ka deleģētais solis darbojas tikai pirmajā savienojumā.

Tad pārbaudi abus pieņemšanas kritērijus kopā: jauns SSH savienojums pa paredzēto pārvaldības ceļu darbojas, un atļauta lietojumprogramma pareizi izmanto tuneli.

Veci SSH sesija, kas nejauši izdzīvo, kamēr tunelim nav adreses, nav panākums, un tieši šo stāvokli šī opcija rada, kad neviens nepārņem darbu. Vispirms pārbaudi saskarnes adresi, tad pārvaldības atbildes ceļu, tad lietojumprogrammu. Ja divi no trim ir nepareizi, opcija pārvietoja darbu, bet nedeva tam īpašnieku.

Saistītie raksti