A VPN-jelszónak valahol élnie kell: a kapcsolatprofilban, egy asztali kulcstartóban, amelyet az asztali környezet nyit ki, vagy sehol. A NetworkManager ezt a választást titokjelölőnek nevezi, és a rossz kiválasztása az oka annak, hogy egy kapcsolat bejelentkezés után működik, szolgáltatásként viszont meghiúsul. A jelölő egy sor konfiguráció, és eldönti, hogy a három kimenet közül melyiket kapja.

Három jelölő szinte minden esetet lefed, és a döntés arról szól, mikor indul a kapcsolat.

Három titokjelölő, három viselkedés

A 0 jelölő azt jelenti, hogy a titkot a kapcsolattal együtt tárolja, bármelyik tárban is van a profil. Az 1 jelölő ügynök-tulajdonúvá teszi: a titok egy titokügynöktől, például asztali kulcstartótól érkezik, és a NetworkManager aktiváláskor kéri. A 2 jelölő azt jelenti, hogy nincs tárolva, így a titok soha nem íródik ki, és minden alkalommal meg kell adni. A 4 jelölő nem szükségesnek jelöli a titkot azoknál a kapcsolatoknál, amelyeknek valóban egyre sincs szükségük.

FlagWhere it livesWorks unattended
0 savedConnection profileYes, if the store is readable
1 agent-ownedSecret agent or keyringOnly if that agent is available
2 not-savedNowhereNo

A jelölőket titkonként állítsa be, ne kapcsolatonként. Egy kapcsolatnak lehet ügynök-tulajdonú jelszava és tárolt titkoskulcs-jelmondata.

Aszerint döntsön, mikor indul a kapcsolat

Ha bejelentkezett felhasználó indítja a kapcsolatot, az ügynök-tulajdon az értelmes alapértelmezés: a kulcstartót a bejelentkezés nyitja ki, és a titok soha nem fekszik fájlban. Ha a kapcsolatnak még azelőtt fel kell jönnie, hogy bárki bejelentkezne, az ügynök-tulajdon a rossz választás, mert nincs munkamenet-kulcstartó, amit ki lehetne nyitni.

Ez a teljes döntés. Minden más ennek egy változata.

A bejelentkezés előtt futó szolgáltatásnál a támogatott minta egy rendszerszintű tár vagy védett kulcsfájl, és a védelem a fájljogosultság lesz. Ne oldja meg a problémát azzal, hogy a jelszót egy indításkor futó shell-szkriptbe illeszti.

Mit ad a kulcstartó és mit nem

A kulcstartó a titkot a kapcsolatprofilon kívül tartja, és felhasználói munkamenethez köti. Nem teszi a titkot elérhetővé munkamenet nélküli szolgáltatás számára, és nem titkosít semmit a hálózaton. Ezek külön tulajdonságok, amelyeket az emberek gyakran összemosnak. Amit valóban nyújt, az a kisebb kárterület, amikor egy profilfájl kiszivárog.

A profil által hivatkozott titkos kulcsnak saját jogosultságokra van szüksége, függetlenül attól, hol él a jelszó.

Diagnosztika titkok kiöntése nélkül

A kapcsolatnevek, az UUID-k és a jelölők általában elegendők egy hiba megmagyarázásához. nmcli connection show kilistázza a profilt, és a titokjelölők megmondják, honnan kellett volna a jelszónak jönnie.

Kerülje --show-secrets a jegyekben és a csevegésben. Ha egyszer beillesztették, hitelesítő adat egy átiratban.

A tárolás nem visszavonás

Egy titok eltávolítása egy kulcstartóból nem teszi érvénytelenné azt a hitelesítő adatot, amelyet a távoli üzemeltető már elfogadott. A fiók visszavonása kiszolgálóoldali művelet, a helyi tárolás pedig külön ügy, külön tulajdonossal.

Mindkettőről az incidens előtt döntsön, ne közben. Az interaktív felhasználói kapcsolat és a bejelentkezés előtti szolgáltatás különböző válaszokat igényel, a megosztott shell-szkript pedig egyik sem. A NetworkManager titokjelölőkről szóló dokumentációja teljesen felsorolja az értékeket.

Kapcsolódó cikkek