Como salvar senhas de VPN com o NetworkManger para nmcli?

12

Há muitas postagens sobre como colocar senhas de VPN em /etc/NetworkManager/system-connections/<connection> . Não consigo fazer com que nenhum deles funcione no Ubuntu 12.04. Os campos nas perguntas e respostas parecem sutilmente diferentes dos meus. O que mais se aproximava parecia ser: Como para salvar senhas de VPN com o NetworkManger .

Eu prefiro ter nmcli ask for senhas no console em vez de em um widget da GUI na área de trabalho, mas isso parece impossível.

Então, duas perguntas:

  1. Os arquivos /etc/NetworkManager/system-connections/<connection> e seus campos são documentados oficialmente em algum lugar? Parece haver muitos 404s para links de documentação do NetworkManager.
  2. O que há de errado com meu arquivo de conexão?

Aqui está o meu arquivo de conexão. Eu tentei muitas variações de configurações neste arquivo, mas isso é o mais próximo que consegui (anonimizado, é claro):

[connection]
# Not sure if this helps or breaks anything. Fails regardless.
permissions=user:peter:;
id=My VPNC
uuid=a2cd97d5-7df1-4391-91d8-7e72931ec2de
type=vpn
autoconnect=false
timestamp=1396942441

[vpn]
service-type=org.freedesktop.NetworkManager.vpnc
NAT Traversal Mode=natt
ipSec-secret-type=save
IPSec secret-flags=0
xauth-password-type=save
Vendor=cisco
Xauth username=user
IPSec gateway=1.2.3.4
XAuth password-flags=0
IPSec ID=Ipsec
Perfect Forward Secrecy=server
IKE DH Group=dh2

[vpn-secrets]
XAuth password=password
IPSec secret=grouppassword

[ipv4]
method=auto

Permissons:

> ls -l /etc/NetworkManager/system-connections/My\ VPNC 
-rw------- 1 root root 527 Apr  8 10:11 /etc/NetworkManager/system-connections/My VPNC

A execução dá:

> sudo nmcli con up id  'My VPNC'
Active connection state: unknown
Active connection path: /org/freedesktop/NetworkManager/ActiveConnection/44
state: VPN connecting (need authentication) (2)
Error: Connection activation failed: no valid VPN secrets.

Edit: Aqui está outro post similar (sobre o Openconnect VPN): Como fazer com que o NetworkManager se conecte automaticamente a uma VPN Openconnect via nmcli sem solicitar um usuário e senha

    
por Peter V. Mørch 08.04.2014 / 10:33

6 respostas

9

Quando você configura sua conexão VPN através da GUI, a senha é salva no porta-chaves. Se você salvar sua senha no arquivo de conexão, assim:

sudoedit /etc/NetworkManager/system-connections/MyConnectionExampleName

in this file:

    # 1 here means key-ring I  think, but with 0, the password below is  used
    [vpn]
    password-flags=0
    cert-pass-flags=0

    [vpn-secrets]
    password=my_secret_password
    cert-pass=my_secret_certificate_password
    
por HackerBaloo 03.12.2014 / 06:56
4

Eu tive o mesmo problema, / var / log / messages estava registrando uma mensagem onde o NetworkManager reclamava sobre propriedades inválidas. Depois que eu removi o sinalizador e digitei propriedades e deixei apenas registros [vpn-secrets], a conexão pôde ser estabelecida.

ipSec-secret-type=save
IPSec secret-flags=0
xauth-password-type=save
XAuth password-flags=0

Pacote que instalei:

NetworkManager-0.8.1-66.el6.x86_64

Resultado:

[connection]
id=My VPNC
uuid=a2cd97d5-7df1-4391-91d8-7e72931ec2de
type=vpn
autoconnect=false
timestamp=1396942441

[vpn]
service-type=org.freedesktop.NetworkManager.vpnc
NAT Traversal Mode=natt
Vendor=cisco
Xauth username=user
IPSec gateway=1.2.3.4
IPSec ID=Ipsec
Perfect Forward Secrecy=server
IKE DH Group=dh2

[vpn-secrets]
XAuth password=password
IPSec secret=grouppassword

[ipv4]
method=auto
    
por Oscar 06.06.2014 / 00:12
3

Em termos de resolução do erro secreto de senha simples em 16.04 , você precisa apenas das duas linhas:

[vpn-secrets]
password=my_secret_password

Eu só tocaria / adicionaria outras linhas, se necessário

    
por Wolf 24.10.2016 / 01:47
1

Faça o que o Wolf disse . Salve o arquivo.

Em seguida, digite

sudo service network-manager restart

e pressione Enter .

Agora, suas alterações estão em vigor.

    
por Hypocritus 08.01.2017 / 04:54
1

Eu não mudaria os arquivos de configuração gerados pela GUI. Da próxima vez que você clicar na GUI, suas entradas manuais desaparecerão. Além disso, uma atualização do sistema pode travá-lo.

Você pode tentar o seguinte:

  • Permitir executar sudo nmcli sem senha:

    Crie um arquivo /etc/sudores.d/mynmcli (nome do arquivo não importa)

    Host_Alias HOST = YOURHOSTNAME
    Cmnd_Alias NMCLI    = /usr/bin/nmcli
    YOURHOSTNAME HOST=(root) NOPASSWD:NMCLI
    
  • Crie um arquivo de senha com:

    vpn.secrets.Xauth password:PASSWORD
    vpn.secrets.IPSec secret:SHAREDSECRET
    

    Agora você pode executar a seguinte linha em um script que é tratado pelo milho:

    sudo nmcli con up id YOURVPN passwd-file /path/to/your/file
    

    (Para encontrar o tipo YOURVPN " nmcli con ")

Funciona para mim no Ubuntu 16.10.

    
por wolfi 31.01.2017 / 13:56
0

Edite sua conexão VPNC usando a caixa de diálogo Conexões de Rede.

Na guia VPN, as entradas de senha possuem um ícone dentro da entrada no lado direito. Clique neste ícone e selecione "Armazenar a senha somente para este usuário".

    
por galatians 30.05.2017 / 22:59