Como configuro o NetworkManager para conectar-se a dois servidores VPN separados simultaneamente?

4

Eu tenho que conectar dois servidores OpenVPN de uma só vez. Como eu configuro o NetworkManager para conectar como cliente a ambos?

           -- <OpenVPN1> -- <Resource 1>
<laptop> -
           -- <OpenVPN2> -- <Resource 2>
    
por marltu 18.12.2013 / 15:50

1 resposta

5

Acho impossível usar apenas o Network Manager. Mas você pode usar um pequeno truque:

Primeiro, exporte suas configurações do OpenVPN2 do Network Manager para algum arquivo, digamos ovpn2.conf .

Encontre seu UUID de conexão do OpenVPN1:

nmcli con

Escreva o script abaixo e coloque-o em /etc/NetworkManager/dispatcher.d/ , digamos two_vpn

#!/bin/sh
VPN_UUID=84d61cf6-6f51-4f84-93fb-df3c458db6d6
CONF_FILE=path/to/ovpn2.conf

interface= status=
case $status in
  up|vpn-up)
      if [ $VPN_UUID == $CONNECTION_UUID ]; then
        # connect your second OpenVPN2 using .conf file:
        openvpn --config $CONF_FILE

      fi
    ;;
  down| vpn-down)
      if [ $VPN_UUID == $CONNECTION_UUID ]; then
        # close your second OpenVPN2
        pid=$(ps -ef | grep "[o]penvpn --config $CONF_FILE" | awk '{ print  }')
        kill $pid > /dev/null 2>&1
      fi
    ;;
esac

Não se esqueça de dar chmod +x /etc/NetworkManager/dispatcher.d/two_vpn

É isso, agora você só precisa conectar o OpenVPN1 e o OpenVPN2 se conectará automaticamente. Além disso, se você fechar o OpenVPN1, o OpenVPN2 será fechado.

Por favor, deixe-me saber se algo der errado, porque eu não testei o script

    
por c0rp 27.12.2013 / 12:30