Dúas contas VPN, unha pasarela e unha icona de escritorio que se conecta como quen a usou por última vez. A causa habitual é un lanzador que reescribe o nome de usuario dun perfil compartido xusto antes de conectar, ou un que busca un nome visible que ambos os perfís comparten. NetworkManager xa distingue os perfís por UUID, así que a icona pode nomear exactamente un deles e deixar a identidade en paz. O que non debería levar é o contrasinal.

Un lanzador é un punteiro, non un almacén de credenciais.

Atope o UUID e confirme a identidade

Liste as conexións gardadas e lea o UUID, o ID de conexión e o nome de usuario que garda cada perfil. Confirme que perfil pertence a que conta antes de crear nada, porque un nome visible é unha etiqueta e non unha chave. Se as dúas contas precisan pasarelas distintas ou perfís distintos, iso é unha tarefa de configuración aparte.

Use o UUID no lanzador. A busca por nome visible funciona ata que alguén renomea un perfil, e entón a icona conéctase como a conta incorrecta ou como nada.

Escriba a entrada de escritorio

Unha entrada de escritorio precisa un tipo, un nome e unha liña executable. O comando debe levantar ese UUID e deixar que NetworkManager pida o segredo, que é para o que serve nmcli --ask connection up uuid .... Manteña Terminal=true para que o aviso se vexa cando faga falta un segredo. Substitua o marcador polo UUID que realmente observou, e non engada un envoltorio de shell só para ocultar o aviso.

A especificación Desktop Entry define Exec como o programa e os seus argumentos. Non é un script de shell, e non precisa un.

Deixe que o axente garde o segredo

Os segredos pertencen ao axente por usuario, ao chaveiro ou a un aviso interactivo. Un contrasinal en Exec é visible na lista de procesos, no ficheiro de escritorio e en calquera captura do diálogo de propiedades. Se o perfil precisa un segredo, deixe que o aviso compatible o recolla e que o axente o recorde para ese usuario.

--ask é interactivo por deseño. Non é unha receita para a automatización sen supervisión e non garante que cada desafío de autenticación ou complemento poida programarse.

Non recorra a sudo

A autorización para modificar ou activar unha conexión é un permiso de NetworkManager concedido pola súa política, non un privilexio de Unix. Executar o lanzador con sudo non lle dá ao proceso o chaveiro doutro usuario nin arranxa un rexeitamento da pasarela. Nunha máquina compartida, revise que contas locais ven que perfís e quen posúe cada segredo; as iconas separadas non crean illamento por si soas.

Dous perfís activos para a mesma pasarela tamén poden competir polas rutas ou infrinxir unha regra de concorrencia. Iso é unha cuestión de política, non un fallo do lanzador.

Verifique toda a acción

Active o lanzador unha vez e confirme tres cousas: o UUID que subiu, a identidade que viu a pasarela e se apareceu un aviso de segredo onde o esperaba. Se a conexión falla, conserve a primeira mensaxe de erro. Engadir o contrasinal á liña de comandos para que o atallo pareza autosuficiente oculta ese erro e crea un problema peor.

Escriba o UUID e a correspondencia de contas nas notas do equipo. A seguinte persoa que cambie un perfil precisa saber que icona depende del, e esa nota é o que impide que un cambio de nome se converta nunha caída.

Artigos relacionados