NetworkManager dokáže držať heslo VPN, aby sa spojenie nadviazalo bez toho, aby ho niekto písal, a túto hodnotu dokáže znova zobraziť cez editor alebo cez nmcli --show-secrets. K dispozícii sú tri modely vlastníctva a správanie pri zobrazení je len príznakom toho, ktorý ste zvolili. Najprv zvoľte model a potom nastavte príznak, ktorý k nemu patrí, namiesto skrývania poľa zástupným textom, ktorý zmätie ďalšieho človeka.

Tri modely vlastníctva

Prvý model sa pýta zakaždým. Nič sa neukladá, tajomstvo existuje len počas aktivácie a každý, kto spojenie spustí, musí heslo poznať. Je to najmenej pohodlná voľba a najľahšie obhájiteľná.

Druhý odovzdáva tajomstvo kľúčenke, ktorú vlastní používateľ. Agent sa odomkne pri štarte relácie a hodnotu dodá na požiadanie, čo ju drží mimo súboru spojenia, ale viaže spojenie na reláciu toho používateľa. Z toho plynú dve podmienky: agent musí bežať a musí byť odomknutý.

Tretí ukladá chránené prihlasovacie údaje pre systémové spojenie. Prežije reštarty a funguje skôr, než sa ktokoľvek prihlási, a na oplátku hodnota leží na disku chránená oprávneniami súboru, nie šifrovaním.

Každý model je v správnom kontexte rozumný. Chyba je miešať ich, a tak notebook skončí s tajomstvom na dvoch miestach a bez jasnej odpovede, ktoré je záväzné. Zapíšte, ktorý model profil používa. Jeden riadok v tímovej príručke ušetrí ďalšiemu človeku vymýšľanie štvrtého miesta, kde hľadať.

Prečítajte si aktuálny stav, skôr než ho zmeníte

Pozrite sa na profil a na stav tajomstva ako používateľ, ktorý spojenie spravuje. Druhý príkaz je ten, ktorý vám povie, či je hodnota skutočne čitateľná.

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

Súbor s kľúčom v tomto adresári zvyčajne patrí rootovi s režimom 600. To drží bežných používateľov von a nedrží von roota, čo je dôležité, keď je stroj zdieľaný alebo keď záloha beží ako root.

Oprávnenia súboru sú hranica, nie šifrovanie. Ktokoľvek môže súbor prečítať ako root, má heslo v čistom texte. To je prijateľná výmena pre server bez dozoru a zlá pre zdieľanú pracovnú stanicu. Jedno zapísanie zabráni dlhej hádke o tom, či je hodnota chránená.

Čo robí každá hodnota príznaku

Tajomstvo VPN nesie vlastnosť flags a hodnoty nie sú intuitívne len z čísel.

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

Skutočné správanie závisí aj od zásuvného modulu a od toho, či beží agent, takže tabuľku berte ako zmluvu a pozorované správanie ako to, čo overujete. Hodnota, ktorá funguje na jednej ploche, sa môže na serveri bez relácie správať inak. V tejto medzere žije väčšina mätúcich tiketov.

Nastavte vlastnosť výslovne, namiesto mazania riadku a nádeje. Chýbajúci príznak nie je politika a najbližšia aktualizácia balíka ho môže vyplniť niečím, čo ste nezamýšľali.

Zlaďte model s okamihom, keď sa spojenie spúšťa

Ak sa spojenie spúšťa len vtedy, keď je používateľ prihlásený, vlastníctvo agenta sa hodí a drží tajomstvo mimo súboru. Ak sa spúšťa pri štarte, skôr než existuje akákoľvek relácia, agent vám nepomôže.

To je celé rozhodnutie pre väčšinu strojov. Vysvetľuje to aj triedu mätúcich hlásení, keď spojenie funguje interaktívne a po reštarte zlyhá. Príznak sa nikdy nezmenil; zmenil sa kontext.

Pre prípad bez dozoru je praktickou odpoveďou obmedzený súbor vlastnený rootom alebo schválený zdroj prihlasovacích údajov. Držte ho mimo profilu spojenia, ak sa ten profil niekedy exportuje alebo skopíruje na iný stroj.

Ak bola hodnota už viditeľná, vymeňte ju

Zmena príznaku necháva heslo samotné nedotknuté. Hodnotu, ktorá sa objavila na snímke obrazovky, v histórii shellu, v balíku poslanom podpore alebo v súbore, ktorý mohli otvoriť iní používatelia, treba považovať za prezradenú.

Zmeňte ju na serveri, potom opravte klienta a ukončite každú reláciu, ktorá sa overila starým heslom. Zmazanie miestneho spojenia na druhej strane nič neodvolá, a to je časť, ktorú ľudia prehliadajú.

Potom prestaňte dávať heslo na príkazový riadok. Dostane sa do histórie shellu a môže sa objaviť vo výpise procesov; použite interaktívnu výzvu alebo agenta.

Overte opätovným pripojením

Zopakujte príkaz, ktorý ukázal tajomstvo, a potvrďte, že pole sa už nevypisuje. Potom sa odpojte a znova pripojte, a ak sa spojenie spúšťa automaticky, restartujte, pretože zaujímavá porucha sa objaví až pri zmene kontextu relácie.

Ak sa tajomstvo stále ukazuje, dodáva ho iný profil alebo iný agent. Prezrite aktívne spojenie a kľúčenku, namiesto mazania súborov, kým sa príznak nepresunie.

Súvisiace články