Как настроить NetworkManager для одновременного подключения к двум отдельным VPN-серверам?

Я должен подключиться к двум серверам OpenVPN одновременно. Как настроить NetworkManager для подключения в качестве клиента к обоим?

           -- <OpenVPN1> -- <Resource 1>
<laptop> -
           -- <OpenVPN2> -- <Resource 2>
4
задан 18 December 2013 в 19:05

1 ответ

Я думаю, что невозможно использовать только Network Manager. Но вы можете использовать небольшую хитрость:

Сначала экспортируйте ваши настройки OpenVPN2 из Network Manager в какой-нибудь файл, скажем, ovpn2.conf.

Найдите свой UUID для соединения OpenVPN1:

nmcli con

Напишите скрипт ниже и поместите его в /etc/NetworkManager/dispatcher.d/, скажем two_vpn

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

interface=$1 status=$2
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 $2 }')
        kill $pid > /dev/null 2>&1
      fi
    ;;
esac

Не забудьте дать chmod +x /etc/NetworkManager/dispatcher.d/two_vpn

Вот и все, теперь вам нужно только подключить OpenVPN1, и OpenVPN2 подключится автоматически. Также, если вы закроете OpenVPN1, OpenVPN2 закроется.

Пожалуйста, дайте мне знать, если что-то пойдет не так, потому что я не тестировал скрипт

0
ответ дан 18 December 2013 в 19:05

Другие вопросы по тегам:

Похожие вопросы: