← 4BurneT📚 Блог🧭 Проверка маршрута❓ FAQ

VPN на Linux: wg-quick, NetworkManager и WG Tunnel

Обновлено: 2026-10-17 · чтение ~8 мин

На Linux VPN настраивается быстрее, чем на любой другой системе: WireGuard входит в ядро с версии 5.6, поэтому отдельный драйвер не нужен — только утилиты. Ниже три способа на выбор: командная строка, NetworkManager и графическое приложение.

Что выбрать

СпособКому подходитПлюсы
wg-quick + systemdСерверы, ноутбуки, «поставил и забыл»Работает везде, поднимается при загрузке, ничего лишнего
NetworkManagerНоутбук с GNOME или KDEПереключатель в трее, дружит с Wi-Fi и VPN-профилями
WG TunnelТем, кто хочет графический интерфейсПоддержка WireGuard и AmneziaWG, раздельное туннелирование

Способ 1: wg-quick (рекомендую)

Установка

Пакет нужен только с утилитами — само ядро уже умеет WireGuard.

# Debian / Ubuntu / Mint
sudo apt update
sudo apt install -y wireguard-tools resolvconf
# Fedora
sudo dnf install -y wireguard-tools
# Arch / Manjaro
sudo pacman -S --needed wireguard-tools
💡 Если система использует systemd-resolved (обычно так и есть на Ubuntu и Fedora), вместо resolvconf можно ничего не ставить: современные версии wg-quick работают с resolvectl сами.

Конфиг

Скачайте конфиг в боте («📱 Мой VPN» → скачать) и положите его в /etc/wireguard/ под именем wg0.conf. Имя файла задаёт имя интерфейса — именно оно понадобится дальше.

sudo install -m 600 ~/Downloads/wg0.conf /etc/wireguard/wg0.conf

Права 600 обязательны: в файле лежит приватный ключ, и wg-quick откажется работать, если файл доступен другим.

Запуск

sudo wg-quick up wg0

Проверить, что поднялось:

sudo wg show
ip -4 addr show wg0
curl -s https://api.ipify.org

wg show должен показать интерфейс и время последнего рукопожатия (latest handshake). Если там пусто — соединение не установилось, смотрите раздел «Диагностика» ниже.

Автозапуск при загрузке

sudo systemctl enable wg-quick@wg0
sudo systemctl start wg-quick@wg0
sudo systemctl status wg-quick@wg0

Отключить и убрать из автозапуска:

sudo systemctl disable --now wg-quick@wg0
sudo wg-quick down wg0

Способ 2: NetworkManager

Если на ноутбуке стоит GNOME или KDE, удобнее отдать туннель менеджеру сети: он сам поднимет соединение при старте и покажет переключатель в трее.

sudo dnf install -y NetworkManager-wireguard   # Fedora
sudo apt install -y network-manager             # Debian/Ubuntu

Импорт конфига одной командой:

sudo nmcli connection import type wireguard file ~/Downloads/wg0.conf

Дальше — включение по имени соединения (оно совпадёт с именем файла без расширения):

sudo nmcli connection up wg0
nmcli connection show --active
💡 В графическом интерфейсе то же самое делается через «Настройки → Сеть → VPN → Добавить → Импорт из файла». После импорта профиль будет подниматься по клику в системном меню.

Способ 3: WG Tunnel

Графический клиент для Linux (есть пакеты для Debian/Ubuntu, Fedora/RHEL и Arch). Ставится с wgtunnel.com/download. Импорт профиля — через интерфейс, выбрать файл .conf.

Плюс этого варианта — поддержка AmneziaWG и раздельного туннелирования в одном окне. Минус — на серверах без графической оболочки он не нужен, там проще wg-quick.

DNS: главная тонкость на Linux

У WireGuard в конфиге есть строка DNS =, и на Linux она применяется не всегда автоматически: всё зависит от того, чем система управляет резолвером.

Что стоит в системеКак проверитьЧто делать
systemd-resolvedsystemctl is-active systemd-resolvedОбычно работает сразу, проверить: resolvectl status wg0
resolvconfcommand -v resolvconfУстановить пакет resolvconf, перезапустить туннель
Ручной /etc/resolv.confls -l /etc/resolv.confПрописать DNS вручную или настроить менеджер

Проверка, что DNS идёт через туннель:

resolvectl status wg0 | grep -i "dns servers"
dig +short ya.ru

Split tunneling: что пускать в туннель

На Linux это делается строкой AllowedIPs в секции [Peer]:

Полезный приём для сервера: пускать через VPN только конкретные адреса, а системные обновления и локальную сеть оставить как есть. Подробнее о том, что такое маршруты и почему они важны, — в статье Утечки DNS и IP.

Диагностика

Туннель не поднимается

sudo journalctl -u wg-quick@wg0 -n 50 --no-pager

Частые сообщения и что они значат:

Поднялся, но интернета нет

  1. Проверьте wg show: если latest handshake не появляется, соединение не установилось — дело в сети или ключах.
  2. Проверьте MTU: в наших конфигах стоит 1280. Если правили — верните: слишком большой размер пакета даёт «пинг есть, сайты не грузятся».
  3. Проверьте DNS: dig +short ya.ru. Пусто — проблема в резолвере, а не в туннеле.
  4. Смените сеть: на мобильном интернете часть операторов ограничивает UDP.

Туннель отвалился после сна ноутбука

Обычное дело: NetworkManager восстанавливает соединение сам, wg-quick — нет. Если пользуетесь вторым способом, добавьте перезапуск при пробуждении или перейдите на NetworkManager. Строка PersistentKeepalive = 25 в конфиге помогает удерживать сессию, но не лечит сон системы.

Особенности для серверов

Частые вопросы

Нужно ли устанавливать WireGuard из репозитория?

Драйвер — нет, он в ядре начиная с Linux 5.6. Нужен только пакет утилит wireguard-tools. Проверить модуль: lsmod | grep wireguard — на новых ядрах его может не быть в списке, потому что он встроен, и это нормально.

Почему wg-quick требует права root?

Он создаёт сетевой интерфейс и меняет таблицу маршрутизации — для этого нужны административные права. Запускайте через sudo или настройте автозапуск через systemd, тогда ручной запуск не понадобится.

Можно использовать обычный WireGuard-клиент, если конфиг от AmneziaWG?

Нет. Обычный клиент не понимает параметры маскировки. Обратное работает: наш конфиг в стандартном формате WireGuard, поэтому подходит и для wg-quick, и для WG Tunnel. Подробнее — в статье AmneziaWG и WireGuard.

Как сделать, чтобы VPN включался только для конкретной программы?

На Linux это делается не приложением, а маршрутами: в AllowedIPs перечисляются нужные подсети, либо программа запускается в отдельном сетевом пространстве имён. Первый вариант проще и покрывает большинство задач.

Подойдёт ли один конфиг на Linux и телефон?

Нет. Ключ идентифицирует устройство: два устройства с одним профилем будут попеременно отключать друг друга. Выпустите отдельный конфиг — в подписке до двух устройств, дополнительный слот оформляется в боте.

📖 Читайте также

Как импортировать VPN-конфигVPN не подключается: 12 причинУтечки DNS и IPAmneziaWG и WireGuard: разница
Конфиг для Linux — за минуту
3 дня бесплатно. Подходит для wg-quick, NetworkManager и WG Tunnel.
© 4BurneT VPN · Telegram