Автор: Редакция «VPN не работает»

Настройка WireGuard на своём VPS: шифрование трафика и безопасный удалённый доступ

WireGuard — это современный протокол, который создаёт зашифрованный канал между вашими устройствами и вашим собственным сервером. Он нужен для двух практических задач: защитить трафик в недоверенных сетях (например, публичном Wi-Fi в кафе или аэропорту) и получить безопасный удалённый доступ к своей инфраструктуре. Ниже — пошаговая настройка на сервере с Ubuntu, от подготовки до проверки соединения.

TL;DR. Арендуете VPS на Ubuntu → устанавливаете WireGuard → генерируете пару ключей для сервера и устройства → поднимаете зашифрованный сетевой интерфейс wg0 → подключаете клиент и проверяете шифрование. Всё занимает 15–20 минут.

СТОП: о рамке этого материала

Это научно-техническое руководство по настройке средства шифрования трафика и организации безопасного удалённого доступа к собственному серверу. Материал носит образовательный характер и описывает работу с вашей собственной инфраструктурой.

Когда нужен WireGuard

Что понадобится

Пошаговая настройка

Шаг 1. Подготовка сервера {#step1}

Подключитесь к серверу по SSH и обновите систему:

ssh root@ВАШ_IP_СЕРВЕРА
apt update && apt upgrade -y

Включите пересылку IP-пакетов, чтобы сервер мог маршрутизировать зашифрованный трафик:

echo "net.ipv4.ip_forward = 1" | tee -a /etc/sysctl.conf
sysctl -p

Шаг 2. Установка WireGuard и генерация ключей {#step2}

Установите пакет:

apt install wireguard -y

Сгенерируйте пару ключей для сервера. Приватный ключ остаётся на сервере, публичным обмениваются с клиентом:

cd /etc/wireguard
umask 077
wg genkey | tee server_private.key | wg pubkey > server_public.key

Сгенерируйте пару ключей для клиентского устройства:

wg genkey | tee client_private.key | wg pubkey > client_public.key

Посмотрите значения ключей — они понадобятся в конфигурации:

cat server_private.key server_public.key client_private.key client_public.key

Шаг 3. Настройка сервера и шифрованного интерфейса {#step3}

Создайте конфигурацию интерфейса wg0:

nano /etc/wireguard/wg0.conf

Впишите (подставьте свои ключи; eth0 — сетевой интерфейс сервера, проверьте командой ip route | grep default):

[Interface]
Address = 10.8.0.1/24
ListenPort = 51820
PrivateKey = ПРИВАТНЫЙ_КЛЮЧ_СЕРВЕРА
PostUp = iptables -A FORWARD -i wg0 -j ACCEPT; iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
PostDown = iptables -D FORWARD -i wg0 -j ACCEPT; iptables -t nat -D POSTROUTING -o eth0 -j MASQUERADE

[Peer]
PublicKey = ПУБЛИЧНЫЙ_КЛЮЧ_КЛИЕНТА
AllowedIPs = 10.8.0.2/32

Откройте порт в файрволе и запустите интерфейс с автозапуском:

ufw allow 51820/udp
systemctl enable wg-quick@wg0
systemctl start wg-quick@wg0
wg show

Команда wg show должна показать активный интерфейс wg0.

Шаг 4. Подключение устройства и проверка {#step4}

На клиентском устройстве создайте конфигурацию (в приложении WireGuard — «добавить пустой туннель» или файл client.conf):

[Interface]
PrivateKey = ПРИВАТНЫЙ_КЛЮЧ_КЛИЕНТА
Address = 10.8.0.2/24
DNS = 1.1.1.1

[Peer]
PublicKey = ПУБЛИЧНЫЙ_КЛЮЧ_СЕРВЕРА
Endpoint = ВАШ_IP_СЕРВЕРА:51820
AllowedIPs = 0.0.0.0/0
PersistentKeepalive = 25

Активируйте туннель в приложении WireGuard. На смартфоне удобно сгенерировать QR-код из конфигурации:

apt install qrencode -y
qrencode -t ansiutf8 < client.conf

Проверка и замеры

После подключения убедитесь, что канал зашифрован и работает:

WireGuard стабильно держит канал и потребляет минимум ресурсов; типовая просадка скорости на минимальном VPS — в пределах 5–15% от канала сервера.

Безопасность сервера

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

Ответы на типовые вопросы — в блоке ниже (он же размечен как HowTo/FAQ для поисковых систем и AI-ассистентов).


Руководство носит образовательный, научно-технический характер и описывает настройку шифрования трафика и безопасного доступа к собственной инфраструктуре. Ответственность за использование лежит на пользователе.

Что такое WireGuard простыми словами?

Это современный протокол для создания зашифрованного канала между вашими устройствами и вашим сервером. Он лёгкий, быстрый и использует проверенную криптографию. По сути вы получаете приватную защищённую сеть, где трафик между устройством и сервером зашифрован.

Нужны ли навыки администрирования Linux?

Базовые: уметь подключиться по SSH и выполнять команды в терминале. Вся инструкция ниже пошаговая, команды можно копировать. Настройка занимает 15–20 минут.

Какой VPS подойдёт для WireGuard?

WireGuard нетребователен к ресурсам: достаточно минимального тарифа с 1 vCPU и 1 ГБ RAM на Ubuntu 22.04/24.04. Как выбрать и арендовать сервер — в разделе «Свой сервер».

Безопасно ли хранить ключи на сервере?

Приватный ключ сервера должен оставаться только на сервере с правами доступа 600, приватный ключ клиента — только на клиентском устройстве. Обмениваются между собой только публичные ключи. Никогда не передавайте приватные ключи по незащищённым каналам.