WireGuard — сверхбыстрый VPN-протокол нового поколения (2016), использующий современную криптографию Curve25519 и ChaCha20 для создания безопасных туннелей. Размер кода — всего 4000 строк (vs 600 000 у OpenVPN), что обеспечивает высокую скорость, безопасность и простоту аудита.
Ключевые особенности WireGuard
Криптография:
Шифрование: ChaCha20-Poly1305
Обмен ключами: Curve25519 (X25519)
Хэш: BLAKE2s
Подпись: Ed25519
Протокол:
- только UDP — максимальная производительность;
- простые конфиги — 5–10 строк вместо 100+
- состояние в памяти — мгновенный реконнект.
Установка WireGuard на VPS (5 минут)
1. Автоматическая установка:
curl -fsSL https://get.docker.com -o get-docker.sh
sh get-docker.sh
docker run -it --rm --privileged --network host --pid host \
-v /etc/wireguard:/config linuxserver/wireguard
2. Ручная (Ubuntu/Debian):
apt update && apt install wireguard -y
wg genkey | tee private.key | wg pubkey > public.key
3. Конфиг сервера (/etc/wireguard/wg0.conf):
[Interface]
PrivateKey = <серверный приватный ключ>
Address = 10.66.66.1/24
ListenPort = 51820
PostUp = iptables -A FORWARD -i %i -j ACCEPT
4. Клиент:
[Peer]
PublicKey = <серверный публичный ключ>
Endpoint = вашVPS.com:51820
AllowedIPs = 0.0.0.0/0
Преимущества WireGuard
| Плюсы | Минусы |
|---|---|
| Скорость +50% vs OpenVPN | Только UDP |
| 4000 строк кода | Меньше кастомизации |
| Мгновенный реконнект | Нет TCP |
| Аудит готов | Меньше клиентов |
Сравнение с OpenVPN
| WireGuard | OpenVPN |
|---|---|
| 1 Мбит/с → 1.5 Гбит/с | 1 Мбит/с → 500 Мбит/с |
| 4 конфига | 100+ строк |
| Curve25519 | RSA-4096 |
| Только UDP | UDP+TCP |
Когда использовать WireGuard
Идеален для:
- гейминг (низкий пинг, стабильность);
- стриминг 4K (высокая пропускная способность);
- мобильные устройства (быстрый реконнект);
- серверы (минимальное потребление CPU).
Рекомендации: VPS с NVMe SSD, 2 ГБ RAM, Ubuntu 22.04/24.04. Порт 51820 UDP. Docker-образ linuxserver/wireguard — запуск за минуту. Для обхода DPI — обфускация (wg-obfuscate).