У меня есть рабочее VPN-соединение. Теперь я хочу, чтобы это VPN-соединение автоматически активировалось, когда я нахожусь в определенной беспроводной сети. Есть ли неинтрузивный графический способ использования апплета сетевого администратора? Если я правильно помню, он работал некоторое время и больше не работает.
Я сделал доступным беспроводное соединение для всех пользователей, чтобы не вводить пароль каждый раз.
Используемая программа CLI - vpnc с поддержкой Hybrid-Auth (совместимый с VPN-клиентом cisco) из PPA sroecker
EDIT: я могу попробовать ответы (из-за eduroam), и поскольку никакой ответ, похоже, не получил большинство голосов, я просто оставлю его без ответа до тех пор, пока он не будет одобрен, тогда я соглашусь с этим.
Решение, предложенное con-f-use, должно работать, но не из-за давней ошибки:
https://bugs.launchpad.net/ubuntu/+source/network-manager / + bug / 280571
Однако есть обходные пути. Для последних версий NetworkManager существует утилита командной строки nmcli, которая может быть отредактирована и сохранена как нечто вроде /etc/NetworkManager/dispatcher.d/vpn-up:
#! /bin/bash
REQUIRED_CONNECTION_NAME="<name-of-connection>"
VPN_CONNECTION_NAME="<name-of-vpn-connection>"
activ_con=$(nmcli con status | grep "${REQUIRED_CONNECTION_NAME}")
activ_vpn=$(nmcli con status | grep "${VPN_CONNECTION_NAME}")
if [ "${activ_con}" -a ! "${activ_vpn}" ];
then
nmcli con up id "${VPN_CONNECTION_NAME}"
fi
[Я не тестировал это - пожалуйста, не стесняйтесь для проверки и редактирования в соответствии с результатами]
См.: https://bugs.launchpad.net/ubuntu/+source/network-manager/+bug/280571 имеет больше информации ,
Решение, предложенное con-f-use
, должно работать, но не из-за давней ошибки:
https://bugs.launchpad.net/ubuntu/+source/ network-manager / + bug / 280571
Однако есть обходные пути. Для последних версий NetworkManager существует утилита командной строки nmcli
, которая может быть отредактирована и сохранена как нечто вроде /etc/NetworkManager/dispatcher.d/vpn-up
:
#! /bin/bash
REQUIRED_CONNECTION_NAME="<name-of-connection>"
VPN_CONNECTION_NAME="<name-of-vpn-connection>"
activ_con=$(nmcli con status | grep "${REQUIRED_CONNECTION_NAME}")
activ_vpn=$(nmcli con status | grep "${VPN_CONNECTION_NAME}")
if [ "${activ_con}" -a ! "${activ_vpn}" ];
then
nmcli con up id "${VPN_CONNECTION_NAME}"
fi
[Я не тестировал это - пожалуйста, не стесняйтесь тестировать и редактировать в соответствии с результатами]
См.: https://wiki.archlinux.org/index.php/NetworkManager#Use_dispatcher_to_connect_to_a_vpn_after_a_network-connection_is_established имеет больше информации.
Решение, предложенное con-f-use
, должно работать, но не из-за давней ошибки:
https://bugs.launchpad.net/ubuntu/+source/ network-manager / + bug / 280571
Однако есть обходные пути. Для последних версий NetworkManager существует утилита командной строки nmcli
, которая может быть отредактирована и сохранена как нечто вроде /etc/NetworkManager/dispatcher.d/vpn-up
:
#! /bin/bash
REQUIRED_CONNECTION_NAME="<name-of-connection>"
VPN_CONNECTION_NAME="<name-of-vpn-connection>"
activ_con=$(nmcli con status | grep "${REQUIRED_CONNECTION_NAME}")
activ_vpn=$(nmcli con status | grep "${VPN_CONNECTION_NAME}")
if [ "${activ_con}" -a ! "${activ_vpn}" ];
then
nmcli con up id "${VPN_CONNECTION_NAME}"
fi
[Я не тестировал это - пожалуйста, не стесняйтесь тестировать и редактировать в соответствии с результатами]
См.: https://wiki.archlinux.org/index.php/NetworkManager#Use_dispatcher_to_connect_to_a_vpn_after_a_network-connection_is_established имеет больше информации.
Решение, предложенное con-f-use
, должно работать, но не из-за давней ошибки:
https://bugs.launchpad.net/ubuntu/+source/ network-manager / + bug / 280571
Однако есть обходные пути. Для последних версий NetworkManager существует утилита командной строки nmcli
, которая может быть отредактирована и сохранена как нечто вроде /etc/NetworkManager/dispatcher.d/vpn-up
:
#! /bin/bash
REQUIRED_CONNECTION_NAME="<name-of-connection>"
VPN_CONNECTION_NAME="<name-of-vpn-connection>"
activ_con=$(nmcli con status | grep "${REQUIRED_CONNECTION_NAME}")
activ_vpn=$(nmcli con status | grep "${VPN_CONNECTION_NAME}")
if [ "${activ_con}" -a ! "${activ_vpn}" ];
then
nmcli con up id "${VPN_CONNECTION_NAME}"
fi
[Я не тестировал это - пожалуйста, не стесняйтесь тестировать и редактировать в соответствии с результатами]
См.: https://wiki.archlinux.org/index.php/NetworkManager#Use_dispatcher_to_connect_to_a_vpn_after_a_network-connection_is_established имеет больше информации.
Решение, предложенное con-f-use
, должно работать, но не из-за давней ошибки:
https://bugs.launchpad.net/ubuntu/+source/ network-manager / + bug / 280571
Однако есть обходные пути. Для последних версий NetworkManager существует утилита командной строки nmcli
, которая может быть отредактирована и сохранена как нечто вроде /etc/NetworkManager/dispatcher.d/vpn-up
:
#! /bin/bash
REQUIRED_CONNECTION_NAME="<name-of-connection>"
VPN_CONNECTION_NAME="<name-of-vpn-connection>"
activ_con=$(nmcli con status | grep "${REQUIRED_CONNECTION_NAME}")
activ_vpn=$(nmcli con status | grep "${VPN_CONNECTION_NAME}")
if [ "${activ_con}" -a ! "${activ_vpn}" ];
then
nmcli con up id "${VPN_CONNECTION_NAME}"
fi
[Я не тестировал это - пожалуйста, не стесняйтесь тестировать и редактировать в соответствии с результатами]
См.: https://wiki.archlinux.org/index.php/NetworkManager#Use_dispatcher_to_connect_to_a_vpn_after_a_network-connection_is_established имеет больше информации.
Решение, предложенное con-f-use
, должно работать, но не из-за давней ошибки:
https://bugs.launchpad.net/ubuntu/+source/ network-manager / + bug / 280571
Однако есть обходные пути. Для последних версий NetworkManager существует утилита командной строки nmcli
, которая может быть отредактирована и сохранена как нечто вроде /etc/NetworkManager/dispatcher.d/vpn-up
:
#! /bin/bash
REQUIRED_CONNECTION_NAME="<name-of-connection>"
VPN_CONNECTION_NAME="<name-of-vpn-connection>"
activ_con=$(nmcli con status | grep "${REQUIRED_CONNECTION_NAME}")
activ_vpn=$(nmcli con status | grep "${VPN_CONNECTION_NAME}")
if [ "${activ_con}" -a ! "${activ_vpn}" ];
then
nmcli con up id "${VPN_CONNECTION_NAME}"
fi
[Я не тестировал это - пожалуйста, не стесняйтесь тестировать и редактировать в соответствии с результатами]
См.: https://wiki.archlinux.org/index.php/NetworkManager#Use_dispatcher_to_connect_to_a_vpn_after_a_network-connection_is_established имеет больше информации.
Решение, предложенное con-f-use
, должно работать, но не из-за давней ошибки:
https://bugs.launchpad.net/ubuntu/+source/ network-manager / + bug / 280571
Однако есть обходные пути. Для последних версий NetworkManager существует утилита командной строки nmcli
, которая может быть отредактирована и сохранена как нечто вроде /etc/NetworkManager/dispatcher.d/vpn-up
:
#! /bin/bash
REQUIRED_CONNECTION_NAME="<name-of-connection>"
VPN_CONNECTION_NAME="<name-of-vpn-connection>"
activ_con=$(nmcli con status | grep "${REQUIRED_CONNECTION_NAME}")
activ_vpn=$(nmcli con status | grep "${VPN_CONNECTION_NAME}")
if [ "${activ_con}" -a ! "${activ_vpn}" ];
then
nmcli con up id "${VPN_CONNECTION_NAME}"
fi
[Я не тестировал это - пожалуйста, не стесняйтесь тестировать и редактировать в соответствии с результатами]
См.: https://wiki.archlinux.org/index.php/NetworkManager#Use_dispatcher_to_connect_to_a_vpn_after_a_network-connection_is_established имеет больше информации.
Решение, предложенное con-f-use
, должно работать, но не из-за давней ошибки:
https://bugs.launchpad.net/ubuntu/+source/ network-manager / + bug / 280571
Однако есть обходные пути. Для последних версий NetworkManager существует утилита командной строки nmcli
, которая может быть отредактирована и сохранена как нечто вроде /etc/NetworkManager/dispatcher.d/vpn-up
:
#! /bin/bash
REQUIRED_CONNECTION_NAME="<name-of-connection>"
VPN_CONNECTION_NAME="<name-of-vpn-connection>"
activ_con=$(nmcli con status | grep "${REQUIRED_CONNECTION_NAME}")
activ_vpn=$(nmcli con status | grep "${VPN_CONNECTION_NAME}")
if [ "${activ_con}" -a ! "${activ_vpn}" ];
then
nmcli con up id "${VPN_CONNECTION_NAME}"
fi
[Я не тестировал это - пожалуйста, не стесняйтесь тестировать и редактировать в соответствии с результатами]
См.: https://wiki.archlinux.org/index.php/NetworkManager#Use_dispatcher_to_connect_to_a_vpn_after_a_network-connection_is_established имеет больше информации.
Решение, предложенное con-f-use
, должно работать, но не из-за давней ошибки:
https://bugs.launchpad.net/ubuntu/+source/ network-manager / + bug / 280571
Однако есть обходные пути. Для последних версий NetworkManager существует утилита командной строки nmcli
, которая может быть отредактирована и сохранена как нечто вроде /etc/NetworkManager/dispatcher.d/vpn-up
:
#! /bin/bash
REQUIRED_CONNECTION_NAME="<name-of-connection>"
VPN_CONNECTION_NAME="<name-of-vpn-connection>"
activ_con=$(nmcli con status | grep "${REQUIRED_CONNECTION_NAME}")
activ_vpn=$(nmcli con status | grep "${VPN_CONNECTION_NAME}")
if [ "${activ_con}" -a ! "${activ_vpn}" ];
then
nmcli con up id "${VPN_CONNECTION_NAME}"
fi
[Я не тестировал это - пожалуйста, не стесняйтесь тестировать и редактировать в соответствии с результатами]
См.: https://wiki.archlinux.org/index.php/NetworkManager#Use_dispatcher_to_connect_to_a_vpn_after_a_network-connection_is_established имеет больше информации.
Решение, предложенное con-f-use
, должно работать, но не из-за давней ошибки:
https://bugs.launchpad.net/ubuntu/+source/ network-manager / + bug / 280571
Однако есть обходные пути. Для последних версий NetworkManager существует утилита командной строки nmcli
, которая может быть отредактирована и сохранена как нечто вроде /etc/NetworkManager/dispatcher.d/vpn-up
:
#! /bin/bash
REQUIRED_CONNECTION_NAME="<name-of-connection>"
VPN_CONNECTION_NAME="<name-of-vpn-connection>"
activ_con=$(nmcli con status | grep "${REQUIRED_CONNECTION_NAME}")
activ_vpn=$(nmcli con status | grep "${VPN_CONNECTION_NAME}")
if [ "${activ_con}" -a ! "${activ_vpn}" ];
then
nmcli con up id "${VPN_CONNECTION_NAME}"
fi
[Я не тестировал это - пожалуйста, не стесняйтесь тестировать и редактировать в соответствии с результатами]
См.: https://wiki.archlinux.org/index.php/NetworkManager#Use_dispatcher_to_connect_to_a_vpn_after_a_network-connection_is_established имеет больше информации.
В Ubuntu Trusty 14.04 VPN auto connect store в GUI для отдельных сохраненных настроек wi-fi. Системные настройки - Сеть - проверьте заинтересованные Wi-Fi или Lan - Настройки (вкладка «Общие») - выберите «Автоматическое подключение к VPN ...»
Если я правильно помню, это сработало некоторое время, t!
Это может быть очевидно, но иногда я не думаю об этом. Вы пытались переустановить, например: sudo apt-get purge network-manager-vpn sudo apt-get install network-manager-vpnc Затем:Теперь я хочу, чтобы это VPN-соединение автоматически активировалось, когда я 'в определенной беспроводной сети.
Я могу подтвердить это следующее решение, работающее для меня. Я запускаю Ubuntu 14.04 LTS.
Я пошел к значку выключения, а затем к системным настройкам.
Когда откроется экран настроек, я перешел в «Сеть» и сеть WiFi, с которой Я был связан. На одной стороне названия сети есть небольшая стрелка.
Нажмите эту иконку, и вы увидите опцию «Настройки» или «Параметры» (или что-то похожее ) здесь:
Когда откроется следующее окно, просто перейдите на вкладку «Общие», и вы увидите опцию, которая дает вам возможность Автоматическое подключение к VPN. Выберите VPN, который вы хотите подключить при подключении к этому WiFi, и стрелу! Каждый раз, когда вы подключаетесь к этой сети, Ubuntu также подключит вас к этой VPN. :)
Для меня это работает. Надеюсь, это сработает и для всех остальных. Не требует никакого текстового редактора или редактора кода или чего-либо еще ..
Использовать следующий скрипт Python Gist # 1547663.
Первым параметром сценария является имя подключения VPN в NetworkManager, а второе - имена разделяемых запятыми имен сетей, которые следует игнорировать (например, с помощью VPN-подключения у себя дома есть бесполезно).
Пример установки и запуска его во время загрузки:
git clone git://gist.github.com/1547663.git /home/user/autovpn/
echo "python /home/user/autovpn/autovpn.py 'myvpn' 'Auto homenetwork,Auto worknetwork' > /var/log/autovpn.log&" > /etc/rc.local
/etc/rc.local
Теперь, если вы подключитесь к сети (либо Wi-Fi, либо ethernet), она также попытается настроить VPN-соединение.
Вам больше не нужны скрипты диспетчера! В 14.04 (Trusty Tahr) вам нужно выполнить следующие шаги после установки параметра автосоединения в графическом интерфейсе NetworkManager.
Хранить секреты vpn в файле конфигурации для VPN-соединения в разделе /etc/NetworkManager/system-connections/YourVPNConnectionName ,
Вы можете достичь этого, установив IPSec secret-flags=0 и Xauth password-flags=0 в файле конфигурации. Затем перейдите в GUI NetworkManager и снова сохраните настройки VPN-соединения. Теперь в файле конфигурации должен присутствовать раздел под названием [vpn-secrets]. Должна быть двойная проверка и автосоединение!
Несмотря на то, что справочная страница перечисляет nmcli con status как действительную команду, приведенное выше решение, предоставленное Hugo Heden, возвращает ошибку "Error: Object 'status' is unknown, try 'nmcli help'"
Я использую nmcli 1.2.2 (nmcli -v ), и я протестировал и изменил следующее для /etc/NetworkManager/dispatcher.d/vpn-up, и он работал как шарм.
#! /bin/bash
REQUIRED_CONNECTION_NAME="<name-of-connection>"
VPN_CONNECTION_NAME="<name-of-vpn-connection>"
default_conn=$(nmcli con show --active | grep "${REQUIRED_CONNECTION_NAME}")
vpn_conn=$(nmcli con show id | grep "${VPN_CONNECTION_NAME}")
if [ "${default_conn}" -a ! "${vpn_conn}" ];
then
nmcli con up id "${VPN_CONNECTION_NAME}"
fi
Примечание. Вы можете использовать nmcli con show для просмотра всех имен соединений, поскольку они не всегда совпадают с тем, что указано в графическом интерфейсе сетевых подключений
Вам больше не нужны скрипты диспетчера! В 14.04 (Trusty Tahr) вам нужно выполнить следующие шаги после установки параметра автосоединения в графическом интерфейсе NetworkManager.
Хранить секреты vpn в файле конфигурации для VPN-соединения в разделе /etc/NetworkManager/system-connections/YourVPNConnectionName
,
Вы можете добиться этого, установив IPSec secret-flags=0
и Xauth password-flags=0
в файле конфигурации. Затем перейдите в GUI NetworkManager и снова сохраните настройки VPN-соединения. Теперь в файле конфигурации должен присутствовать раздел под названием [vpn-secrets]. Дважды проверьте его и автосоединение.
Если я правильно помню, он работал некоторое время и больше не работает.
blockquote>
- Это может быть очевидно, но иногда я не думаю об этом. Вы пытались переустановить, например: sudo apt-get purge network-manager-vpn sudo apt-get install network-manager-vpnc Затем: [/g0]
Теперь Я хочу, чтобы это VPN-соединение автоматически активировалось, когда я нахожусь в определенной беспроводной сети.
blockquote>
- Есть способ подавить сообщение типа «не удалось подключиться», когда ваш пользователи находятся в неправильной сети, но не могут вспомнить, как это произошло. Я не вижу другого способа автоматического подключения графическим способом. Возможно, вам придется написать скрипт, выполняющий соединение, когда в указанной wlan-сети.
Надеюсь, что это помогло.
В Ubuntu Trusty 14.04 VPN auto connect store в GUI для отдельных сохраненных настроек wi-fi. Системные настройки - Сеть - проверьте заинтересованные Wi-Fi или Lan - Настройки (вкладка «Общие») - выберите «Автоподключиться к VPN ...»
Несмотря на то, что справочная страница перечисляет nmcli con status
как действительную команду, приведенное выше решение, предоставленное Hugo Heden
, возвращает ошибку "Error: Object 'status' is unknown, try 'nmcli help'"
Я использую nmcli 1.2.2 (nmcli -v
), и я протестировал и изменил следующее для /etc/NetworkManager/dispatcher.d/vpn-up
, и он работал как шарм.
#! /bin/bash
REQUIRED_CONNECTION_NAME="<name-of-connection>"
VPN_CONNECTION_NAME="<name-of-vpn-connection>"
default_conn=$(nmcli con show --active | grep "${REQUIRED_CONNECTION_NAME}")
vpn_conn=$(nmcli con show id | grep "${VPN_CONNECTION_NAME}")
if [ "${default_conn}" -a ! "${vpn_conn}" ];
then
nmcli con up id "${VPN_CONNECTION_NAME}"
fi
Примечание. Вы можете использовать nmcli con show
для просмотра всех имен соединений, поскольку они не всегда совпадают с тем, что указано в графическом интерфейсе сетевых подключений
Я могу подтвердить это следующее решение, работающее для меня. Я запускаю Ubuntu 14.04 LTS.
Я пошел к значку выключения, а затем к системным настройкам.
Когда откроется экран настроек, я пошел в «Сеть» и сеть WiFi, с которой Я был связан. На одной стороне названия сети есть небольшая стрелка.
Нажмите на эту иконку, и вы увидите опцию «Настройки» или «options» (или что-то подобное) здесь:
Когда откроется следующее окно, просто перейдите на вкладку «Общие», и вы увидите который дает вам возможность автоматически подключаться к VPN. Выберите VPN, который вы хотите подключить при подключении к этому WiFi, и стрелу! Каждый раз, когда вы подключаетесь к этой сети, Ubuntu также подключит вас к этой VPN. :)
Для меня это работает. Надеюсь, это сработает и для всех остальных. Не требует никакого текстового редактора или редактора кода или чего-либо еще.
Вам больше не нужны скрипты диспетчера! В 14.04 (Trusty Tahr) вам нужно выполнить следующие шаги после установки параметра автосоединения в графическом интерфейсе NetworkManager.
Хранить секреты vpn в файле конфигурации для VPN-соединения в разделе /etc/NetworkManager/system-connections/YourVPNConnectionName
,
Вы можете добиться этого, установив IPSec secret-flags=0
и Xauth password-flags=0
в файле конфигурации. Затем перейдите в GUI NetworkManager и снова сохраните настройки VPN-соединения. Теперь в файле конфигурации должен присутствовать раздел под названием [vpn-secrets]. Дважды проверьте его и автосоединение.
Если я правильно помню, он работал некоторое время и больше не работает.
blockquote>
- Это может быть очевидно, но иногда я не думаю об этом. Вы пытались переустановить, например: sudo apt-get purge network-manager-vpn sudo apt-get install network-manager-vpnc Затем: [/g0]
Теперь Я хочу, чтобы это VPN-соединение автоматически активировалось, когда я нахожусь в определенной беспроводной сети.
blockquote>
- Есть способ подавить сообщение типа «не удалось подключиться», когда ваш пользователи находятся в неправильной сети, но не могут вспомнить, как это произошло. Я не вижу другого способа автоматического подключения графическим способом. Возможно, вам придется написать скрипт, выполняющий соединение, когда в указанной wlan-сети.
Надеюсь, что это помогло.
В Ubuntu Trusty 14.04 VPN auto connect store в GUI для отдельных сохраненных настроек wi-fi. Системные настройки - Сеть - проверьте заинтересованные Wi-Fi или Lan - Настройки (вкладка «Общие») - выберите «Автоподключиться к VPN ...»
Использовать следующий скрипт Python Gist # 1547663 .
Первым параметром сценария является имя подключения VPN в NetworkManager, а второе - разделенные запятыми имена сетей, которые следует игнорировать ( например, использование VPN-подключения дома бесполезно).
Пример установки и разрешения запуска во время загрузки:
git clone git://gist.github.com/1547663.git /home/user/autovpn/
echo "python /home/user/autovpn/autovpn.py 'myvpn' 'Auto homenetwork,Auto worknetwork' > /var/log/autovpn.log&" > /etc/rc.local
/etc/rc.local
Теперь, если вы подключаетесь к сети (либо через Wi-Fi, либо через Ethernet ), он также попытается настроить VPN-соединение.
Несмотря на то, что справочная страница перечисляет nmcli con status
как действительную команду, приведенное выше решение, предоставленное Hugo Heden
, возвращает ошибку "Error: Object 'status' is unknown, try 'nmcli help'"
Я использую nmcli 1.2.2 (nmcli -v
), и я протестировал и изменил следующее для /etc/NetworkManager/dispatcher.d/vpn-up
, и он работал как шарм.
#! /bin/bash
REQUIRED_CONNECTION_NAME="<name-of-connection>"
VPN_CONNECTION_NAME="<name-of-vpn-connection>"
default_conn=$(nmcli con show --active | grep "${REQUIRED_CONNECTION_NAME}")
vpn_conn=$(nmcli con show id | grep "${VPN_CONNECTION_NAME}")
if [ "${default_conn}" -a ! "${vpn_conn}" ];
then
nmcli con up id "${VPN_CONNECTION_NAME}"
fi
Примечание. Вы можете использовать nmcli con show
для просмотра всех имен соединений, поскольку они не всегда совпадают с тем, что указано в графическом интерфейсе сетевых подключений
Вам больше не нужны скрипты диспетчера! В 14.04 (Trusty Tahr) вам нужно выполнить следующие шаги после установки параметра автосоединения в графическом интерфейсе NetworkManager.
Хранить секреты vpn в файле конфигурации для VPN-соединения в разделе /etc/NetworkManager/system-connections/YourVPNConnectionName
,
Вы можете добиться этого, установив IPSec secret-flags=0
и Xauth password-flags=0
в файле конфигурации. Затем перейдите в GUI NetworkManager и снова сохраните настройки VPN-соединения. Теперь в файле конфигурации должен присутствовать раздел под названием [vpn-secrets]. Дважды проверьте его и автосоединение.
В Ubuntu Trusty 14.04 VPN auto connect store в GUI для отдельных сохраненных настроек wi-fi. Системные настройки - Сеть - проверьте заинтересованные Wi-Fi или Lan - Настройки (вкладка «Общие») - выберите «Автоподключиться к VPN ...»
Использовать следующий скрипт Python Gist # 1547663 .
Первым параметром сценария является имя подключения VPN в NetworkManager, а второе - разделенные запятыми имена сетей, которые следует игнорировать ( например, использование VPN-подключения дома бесполезно).
Пример установки и разрешения запуска во время загрузки:
git clone git://gist.github.com/1547663.git /home/user/autovpn/
echo "python /home/user/autovpn/autovpn.py 'myvpn' 'Auto homenetwork,Auto worknetwork' > /var/log/autovpn.log&" > /etc/rc.local
/etc/rc.local
Теперь, если вы подключаетесь к сети (либо через Wi-Fi, либо через Ethernet ), он также попытается настроить VPN-соединение.
Несмотря на то, что справочная страница перечисляет nmcli con status
как действительную команду, приведенное выше решение, предоставленное Hugo Heden
, возвращает ошибку "Error: Object 'status' is unknown, try 'nmcli help'"
Я использую nmcli 1.2.2 (nmcli -v
), и я протестировал и изменил следующее для /etc/NetworkManager/dispatcher.d/vpn-up
, и он работал как шарм.
#! /bin/bash
REQUIRED_CONNECTION_NAME="<name-of-connection>"
VPN_CONNECTION_NAME="<name-of-vpn-connection>"
default_conn=$(nmcli con show --active | grep "${REQUIRED_CONNECTION_NAME}")
vpn_conn=$(nmcli con show id | grep "${VPN_CONNECTION_NAME}")
if [ "${default_conn}" -a ! "${vpn_conn}" ];
then
nmcli con up id "${VPN_CONNECTION_NAME}"
fi
Примечание. Вы можете использовать nmcli con show
для просмотра всех имен соединений, поскольку они не всегда совпадают с тем, что указано в графическом интерфейсе сетевых подключений