WireGuard — что это, отличия от OpenVPN и настройка | Глоссарий FREEHOSTING

WireGuard

WireGuard VPN
WireGuard — WireGuard — современный VPN-протокол с упрощённой архитектурой и сильной криптографией. Работает поверх UDP, использует Curve25519 и ChaCha20, кодовая база — около 4 000 строк. Включён в ядро Linux с версии 5.6.

Определение простыми словами

WireGuard — это VPN, в котором всё устроено просто: фиксированный набор алгоритмов, по одному ключу на клиента, никаких выборов шифров и согласований. Конфиг — десяток строк, поднимается за минуту, работает быстрее OpenVPN и IPSec в полтора-два раза.

Протокол создал Джейсон Доненфельд в 2016 году, а в 2020-м WireGuard вошёл в ядро Linux 5.6 — теперь он работает на уровне kernel-space без накладных расходов на context switch. Поддерживается на Linux, Windows, macOS, iOS, Android и роутерах OpenWrt/MikroTik.

Сравнение

Параметр WireGuard OpenVPN IPSec/IKEv2
Транспорт UDP UDP/TCP UDP/ESP
Криптография фиксированная настраиваемая настраиваемая
Размер кода ~4 000 строк ~70 000 строк ~400 000 строк
Скорость ~900 Мбит/с на 1 vCPU ~300 Мбит/с ~600 Мбит/с
Время рукопожатия 1 RTT 2–6 RTT 2–4 RTT
Конфигурация 10–20 строк 50–100 строк сложная
Аудит один раз, лаконичный периодически сложно из-за объёма

Кейсы использования

  • Личный VPN на VPS за границей: один конфиг, мгновенное переключение между точками.
  • Корпоративная site-to-site связка двух офисов: два роутера, один туннель, без MTU-проблем.
  • Подключение удалённых сотрудников к внутренней сети с распределением /32-адресов на каждого.
  • Mesh-сеть Tailscale/Netbird поверх WireGuard для связи серверов в разных датацентрах.
  • Негативный сценарий: статический IP клиента в конфиге не работает за NAT — нужно держать PersistentKeepalive 25 секунд, иначе соединение «протухает» через NAT-таблицу провайдера.

Технические детали

# Установка на Ubuntu/Debian
sudo apt install wireguard-tools

# Генерация пары ключей
wg genkey | tee privatekey | wg pubkey > publickey

# Минимальный серверный конфиг /etc/wireguard/wg0.conf
# [Interface]
# Address = 10.0.0.1/24
# PrivateKey = 
# ListenPort = 51820
#
# [Peer]
# PublicKey = 
# AllowedIPs = 10.0.0.2/32

# Поднять и поставить в автозагрузку
sudo wg-quick up wg0
sudo systemctl enable wg-quick@wg0

# Статус и трафик по пирам
sudo wg show

Часто разворачивается на VPS вместе с Wireshark для отладки и связкой с OpenVPN как fallback на TCP-портах.

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

WireGuard блокируется в России?

Сам протокол UDP/51820 определяется и блокируется некоторыми провайдерами. Помогает смена порта, обфускация через udp2raw или туннелирование внутри Cloak/Hysteria.

Сколько клиентов выдержит один WireGuard-сервер?

На VPS с 1 vCPU и 1 ГБ RAM спокойно обслуживается 50–100 одновременных пиров. Узкое место — пропускная способность канала, не сам протокол.

Чем WireGuard лучше OpenVPN?

Меньше кода и атаки поверхности, выше скорость, ниже задержка установления соединения, простой конфиг. Минус — нет встроенной маскировки под HTTPS, как у обфусцированного OpenVPN.