Die meeste mense lees 'n .ovpn-lêer soos hulle 'n router se instellingsbladsy lees: adresse, roetes, 'n syferlys. Die deel wat kode uitvoer, sit naby die onderkant, langs opdragte wat soos loodgieterswerk lyk, en dit loop met watter voorreg die kliënt ook al het. Dit is die gaping wat 'n sorgelose of kwaadwillige profiel benut, en dit is ook die gaping wat 'n nuttige DNS-hulpprogram drie weke later in 'n ondersteuningsprobleem verander. Die gebeurtenisopdrag, die sekuriteitsvlak en die lêer se eienaarskap bepaal wat kan gebeur; die skrip se inhoud bepaal wat werklik gebeur. Lees al vier voordat jy konek.

'n Profiel wat 'n hulpprogram laat loop, is 'n program, nie 'n instellingslêer nie

Opdragte soos route en dhcp-option beskryf toestand wat die kliënt moet vestig, en die kliënt behandel hulle as data. 'n up-skrip is anders: die kliënt begin dit as 'n proses en gee dit 'n omgewing vol verbindingsbesonderhede, so wat die skrywer ook al geskryf het, loop met jou rekening se regte. Op 'n skootrekenaar waar die gebruiker 'n administrateur is, is dit 'n wye deur vir 'n lêer wat as 'n aanhangsel of 'n plak uit 'n forumdraad opgedaag het. Die onderskeid is nie stilisties nie, dit is die verskil tussen konfigurasie en kode.

Die mite wat ons moet laat vaar, is dat 'n profiel net verkeer kan herlei. 'n Hulpprogram wat ip route add uitvoer en een wat curl teen 'n afgeleë gasheer uitvoer, is dieselfde meganisme, en die profiel lyk van buite identies. Niks in die lêer se voorkoms sê jou watter een jy het nie, en daarom moet die hersiening tot by die skrip self reik.

Wat uitvoering werklik bepaal, en hoe die magtigende lyne lyk

Drie dinge beheer 'n hulpprogram: die gebeurtenisopdrag wat dit benoem, die script-security-vlak wat dit toelaat, en die kliëntplatform se eie implementering. 'n Profiel kan 'n haak versoek en steeds niks sien gebeur nie, want 'n mobiele kliënt of 'n afgeskaalde lessenaarbou mag daardie gebeurtenis glad nie implementeer nie. Net so sê 'n profiel wat meer toestemming vra as wat sy funksie nodig het, iets oor sy oorsprong. 'n Toestemmingsvlak is 'n vermoë, nie 'n goedkeuring nie. Die magtigende lyne lyk so, met 'n pad wat vir jou s'n staan.

script-security 2
up /etc/openvpn/update-resolv-conf.sh
down /etc/openvpn/update-resolv-conf.sh

Vlak 0 weier eksterne programme en vlak 1, die verstek, laat net die kliënt se ingeboude uitvoerbare lêers toe, so 'n haak benodig 2 of hoër; vlak 3 bestaan hoofsaaklik vir ou wagwoorddeurgif en word beste vermy. 'n Profiel wat met 'n haak verskaf word, benodig beide die opdrag en daardie vlak, en daarom verdien een lyn naby die onderkant van die lêer dieselfde ondersoek as die sertifikaatblok. Die OpenVPN-handleiding lys die toestemmingsvlakke, en die bewoording daarvan is die moeite werd om te lees langs wat die profiel werklik vra.

Eienaarskap, pad en waarmee die hulpprogram gevoed word

'n Profiel wat jy vertrou en wat na 'n skrip wys wat 'n ander rekening kan herskryf, is nie 'n betroubare reëling nie, want die hersiening wat jy gister gedoen het, beskryf nie meer wat vandag loop nie. Kyk na die eienaar en modus van die hulpprogram, en kyk dat die gekonfigureerde pad na die lêer oplos wat jy ondersoek het, eerder as na 'n naam wat iets anders kan oorskadu. Argumente en omgewing verdien dieselfde blik: die kliënt gee verbindingsbesonderhede aan die haak, en 'n hulpprogram wat sy hele omgewing teken, skryf dalk geloofsbriewe in 'n ondersteuningskaartjie. Verkies 'n gedokumenteerde integrasie van die operateur of die platform bo 'n DNS-skrip wat uit 'n onverwante inskrywing gekopieer is, want twee oplosserbestuurders wat oor dieselfde lêer baklei, lewer 'n fout wat soos 'n stukkende VPN lyk.

Wanneer jy 'n falende haak rapporteer, redigeer die omgewing voordat jy dit enige plek plak. Die dump wat jou help ontfout, kan ook die token dra wat jou verifieer.

Opruimfoute verskyn nadat die tonnel weg is

'n up-hulpprogram voeg roetes en oplosserinstellings by, en die down-hulpprogram is veronderstel om hulle weer weg te neem. Wanneer die down-haak ontbreek, stilweg misluk, of nooit loop nie omdat die kliënt doodgemaak is, oorleef die oorblyfsels die sessie. Verkeer neem dan 'n pad wat niemand beplan het nie en name los op deur 'n oplosser wat verwyder moes gewees het, terwyl die tonnel self gesond lyk. Daardie simptome kom ná die ontkoppeling, en daarom word die netwerk eerder as die profiel daarvan blameer.

Toets die afbreek as 'n eie stap: bring die tonnel op, let op die roetes en die oplosser, laat dit val, en bevestig dan dat albei weg is. 'n Profiel wat skoon konek, kan steeds toestand agterlaat, en 'n nul-uitgangskode van die hulpprogram bewys nie dat die oplosser op die plek beland het waar jy dink nie.

Hersien die hulpprogram en hou 'n uitweg

Lees die skrip van begin tot end en soek drie dinge: opdragte wat voorreg nodig het, vasgekodeerde paaie wat dalk nie op jou stelsel bestaan nie, en enige netwerkoproep wat dit maak. Kyk dan hoe dit misluk, want 'n hulpprogram wat foute insluk, verander 'n konfigurasiefout in 'n raaisel. As jy nie in een sin kan sê wat die skrip doen en wie dit kan verander nie, is jy nie gereed om dit te aktiveer nie. 'n Profiel wat meer voorreg vra as wat daardie sin vereis, is die teken om te stop.

Hou die laaswerkende profiel en die hulpprogram waarna dit verwys het in beskermde berging, met albei weergawes aangeteken, sodat 'n terugrol 'n kopie is eerder as 'n herkonstruksie op die slegste moontlike oomblik. As die hulpprogram net bestaan vir 'n verspreiding of kliëntweergawe wat dit nie meer nodig het nie, onttrek dit in die konfigurasie wat die instelling besit eerder as om voorregte te verhoog totdat die foute ophou. Dit is die uitweg: minder bewegende dele, nie meer toestemming nie.

Verwante artikels