Preprečite, da NetworkManager prikazuje shranjeno geslo VPN
Vprašajte vsakič, predajte ga v shrambo ključev ali hranite datoteko samo za root. Vsaka izbira prinaša drugačno izpostavljenost, zastavica gesla pa ji mora ustrezati.
NetworkManager lahko hrani geslo VPN, da se povezava dvigne, ne da bi ga kdo vtipkal, in to vrednost lahko znova prikaže v urejevalniku ali prek nmcli --show-secrets. Na voljo so trije modeli lastništva, vedenje pri prikazu pa je le simptom tega, katerega ste izbrali. Najprej izberite model, nato nastavite zastavico, ki mu ustreza, namesto da bi polje skrili z nadomestnim besedilom, ki bo zmedlo naslednjo osebo.
Trije modeli lastništva
Prvi model vpraša vsakič. Nič se ne shrani, skrivnost obstaja le med aktivacijo, in vsak, ki povezavo zažene, mora poznati geslo. To je najmanj priročna možnost in najlažje branljiva.
Drugi preda skrivnost v shrambo ključev, ki je v lasti uporabnika. Agent se odklene ob začetku seje in vrednost dostavi na zahtevo, kar jo drži izven datoteke povezave, a povezavo veže na sejo tega uporabnika. Iz tega izhajata dva pogoja: agent mora teči in mora biti odklenjen.
Tretji hrani zaščitene poverilnice za sistemsko povezavo. Preživi ponovne zagone in deluje, preden se kdo prijavi, v zameno pa vrednost leži na disku, zaščitena s pravicami datoteke in ne s šifriranjem.
Vsak model je v pravem kontekstu smiseln. Napaka je mešati jih, in tako prenosnik konča s skrivnostjo na dveh mestih in brez jasnega odgovora, katera velja. Zapišite, kateri model uporablja profil. Ena vrstica v priročniku ekipe prihrani naslednji osebi izmišljanje četrtega mesta za iskanje.
Preberite trenutno stanje, preden ga spremenite
Poglejte profil in stanje skrivnosti kot uporabnik, ki upravlja povezavo. Drugi ukaz je tisti, ki vam pove, ali je vrednost res berljiva.
nmcli connection show "Office VPN"
nmcli --show-secrets connection show "Office VPN"
sudo stat -c '%U %a %n' /etc/NetworkManager/system-connections/*.nmconnection
Ključna datoteka v tej mapi je običajno v lasti roota z načinom 600. To navadne uporabnike drži zunaj in roota ne drži zunaj, kar je pomembno, ko si isto napravo deli več ljudi ali ko varnostna kopija teče kot root.
Pravice datoteke so meja, ne šifriranje. Kdor lahko datoteko prebere kot root, ima geslo v čistem besedilu. To je sprejemljiva menjava za strežnik brez nadzora in slaba za deljeno delovno postajo. Enkraten zapis prepreči dolgo razpravo o tem, ali je vrednost zaščitena.
Kaj naredi vsaka vrednost zastavice
Skrivnost VPN nosi lastnost flags, vrednosti pa niso intuitivne samo iz števil.
| Value | Meaning | Practical effect |
|---|---|---|
| 0 | No special flag | Secret is typically saved with the connection |
| 1 | Agent-owned | A keyring or secret agent supplies it |
| 2 | Not saved | Prompted at each activation |
| 4 | Not required | Connection proceeds without asking |
Dejansko vedenje je odvisno tudi od vtičnika in od tega, ali teče agent, zato tabelo obravnavajte kot pogodbo, opaženo vedenje pa kot tisto, kar preverjate. Vrednost, ki deluje na enem namizju, se lahko na strežniku brez seje obnaša drugače. V tej vrzeli živi večina zmedenih zahtevkov.
Nastavite lastnost izrecno, namesto da bi vrstico izbrisali in upali. Manjkajoča zastavica ni politika, in naslednja posodobitev paketa jo lahko napolni z nečim, česar niste nameravali.
Uskladite model s trenutkom, ko se povezava začne
Če se povezava začne le, ko je uporabnik prijavljen, lastništvo agenta dobro ustreza in skrivnost drži izven datoteke. Če se začne ob zagonu, preden obstaja kakršna koli seja, vam agent ne more pomagati.
To je celotna odločitev za večino naprav. Pojasni tudi razred zmedenih poročil, kjer povezava deluje interaktivno in po ponovnem zagonu odpove. Zastavica se ni nikoli spremenila; spremenil se je kontekst.
Za primer brez nadzora je praktični odgovor omejena datoteka v lasti roota ali odobren vir poverilnic. Hranite jo izven profila povezave, če se ta profil kdaj izvozi ali kopira na drugo napravo.
Če je bila vrednost že vidna, jo zamenjajte
Sprememba zastavice se ne dotakne samega gesla. Vrednost, ki se je pojavila na posnetku zaslona, v zgodovini lupine, v paketu, poslanem podpori, ali v datoteki, ki so jo lahko odprli drugi uporabniki, je treba obravnavati kot razkrito.
Spremenite jo na strežniku, nato popravite odjemalca in končajte vsako sejo, ki se je overila s staro. Brisanje krajevne povezave na drugi strani ne prekliče ničesar, in prav to ljudje spregledajo.
Nato prenehajte dajati geslo v ukazno vrstico. Pristane v zgodovini lupine in se lahko pojavi na seznamu procesov; uporabite interaktivno poziv ali agenta.
Preverite s ponovnim povezovanjem
Ponovite ukaz, ki je pokazal skrivnost, in potrdite, da se polje ne izpisuje več. Nato se odklopite in znova povežite, in znova zaženite, če se povezava začne samodejno, ker se zanimiva napaka pokaže šele ob spremembi konteksta seje.
Če se skrivnost še vedno prikazuje, jo zagotavlja drug profil ali drug agent. Preglejte dejavno povezavo in shrambo ključev, namesto da brišete datoteke, dokler se simptom ne premakne.