Ce poate schimba un profil VPN predat pe dispozitivul tău
Un profil este un set de instrucțiuni pentru un client care poate redirecționa traficul și poate adăuga încredere. Citește ce cere înainte de a tasta o parolă în el.
Să dai clientului tău un profil VPN înseamnă să îi dai o configurație scrisă de altcineva, pe care acel program o execută apoi pe mașina ta. Importul ei poate schimba unde merge traficul acoperit, în ce partener are încredere dispozitivul tău și, în unele formate, care programe locale pornesc atunci când tunelul se ridică. Fișierul nu este un semn de carte; este un mic program într-un format declarativ.
Citește-l așa cum ai citi un script de shell din aceeași sursă.
Clientul îl interpretează, nu tu
Fiecare câmp din fișier este o instrucțiune pentru un anumit client. Punctul final și protocolul decid unde merge tunelul, blocul de autentificare decide ce secret este cerut, iar directivele de rutare decid ce intră în el. Certificatele sau o cheie privată pot fi încorporate ca blocuri în loc să fie referite ca fișiere, și de aceea un singur fișier text câteodată poartă tot ce este necesar pentru a se da drept tine în fața unei porți. Exact această proprietate face partajarea obișnuită de fișiere atât de periculoasă.
Profilurile OpenVPN pot purta și cârlige de script, căi de plugin și un nivel de securitate care stabilește dacă acele cârlige pot rula. Această combinație face un profil necunoscut vrednic de citit linie cu linie în loc de un dublu clic. Clientul va face exact ce spune fișierul și o va face cu privilegiile tale.
Modificările de rutare se văd după o singură conexiune
Un profil cu tunel complet instalează rute care trimit totul prin poartă, în timp ce un profil cu tunel divizat trimite doar prefixe selectate. Unele profiluri împing și un server DNS, ceea ce schimbă în tăcere cine îți vede interogările. Nimic din toate acestea nu este răuvoitor în sine și nimic din toate acestea nu este evident din numele fișierului.
Compară tabelul de rutare înainte și după prima conexiune și vei vedea intenția dintr-o privire. Un profil anunțat ca acces la o singură aplicație internă, dar care instalează o rută implicită mai largă, îți spune ceva despre autorul său.
Materialul de încredere și cârligele duc greutatea reală
Un profil poate furniza informații de încredere clientului VPN, iar un pachet de configurare de platformă poate merge mai departe și poate instala un certificat sau o rădăcină într-un depozit de sistem. Sunt domenii diferite cu consecințe diferite. Cazul din domeniul clientului afectează validarea unei aplicații; cazul la nivel de sistem afectează tot ce folosește depozitul de încredere al platformei.
Cârligele de script și pluginurile sunt cealaltă jumătate. O directivă care rulează o comandă la conectare, sau un plugin încărcat în procesul clientului, are permisiunile tale și nimic din izolarea clientului. Dacă un profil pe care nu l-ai cerut conține așa ceva, este o întrebare pentru persoana care l-a trimis.
Niciuna dintre cele două categorii nu este automat ostilă. Implementările corporative le folosesc pe amândouă. Ideea este că fiecare cere o explicație pe care o poți verifica.
Verifică proveniența, apoi introdu secretul
Stabilește cine a emis fișierul printr-un canal în care ai deja încredere, nu prin mesajul care l-a livrat. Compară detaliile punctului final și ale certificatului cu documentația publicată de operator. Dacă un profil a sosit fără să îl ceri, obține unul nou direct de la operator în loc să repari copia care ți s-a dat. Întreabă ce versiune de client acceptă operatorul, pentru că același fișier poate fi interpretat diferit de alt client.
grep -nE '^(remote|proto|auth-user-pass|redirect-gateway|route|route-nopull)' office.ovpn
grep -nE '^(up|down|plugin|script-security|setenv)' office.ovpn
openssl x509 -in embedded-ca.crt -noout -subject -issuer -dates
Nu pune niciodată o parolă într-un câmp neexplicat ca să vezi dacă funcționează, și nu accepta niciodată o cerere de privilegii necunoscută doar ca să termini un import. O conexiune reușită dovedește că punctul final a răspuns, și nimic mai mult.
Elimină copia importată, nu descărcarea
Clienții copiază profilul în propriul depozit, așa că ștergerea fișierului descărcat lasă conexiunea importată activă. Elimin-o prin interfața clientului însuși și verifică dacă a dispărut și orice certificat adăugat în timpul importului. Apoi confirmă că au dispărut și rutele pe care le-a instalat.
Dacă un certificat a fost instalat la nivel de sistem, eliminarea profilului nu este suficientă. Acea curățare ține de gestionarea încrederii platformei și merită făcută deliberat în loc să speri că următoarea repornire se ocupă de ea.