Автоматически Подключение к VPN при использовании определенной сети в Ubuntu GNOME 16.04

Под Единицей Сетевая Кормушка имеет флажок в наличии для каждого соединения, которое настраивает автоматическое использование VPN, когда соединение активно:

Picture of Connection setting in ubuntu 16.06 Unity

Существует ли способ получить опцию как это в Ubuntu GNOME 16.04? (который использует GNOME 3.18). Поскольку страница настройки подключения испытывает недостаток в этой опции: enter image description here

11
задан 7 August 2016 в 04:03

2 ответа

Я нашел ответ на это. Странно, Вы имеете менеджеру по открытой сети вручную (в противоположность использованию панели или Настроек.

Так в Terminal тип nm-connection-editor. После выполнения так, окно, которое открывается, будет иметь опции в операции в секунду, сначала отображают.

Это работает на меня в 16,04 и 17.04. Хотелось бы надеяться, они интегрируют различных администраторов сети в следующих версиях GNOME.

20
ответ дан 23 November 2019 в 03:56

Я решил проблему со сценарием в

/etc/NetworkManager/dispatcher.d

Эта папка содержит сценарии, которые называет в алфавитном порядке администратор сети каждый раз, когда существует изменение в Состоянии сети. Это имеет преимущество (отличающийся от другого решения, которое я видел), что Ваша VPN только активируется при начальной загрузке/запуске, но также и в резюме после того, как приостанавливают/спят.

Чтобы это работало, Вам нужно соединение VPN, которое уже настраивается в Вашем Администраторе сети, который я предполагаю, что Вы имеете, иначе Вы не задали бы вопрос.

  1. Первый шаг: Я последовал совету этой страницы (German) (https://wiki.ubuntuusers.de/NetworkManager/Dispatcher/). Я открыл и назвал новый сценарий 02VPN1

    sudo YOURTEXTEDITOR /etc/NetworkManager/dispatcher.d/02VPN1
    

и записал:

    #!/bin/bash
    VPN_CONNECTION_NAME="NAME_OF_YOUR_VPN_CONNECTION"
    if [ "$2" = "up" ]; then
       sleep "3s"
       nmcli con up id "${VPN_CONNECTION_NAME}"
    fi

NAME_OF_YOUR_VPN_CONNECTION является названием файла соединения NAME_OF_YOUR_VPN_CONNECTION.conf, что Вы раньше устанавливали соединение, что Вы хотите автосоединиться с.

Условие, если ["2$" =] означает, что соединение VPN только автоматически подключено с тем, когда Вы запускаете сетевое соединение (Ваше Интернет-соединение); после того как услуга VPN работает, можно отключить ее или выбрать другую VPN.

Если Вы только и каждый раз хотите выполнить эту VPN без способности отключить его, можно записать сценарий без этого Если-условия:

    #!/bin/bash
    VPN_CONNECTION_NAME="NAME_OF_YOUR_VPN_CONNECTION"
    sleep "3s"
    nmcli con up id "${VPN_CONNECTION_NAME}"

Можно только настроить этот файл как корень, таким образом, он принадлежит корню без Вас делающий что-либо, кроме того. Это - то, как это должно быть.

Наконец: Сделайте этот исполняемый файл файла, иначе сценарий не будет работать. В Терминале:

    sudo chmod +x  /etc/NetworkManager/dispatcher.d/02VPN1
  1. Второй Шаг (ОТЛИЧАЮЩИЙСЯ от инструкций в вышеупомянутой ссылке; я использовал совет отсюда: https://ubuntuforums.org/showthread.php? t=2193559&p=12990193#post12990193

Этот процесс выполняется корнем, и корень еще не имеет доступа к паролю, который Вы используете для своей VPN. Сделайте следующее: Откройте файл NAME_OF_YOUR_VPN_CONNECTION в/etc/NetworkManager/system-connections как корень. Откройте Terminal и сделайте:

    sudo YOURTEXTEDITOR /etc/NetworkManager/system-connections/NAME_OF_YOUR_VPN_CONNECTION

a) Измените строку

    password-flags=1 

кому:

    password-flags=0

b) Внизу, добавить

    [vpn-secrets]
    password=PASSWORDOFYOURCONNECTION

Сохраните и закройте файл.

  1. Теперь перезапустите своего Администратора сети. Терминал:

    systemctl restart NetworkManager
    

инициализировать новые настройки. Вы должны быть сделаны.

Я вчера сделал это, и насколько я вижу, что это хорошо работает. Никакие гарантии!

1
ответ дан 23 November 2019 в 03:56

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

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