O contrasinal de VPN ten que vivir nalgures: no perfil de conexión, nun chaveiro que o escritorio desbloquea ou en ningún sitio. NetworkManager chama a esa escolla indicador de secreto, e escoller o incorrecto é a razón pola que unha conexión funciona tras iniciar sesión e falla como servizo. O indicador é unha liña de configuración e decide cal deses tres resultados obtés.

Tres indicadores cobren case todos os casos, e a decisión trata de cando arrinca a conexión.

Tres indicadores de secreto, tres comportamentos

Un indicador 0 significa que o secreto se garda coa conexión, en calquera almacén que conteña o perfil. Un indicador 1 fai que sexa propiedade do axente: o secreto vén dun axente de secretos como un chaveiro de escritorio, e NetworkManager pídeo ao activar. Un indicador 2 significa non gardado, así que o secreto nunca se escribe e debe achegarse cada vez. O indicador 4 marca un secreto como non necesario, para conexións que de verdade non necesitan ningún.

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

Configura os indicadores por secreto en lugar de por conexión. Unha conexión pode ter un contrasinal propiedade do axente e unha frase de paso de clave privada gardada.

Decide segundo cando arrinca a conexión

Se un usuario con sesión iniciada arrinca a conexión, a propiedade do axente é o valor predeterminado sensato: o chaveiro desbloquéase co inicio de sesión e o secreto nunca queda nun ficheiro. Se a conexión debe levantarse antes de que ninguén inicie sesión, a propiedade do axente é a escolla incorrecta, porque non hai ningún chaveiro de sesión que desbloquear.

Esa é toda a decisión. Todo o demais é unha variante.

Para un servizo anterior ao inicio de sesión, o patrón admitido é un almacén de ámbito de sistema ou un ficheiro de clave protexido, e os permisos do ficheiro pasan a ser a protección. Non resolvas o problema pegando o contrasinal nun script de shell que se executa ao arrincar.

Que dá o chaveiro e que non

Un chaveiro mantén o secreto fóra do perfil de conexión e lígao a unha sesión de usuario. Non fai o secreto dispoñible para un servizo sen sesión, nin cifra nada na rede. Son propiedades separadas que a xente adoita fusionar. O que si compra é un radio de dano menor cando un ficheiro de perfil se filtra.

A clave privada á que fai referencia o perfil necesita os seus propios permisos, independentemente de onde viva o contrasinal.

Diagnóstico sen verter secretos

Os nomes de conexión, os UUID e os indicadores adoitan abondar para explicar un fallo. nmcli connection show lista o perfil, e os indicadores de secreto dinche de onde debía vir o contrasinal.

Evita --show-secrets en tíquets e chats. Unha vez pegado, é unha credencial nunha transcrición.

Almacenar non é revogar

Quitar un secreto dun chaveiro non invalida a credencial que o operador remoto xa aceptou. A revogación da conta é unha acción do lado do servidor, e o almacenamento local é un asunto aparte cun propietario aparte.

Decide ambas as cousas antes do incidente, non durante. Unha conexión interactiva de usuario e un servizo anterior ao inicio de sesión necesitan respostas distintas, e un script de shell compartido non é ningunha das dúas. A documentación de NetworkManager sobre os indicadores de secreto lista os valores completos.

Artigos relacionados