Kde má Linux ukladať vaše heslo VPN? Nie v profile
Príznaky tajomstva v NetworkManagere určujú, či heslo drží profil, agent kľúčenky alebo nikto. Odpoveď závisí od toho, kedy sa pripojenie spúšťa.
Heslo VPN musí niekde žiť: v profile pripojenia, v kľúčenke, ktorú plocha odomyká, alebo nikde. NetworkManager nazýva túto voľbu príznakom tajomstva, a výber nesprávneho je dôvod, prečo pripojenie po prihlásení funguje a ako služba zlyháva. Príznak je jeden riadok konfigurácie a rozhoduje, ktorý z týchto troch výsledkov dostanete.
Tri príznaky pokrývajú takmer každý prípad a rozhodnutie je o tom, kedy sa pripojenie spúšťa.
Tri príznaky tajomstva, tri správania
Príznak 0 znamená, že tajomstvo sa ukladá s pripojením, v akomkoľvek úložisku, ktoré profil drží. Príznak 1 z neho robí vlastníctvo agenta: tajomstvo prichádza od agenta tajomstiev, napríklad kľúčenky plochy, a NetworkManager si ho vyžiada pri aktivácii. Príznak 2 znamená neuložené, takže tajomstvo sa nikdy nezapíše a musí sa dodať zakaždým. Príznak 4 označuje tajomstvo ako nepotrebné, pre pripojenia, ktoré naozaj žiadne nepotrebujú.
| Flag | Where it lives | Works unattended |
|---|---|---|
| 0 saved | Connection profile | Yes, if the store is readable |
| 1 agent-owned | Secret agent or keyring | Only if that agent is available |
| 2 not-saved | Nowhere | No |
Nastavujte príznaky pre každé tajomstvo, nie pre pripojenie. Jedno pripojenie môže mať heslo vlastnené agentom a uloženú prístupovú frázu súkromného kľúča.
Rozhodnite sa podľa toho, kedy sa pripojenie spúšťa
Ak pripojenie spúšťa prihlásený používateľ, vlastníctvo agenta je rozumná predvolená voľba: kľúčenka sa odomkne prihlásením a tajomstvo nikdy neleží v súbore. Ak pripojenie musí naskočiť predtým, než sa niekto prihlási, vlastníctvo agenta je nesprávna voľba, pretože neexistuje kľúčenka relácie, ktorú by bolo možné odomknúť.
To je celé rozhodnutie. Všetko ostatné je jeho variant.
Pre službu pred prihlásením je podporovaným vzorom úložisko v systémovom rozsahu alebo chránený súbor s kľúčom, a ochranou sa stanú oprávnenia súboru. Neriešte problém vložením hesla do shell skriptu, ktorý sa spúšťa pri štarte.
Čo kľúčenka dáva a čo nie
Kľúčenka drží tajomstvo mimo profilu pripojenia a viaže ho na používateľskú reláciu. Nesprístupňuje tajomstvo službe bez relácie a nič nešifruje na sieti. To sú oddelené vlastnosti, ktoré ľudia často zlievajú. Čo skutočne prináša, je menší rozsah škôd, keď unikne súbor profilu.
Súkromný kľúč, na ktorý profil odkazuje, potrebuje vlastné oprávnenia, nezávisle od toho, kde heslo žije.
Diagnostika bez vylievaní tajomstiev
Názvy pripojení, UUID a príznaky zvyčajne stačia na vysvetlenie zlyhania. nmcli connection show vypíše profil a príznaky tajomstva vám povedia, odkiaľ malo heslo prísť.
Vyhnite sa --show-secrets v tiketoch a chate. Keď je raz vložené, je to prihlasovací údaj v prepise.
Uloženie nie je odvolanie
Odstránenie tajomstva z jednej kľúčenky nezruší prihlasovací údaj, ktorý vzdialený operátor už prijal. Odvolanie účtu je akcia na strane servera a lokálne ukladanie je samostatná vec s vlastným vlastníkom.
Rozhodnite o oboch pred incidentom, nie počas neho. Interaktívne používateľské pripojenie a služba pred prihlásením potrebujú rôzne odpovede a zdieľaný shell skript nie je ani jedno. Dokumentácia NetworkManageru k príznakom tajomstva uvádza hodnoty v plnom rozsahu.