
В этой статье я хочу показать вам очень простой и быстрый способ развернуть свой собственный VPN сервер по протоколу wireguard.
Заявленные преимущества WireGuard над другими VPN решениями:
- Простой в использовании.
- Использует современную криптографию: Noise protocol framework, Curve25519, ChaCha20, Poly1305, BLAKE2, SipHash24, HKDF и т.д.
- Компактный читаемый код, проще исследовать на уязвимости.
- Высокая производительность.
- Четкая и проработанная спецификация.
Максимальное преимущество в производительности (по сравнению с OpenVPN и IPSec) будет заметно на Linux системах, так как там WireGuard реализован в виде модуля ядра. Кроме этого поддерживаются все основные системы: macOS, Android, iOS, FreeBSD и OpenBSD, Windows. Скачать клиента для своего устройства можно по ссылке: https://www.wireguard.com/install/
Первое, что нам потребуется – linux машина. Это может быть VPS или физическая машина.
Нам подойдут:
- AlmaLinux >= 8
- Arch Linux
- CentOS Stream >= 8
- Debian >= 10
- Fedora >= 32
- Oracle Linux
- Rocky Linux >= 8
- Ubuntu >= 18.04
На GitHub есть отличный BASH скрипт для автоматической установки и настройки VPN сервера.
Подключаемся на свой VPS по SSH, качаем и запускаем скрипт в консоли:
curl -O https://raw.githubusercontent.com/angristan/wireguard-install/master/wireguard-install.sh
chmod +x wireguard-install.sh
./wireguard-install.sh
Следуем инструкциям и отвечаем на вопросы
Скрипт установит WireGuard (модуль ядра и инструменты) на сервер, настроит его, создаст систематизированную службу и файл конфигурации клиента.
В результате мы получим файл конфигурации для wireguard и qr-код для настройки мобильного устройства.