VPN на Linux: настройка в Ubuntu и Mint через NetworkManager и wg-quick
Два рабочих способа поднять туннель в Linux — импорт конфигурации в графический NetworkManager и запуск через wg-quick, плюс автозапуск, разбор проблем с DNS и простая защита от утечек.

В Linux всё нужное для туннеля уже встроено в ядро и системные компоненты — ставить отдельный «клиент» обычно не требуется. Вопрос только в том, каким инструментом этим управлять. Разберём два способа: графический для тех, кому нужно просто работать, и терминальный для тех, кто хочет контроля.
Способ 1. NetworkManager, графика
Подходит для Ubuntu, Linux Mint, Fedora, Debian с рабочим столом — везде, где сеть управляется NetworkManager.
Шаг 1. Доустановить плагин. Штатный NetworkManager умеет не все протоколы «из коробки». Откройте менеджер приложений или терминал и поставьте пакет с плагином под нужный протокол — в репозиториях они называются по схеме network-manager-<протокол> и весят считаные килобайты. После установки перезапустите сеанс, иначе новый тип подключения не появится в списке.
Шаг 2. Импортировать конфигурацию. Откройте Параметры → Сеть, нажмите плюс напротив строки VPN и выберите пункт Импортировать из файла. Укажите файл конфигурации, который выдал сервис. Все параметры подставятся автоматически — вручную обычно нужно ввести только логин с паролем, если протокол их требует.
Шаг 3. Проверить настройки. Зайдите в свойства созданного подключения и обратите внимание на две вкладки:
- IPv4 → Дополнительно: галочка «Использовать это соединение только для ресурсов своей сети» должна быть снята, иначе через туннель пойдёт не весь трафик.
- IPv6: если сервис не выдал адрес шестой версии, переведите метод в «Отключено». Иначе часть запросов пойдёт мимо туннеля — это классическая утечка.
Шаг 4. Включить. Переключатель в том же окне либо значок сети в трее. В панели появится индикатор активного подключения.
Способ 2. wg-quick, терминал
Способ для серверов, ноутбуков без графики и Raspberry Pi. Работает с WireGuard.
- Поставьте пакет
wireguard-toolsиз репозитория дистрибутива. - Положите файл конфигурации в каталог
/etc/wireguard/под понятным именем, напримерhome.conf. Важно: имя файла становится именем интерфейса, поэтому без пробелов и не длиннее пятнадцати символов. - Ограничьте права на файл — в нём приватный ключ:
chmod 600на этот файл, каталог/etc/wireguardтоже должен быть закрыт от посторонних. - Поднимите соединение командой
wg-quick up home, опустите —wg-quick down home. - Посмотреть состояние: команда
wgпокажет узел, время последнего рукопожатия и счётчики байтов.
Автозапуск при загрузке делается через systemd: включите службу вида wg-quick@home командой systemctl enable --now wg-quick@home. После этого туннель поднимается сам при старте системы и восстанавливается после разрыва.
Проблема с именами сайтов
Самый частый сюжет в Linux: соединение поднялось, счётчики растут, а браузер пишет «сервер не найден». Причина в том, что запросы имён продолжают уходить старому резолверу.
В графическом варианте лечится так: свойства подключения → IPv4 → поле «Серверы DNS» → адрес, выданный сервисом; там же включите «Использовать это соединение только для…» в положение «выключено».
В терминальном варианте за это отвечает строка DNS в файле конфигурации; чтобы она применялась, в системе должен стоять пакет openresolv или systemd-resolved. Проверить результат можно командой resolvectl status — в блоке вашего туннельного интерфейса должен быть указан нужный сервер.
Простая защита от утечек
Полноценный аварийный выключатель в Linux делается правилами файрвола, но есть вариант попроще: в файле конфигурации WireGuard параметр AllowedIPs со значением 0.0.0.0/0 заворачивает в туннель весь трафик, а отключение IPv6 в настройках подключения убирает второй канал утечки. Для домашнего сценария этого достаточно.
Если нужен строгий режим, добавьте правила, запрещающие исходящий трафик мимо туннельного интерфейса, — но делайте это на машине, к которой у вас есть физический доступ. Ошибка в правилах отрезает удалённое управление мгновенно.
Проверка
Выполните curl ifconfig.me — команда покажет ваш внешний сетевой адрес, он должен отличаться от прежнего. Затем ip route get 8.8.8.8: в выводе должен фигурировать туннельный интерфейс, а не проводной или беспроводной. Полный чек-лист, включая проверку утечек имён, собран в отдельном материале о том, как убедиться, что VPN работает.
Если соединение не поднимается вовсе, смотрите общий разбор причин отказа — большинство из них к операционной системе отношения не имеет. На настольных системах логика похожа: сравните с инструкциями для Windows и macOS.
Коротко
В Linux туннель поднимается либо импортом файла в NetworkManager за минуту, либо командой wg-quick up — и автозапуском через systemd. Два места, где чаще всего ломается: имена сайтов (нужно указать сервер DNS в свойствах подключения) и IPv6, который стоит отключить, если сервис его не выдал. Проверять результат надёжнее командами, а не на глаз.
Что спрашивают чаще всего
- Нужно ли ставить что-то из сторонних репозиториев?
- Обычно нет. Всё необходимое есть в штатных репозиториях Ubuntu, Mint, Fedora и Debian — достаточно доустановить пакет плагина.
- Почему туннель поднялся, а сайты не открываются?
- Почти всегда это имена: запросы уходят к прежнему серверу или в локальный резолвер. Лечится указанием сервера имён в настройках подключения.
- Как сделать, чтобы соединение поднималось при загрузке?
- Через systemd, одной командой включения службы для нужного интерфейса. В графическом варианте — галочкой автоподключения в свойствах.
- Работает ли это на Raspberry Pi?
- Да, схема с wg-quick на Raspberry Pi OS идентична. Именно так часто делают домашний шлюз для устройств без своих клиентов.
- Что выбрать новичку — графику или терминал?
- Графику. Импорт файла в NetworkManager занимает минуту и не требует ничего запоминать.
Из этого же раздела
Как настроить VPN на Windows 11 и Windows 10: пошаговоКак настроить VPN на MacBook: инструкция для macOSКак проверить, что VPN действительно работает, а не просто «горит зелёным»