Я много мучился с постоянной необходимостью вводить sudo-пароль для включения/выключения wireguard туннеля.
Пользуясь документацией и руководствами из интернета я размещал конфиги внутри директории /etc/wireguard
.
И далее для включения/выключения прогонял команды:
sudo wg-quick up wg0 # включение туннеля
sudo wg-quick down wg0 # выключение
Однако есть удобное решение через NetworkManager, интегрированный во многие Linux дистрибутивы.
Удобным нам способом создаём конфиг файл для туннеля (например как тут). Импортируем конфиг в NetworkManager
nmcli connection import type wireguard file some_new_tunnel.conf
Обратите внимание, что уже на этом шаге нам не требуется sudo.
Мы получим сообщение, о том что соединение успешно создано, а сам туннель уже будет активен:
Connection 'some_new_tunnel' (00aede9f-ce78-48c2-b055-236de8e0b3eb) successfully added.
По умолчанию nmcli
создаёт соединение с опцией автоподключения и из-за этого наш туннель будет подниматься при старте системы.
Отключить автоподключение к туннелю можно с помощью команды ниже:
nmcli connection modify some_new_tunnel connection.autoconnect no
Для последующего включения/выключения туннеля используйте команды:
nmcli connection up some_new_tunnel # включение
nmcli connection down some_new_tunnel # выключение
Обратите внимание, что теперь мы можем управлять состоянием туннеля без использования sudo привилегий. Для меня это дополнительное упрощение, т.к. не приходится каждый раз авторизоваться.
Для удаления соединений можно прогнать команду:
nmcli connection delete some_new_tunnel