← Все статьи
Читать на:

Как развернуть WireGuard VPN на VPS: пошаговая инструкция

Как развернуть WireGuard VPN на VPS: пошаговая инструкция

WireGuard — современный VPN-протокол, который выделяется минималистичной кодовой базой, высокой скоростью работы и простотой настройки по сравнению с OpenVPN или IPsec. Он встроен в ядро Linux начиная с версии 5.6, что делает его надёжным и производительным выбором для личного использования, обхода ограничений или организации защищённой корпоративной сети. В этой статье мы разберём полный процесс развёртывания WireGuard на VPS-сервере под управлением Ubuntu или Debian.

Подготовка сервера

Прежде чем приступать к установке, убедитесь, что ваш VPS обновлён и доступен по SSH. Выполните команду apt update && apt upgrade -y, чтобы синхронизировать пакеты и установить актуальные обновления безопасности. Также убедитесь, что у вас есть права суперпользователя — большинство команд потребуют запуска через sudo или от имени root. Если ваш провайдер предоставляет минимальный образ системы, этого окружения будет вполне достаточно.

Установка WireGuard

На Ubuntu и Debian установка выполняется одной командой: apt install wireguard -y. После завершения установки в системе появится утилита wg и вспомогательный инструмент wg-quick, который упрощает управление интерфейсами. Убедитесь, что модуль ядра загружен корректно — это можно проверить командой modinfo wireguard. На большинстве современных VPS с актуальным ядром никаких дополнительных действий не потребуется.

Генерация ключей и создание конфигурации сервера

WireGuard использует пары асимметричных ключей для аутентификации участников туннеля. Сгенерируйте приватный и публичный ключи сервера следующими командами: wg genkey | tee /etc/wireguard/server_private.key | wg pubkey > /etc/wireguard/server_public.key. Затем создайте файл конфигурации /etc/wireguard/wg0.conf. В секции Interface укажите приватный ключ сервера, адрес интерфейса в вашей виртуальной подсети (например, 10.0.0.1/24) и порт прослушивания (стандартно — 51820/UDP). Убедитесь, что файл конфигурации доступен только root-пользователю: chmod 600 /etc/wireguard/wg0.conf.

Для корректной маршрутизации трафика клиентов через сервер необходимо включить IP-форвардинг. Откройте файл /etc/sysctl.conf и раскомментируйте строку net.ipv4.ip_forward=1, после чего примените изменения командой sysctl -p. Также добавьте в секцию PostUp файла конфигурации правила iptables для NAT, чтобы трафик клиентов выходил через внешний интерфейс сервера. Это стандартная практика при использовании WireGuard как полноценного VPN-шлюза.

Настройка клиента и добавление пира

На клиентском устройстве аналогичным образом сгенерируйте пару ключей. Создайте конфигурационный файл клиента: в секции Interface укажите приватный ключ клиента и его IP-адрес в виртуальной подсети (например, 10.0.0.2/32). В секции Peer пропишите публичный ключ сервера, его внешний IP-адрес с портом в поле Endpoint, а в AllowedIPs укажите 0.0.0.0/0, если хотите направить через туннель весь трафик. Параметр PersistentKeepalive = 25 поможет поддерживать соединение активным при работе за NAT.

На сервере добавьте клиента как пира в файл wg0.conf: создайте секцию Peer с публичным ключом клиента и разрешённым IP-адресом (AllowedIPs = 10.0.0.2/32). После этого перезапустите интерфейс командой wg-quick down wg0 && wg-quick up wg0 или примените изменения без разрыва соединений через wg syncconf wg0 <(wg-quick strip wg0). Проверить состояние туннеля и активные соединения можно командой wg show.

Автозапуск и проверка соединения

Чтобы WireGuard автоматически поднимался после перезагрузки сервера, включите соответствующий systemd-сервис: systemctl enable wg-quick@wg0. Запустите его командой systemctl start wg-quick@wg0 и проверьте статус через systemctl status wg-quick@wg0. Для проверки работы туннеля с клиентской стороны выполните ping до адреса сервера в виртуальной сети (10.0.0.1) — если пакеты проходят, конфигурация выполнена корректно. Также можно проверить внешний IP через сервис вроде ifconfig.me — он должен совпадать с IP вашего VPS.

Заключение

WireGuard — один из лучших инструментов для организации защищённого VPN-соединения благодаря простоте, скорости и встроенной поддержке в современных ядрах Linux. Развернуть его на VPS можно буквально за 15-20 минут, следуя описанным выше шагам. Главное — аккуратно управлять ключами и правильно настроить маршрутизацию на сервере.

Если вы ещё не определились с площадкой для размещения своего VPN-сервера, обратите внимание на NodexGo (nodex-go.com) — хостинг-провайдер предлагает аренду VPS с быстрым развёртыванием и поддержкой популярных Linux-дистрибутивов. Вы сможете арендовать подходящий сервер и уже через несколько минут приступить к настройке WireGuard по этой инструкции.