În Windows, întrebarea "unde este profilul meu OpenVPN" are două răspunsuri diferite, iar alegerea greșită costă o după-amiază. OpenVPN GUI comunitar tratează un director ca listă de profiluri: fiecare fișier .ovpn din folderul configurat apare în meniul din tray, iar un fișier eliminat din acel folder dispare. OpenVPN Connect lucrează dintr-un depozit de import, așa că păstrează un profil pe care l-ai șters de pe disc și ignoră un fișier pe care l-ai copiat acolo. Comparația de mai jos este cea pe care o folosesc ca să decid ce folder deschid înainte să ating ceva.

O listă de folder versus un depozit de import

GUI comunitar enumeră fișierele la pornire: citește un director de configurare, ales la instalare, iar un fișier .ovpn aflat acolo este un profil. Închide clientul, copiază un fișier în acel folder, pornește-l din nou, iar intrarea este în meniu.

Connect, în schimb, își construiește lista din înregistrări scrise în timpul importului, așa că un fișier copiat este invizibil, în timp ce un profil importat supraviețuiește ștergerii descărcării originale. Această singură diferență explică majoritatea rapoartelor că cei doi clienți păstrează profilurile în locuri diferite, pentru că așa fac.

GUI comunitar: ce folder este folosit de fapt

Două foldere contează. O instalare pentru un singur utilizator citește %USERPROFILE%\OpenVPN\config; o instalare pentru toți utilizatorii citește C:\Program Files\OpenVPN\config, sau calea x86 când clientul este 32-bit. Dacă un profil apare doar pentru un cont Windows, se află în folderul pentru un singur utilizator, iar celălalt cont nu îl va vedea niciodată.

Nu deduce calea din programul de instalare. GUI acceptă un argument --config_dir și își amintește directorul cu care a fost pornit, așa că o comandă rapidă poate indica cu totul altundeva. Verifică ținta comenzii rapide și câmpul Start in, sau setările GUI, înainte de a crea orice fișier.

Eliminarea este eliminarea fișierelor. Închide mai întâi GUI ca să nu țină intrarea în memorie, șterge .ovpn împreună cu orice fișiere de certificat sau cheie păstrate alături, apoi pornește din nou clientul.

Folderul pentru toți utilizatorii necesită o ștergere cu drepturi ridicate. O ștergere care acolo nu face nimic în tăcere este UAC, nu un defect al clientului.

Connect: depozitul de import și capcana dublă AppData

Versiunile 2.x și 3.x actuale păstrează profilurile în %APPDATA%\OpenVPN Connect\profiles. Versiunile din jurul 2.5 foloseau în schimb %ProgramFiles(x86)%\OpenVPN Technologies\OpenVPN Client\etc\profile, motiv pentru care răspunsurile vechi și noi de pe forumuri par contradictorii. O mașină actualizată la fața locului poate păstra încă ambele.

Căile se deformează când sunt povestite din nou. %AppData% se rezolvă deja în AppData\Roaming, așa că scrierea %AppData%\Roaming\OpenVPN Connect\profiles se extinde în AppData\Roaming\Roaming și nu indică nimic. Folosește variabila sau calea literală, niciodată un amestec al celor două.

Șterge prin client: deschide Profiles, folosește pictograma creion, alege Delete. Asta elimină înregistrarea și copia stocată împreună. Eliminarea folderului în timp ce Connect rulează poate lăsa o înregistrare care nu deschide nimic, iar aceasta este plângerea "profile still shows up" în cealaltă formă a ei.

Copia importată este cea pe care o rulează clientul. Editarea .ovpn lăsat în Downloads nu schimbă nimic, pentru că Connect citește copia sa stocată; pentru a schimba un remote sau un cipher, editează profilul în interiorul clientului, sau editează fișierul și importă-l din nou .

De ce revine un profil șters

Două instalări din aceeași familie de clienți este motivul obișnuit. Un GUI pentru un singur utilizator și un GUI pentru toți utilizatorii au directoare de configurare separate, așa că ștergerea dintr-unul îl lasă pe celălalt intact, iar tray-ul afișează în continuare numele. Programs and Features este locul unde confirmi dacă ambele sunt instalate.

Al doilea motiv este un profil care nu a fost niciodată în folderul verificat. Deschiderea unui .ovpn o dată dintr-o partajare de rețea sau dintr-un folder Downloads îl poate copia în directorul de configurare pentru un singur utilizator, iar profilurile Connect importate există doar în AppData. Înainte de a edita ceva, caută numele fișierului atât în %USERPROFILE%, cât și în %APPDATA%. Un folder de profil ține de obicei cheia privată lângă .ovpn, așa că nu lipi niciodată folderul într-un tichet sau chat pentru a dovedi ce profil ai eliminat - menționează în schimb numele fișierului și marca temporală.

Versiunile mai vechi ale GUI păstrează și preferințele clientului în registru. Dacă tray-ul afișează în continuare un nume după ce fișierul a dispărut și există o singură instalare, repornește clientul o dată și reverifică directorul de configurare al comenzii rapide înainte de a te gândi să atingi cheile de registru.

Două tuneluri simultan: mai întâi adaptoarele, apoi ruta

GUI poate ține mai multe conexiuni, una pentru fiecare adaptor virtual; adaugă adaptoare din intrarea din meniul Start care instalează TAP-Windows6, apoi confirmă numărul în Network Connections, pentru că două tuneluri simultane au nevoie de două adaptoare și ambele ar trebui să își obțină adresa automat. Rutarea este limita mai dificilă. Două profiluri care redirecționează tot traficul concurează pentru ruta implicită, iar doar unul o poate deține, așa că primești eșecuri intermitente în loc de două tuneluri funcționale. Păstrează un tunel complet și dă celui de-al doilea un profil split-tunnel care împinge doar propria subrețea.

Intervalele private suprapuse nu pot fi reparate prin adăugarea unui adaptor. Dacă ambele servere distribuie 10.8.0.0/24, al doilea tunel se ciocnește la nivel de adresă și nicio configurație a clientului nu le va separa.

Numele adaptoarelor îți spun la ce te uiți. Get-NetAdapter în PowerShell listează adaptoarele TAP-Windows și adaptorul Wintun după nume, ceea ce este mai rapid decât să numeri pictograme în Network Connections când un tunel a urcat pe cel greșit.

Pornirea unui profil numit dintr-un script

GUI ia un nume de profil relativ la directorul său de configurare, așa că un lansator arată astfel: "C:\Program Files\OpenVPN\bin\openvpn-gui.exe" --connect "myvpn.ovpn". O cale absolută, sau un proces pornit într-un alt director de lucru, eșuează în tăcere, motiv pentru care o comandă rapidă care funcționează prin dublu clic se strică sub Task Scheduler.

Setează directorul de lucru în loc să speri. Într-un lansator AutoHotkey acesta este SetWorkingDir, C:\Program Files\OpenVPN\config; în Task Scheduler este câmpul Start in al acțiunii. Trecerea --config_dir cu aceeași cale face lansatorul independent de ambele.

Înainte de a termina, exportă profilul, notează adaptorul, subrețeaua și subrețeaua pe care o rutează, și păstrează certificatele fiecărui client în propriul subfolder. Apoi confirmă că folderul aparține clientului pe care îl rulezi efectiv, și șterge prin client când acel client are un depozit de import. Această ordine este ce împiedică același profil să reapară după următoarea repornire.

Articole similare