NetworkManager poate păstra o parolă VPN astfel încât conexiunea să pornească fără ca cineva să o tasteze, și poate afișa din nou acea valoare prin editor sau prin nmcli --show-secrets. Există trei modele de proprietate, iar comportamentul de afișare este doar un simptom al celui ales. Alegeți mai întâi modelul, apoi setați steagul care i se potrivește, în loc să ascundeți un câmp cu un text de substituție care va încurca următoarea persoană.

Trei modele de proprietate

Primul model întreabă de fiecare dată. Nimic nu este stocat, secretul există doar pe durata activării, iar cine pornește conexiunea trebuie să știe parola. Este opțiunea cea mai puțin comodă și cea mai ușor de apărat.

Al doilea predă secretul unui inel de chei deținut de utilizator. Agentul se deblochează la începutul sesiunii și furnizează valoarea la cerere, ceea ce o ține în afara fișierului de conexiune, dar leagă conexiunea de sesiunea acelui utilizator. De aici decurg două condiții: agentul trebuie să ruleze și trebuie să fie deblocat.

Al treilea stochează o acreditare protejată pentru o conexiune de sistem. Supraviețuiește repornirilor și funcționează înainte ca cineva să se conecteze, iar în schimb valoarea stă pe disc, protejată de permisiunile fișierului și nu de criptare.

Fiecare model este rezonabil în contextul potrivit. Greșeala este să le amesteci, și astfel un laptop ajunge cu un secret în două locuri și fără un răspuns clar despre care este autoritar. Notați ce model folosește un profil. O singură linie în manualul echipei scutește următoarea persoană de a inventa un al patrulea loc de căutat.

Citiți starea actuală înainte de a o schimba

Priviți profilul și starea secretului ca utilizatorul care administrează conexiunea. A doua comandă este cea care vă spune dacă valoarea este într-adevăr lizibilă.

nmcli connection show "Office VPN"
nmcli --show-secrets connection show "Office VPN"
sudo stat -c '%U %a %n' /etc/NetworkManager/system-connections/*.nmconnection

Un fișier de cheie din acel director aparține de obicei root cu modul 600. Aceasta ține utilizatorii obișnuiți afară și nu ține root afară, ceea ce contează când aceeași mașină este partajată sau când o copie de siguranță rulează ca root.

Permisiunile fișierului sunt o limită, nu criptare. Oricine poate citi fișierul ca root are parola în text clar. Este un schimb acceptabil pentru un server nesupravegheat și unul prost pentru o stație de lucru partajată. Scrierea o dată previne o discuție lungă despre dacă valoarea este protejată.

Ce face fiecare valoare a steagului

Secretul VPN are o proprietate flags, iar valorile nu sunt intuitive doar din numere.

ValueMeaningPractical effect
0No special flagSecret is typically saved with the connection
1Agent-ownedA keyring or secret agent supplies it
2Not savedPrompted at each activation
4Not requiredConnection proceeds without asking

Comportamentul efectiv depinde și de modul și de faptul dacă rulează un agent, așa că tratați tabelul ca pe contract și comportamentul observat ca pe ceea ce verificați. O valoare care funcționează pe un desktop se poate comporta diferit pe un server fără sesiune. Exact în acest gol trăiesc cele mai multe tichete confuze.

Setați proprietatea explicit în loc să ștergeți o linie și să sperați. Un steag absent nu este o politică, iar următoarea actualizare de pachet îl poate completa cu ceva ce nu ați intenționat.

Potriviți modelul cu momentul în care pornește conexiunea

Dacă conexiunea pornește doar cât timp un utilizator este conectat, proprietatea agentului se potrivește bine și ține secretul în afara fișierului. Dacă pornește la boot, înainte de a exista vreo sesiune, un agent nu vă poate ajuta.

Aceasta este întreaga decizie pentru majoritatea mașinilor. Explică și o clasă de rapoarte confuze în care conexiunea funcționează interactiv și eșuează după repornire. Steagul nu s-a schimbat niciodată; contextul s-a schimbat.

Pentru cazul nesupravegheat, răspunsul practic este un fișier restricționat deținut de root sau o sursă de acreditări aprobată. Țineți-l în afara profilului de conexiune dacă acel profil este vreodată exportat sau copiat pe altă mașină.

Dacă valoarea era deja vizibilă, schimbați-o

Modificarea unui steag lasă parola însăși neatinsă. O valoare care a apărut într-o captură de ecran, în istoricul shell-ului, într-un pachet trimis la suport sau într-un fișier pe care alți utilizatori îl puteau deschide trebuie considerată divulgată.

Schimbați-o pe server, apoi reparați clientul și închideți orice sesiune care s-a autentificat cu cea veche. Ștergerea conexiunii locale nu revocă nimic pe partea cealaltă, și exact această parte este ratată.

Apoi opriți punerea parolei pe linia de comandă. Ajunge în istoricul shell-ului și poate apărea într-o listă de procese; folosiți promptul interactiv sau agentul.

Verificați reconectând

Repetați comanda care a arătat secretul și confirmați că câmpul nu mai este afișat. Apoi deconectați-vă și reconectați-vă, și reporniți dacă conexiunea pornește automat, deoarece defecțiunea interesantă apare doar când se schimbă contextul sesiunii.

Dacă secretul încă apare, îl furnizează un alt profil sau un alt agent. Inspectați conexiunea activă și inelul de chei în loc să ștergeți fișiere până când simptomul se mută.

Articole similare