WireGuard — это современный и мощный VPN с открытым исходным кодом, который обеспечивает высокозащищенный VPN‑канал. WireGuard — отличный выбор, если нужно подключить к VPN множество клиентов с разных устройств и при этом сэкономить вычислительные ресурсы.
Еще одна сильная сторона WireGuard — относительная простота его настройки и запуска. В этой инструкции мы покажем, как с помощью скрипта PiVPN установить WireGuard на VPS и подключить разные кроссплатформенные клиенты.
Инструкция содержит следующие разделы:
- Требования к ВМ и ОС.
- Установка и настройка WireGuard с помощью PiVPN.
- Генерация клиентских конфигурационных файлов для подключения.
- Установка WireGuard-клиентов на устройства и подключение к VPN.
Требования к ВМ и ОС
WireGuard не требователен к вычислительным ресурсам, поэтому будет достаточно ВМ с конфигурацией от 1 CPU, 1 GB RAM и 20–40 GB SSD, а вот способ развертывания сервиса влияет на нагрузку на ВМ.
Запуск WireGuard требует минимум системных ресурсов, а использование Docker‑контейнера добавляет накладные расходы. Для запуска WireGuard в Docker‑контейнере потребуется ВМ следующей конфигурации: 2 CPU, 4 GB RAM и 40–60 GB SSD.
Однако куда более важными являются требования WireGuard к ОС и окружению:
- Linux‑дистрибутив: Ubuntu 20.04/22.04, Debian 11/12, Rocky 8/9 или аналогичный.
- Ядро Linux с поддержкой WireGuard (встроенная поддержка начиная с версии 5.6 или модуль wireguard-dkms для более старых ядер).
- Доступ по SSH с правами root или sudo для установки пакетов и настройки.
- Синхронизированное время через NTP и стабильное интернет‑соединение.
- Возможность открыть внешние UDP‑порты для WireGuard (по умолчанию 51820/UDP для сервера).
Для стабильной работы WireGuard рекомендуется использовать максимально свежие Linux-дистрибутивы, например, те, которые мы предлагаем при создании VPS/VDS.
Установка и настройка WireGuard с помощью PiVPN
Для быстрого и простого развертывания WireGuard можно воспользоваться готовым скриптом PiVPN от The PiVPN Project.
Достаточно войти на ВМ, на которой нужно развернуть VPN, и выполнить команду curl -L https://install.pivpn.io | bash. Скрипт запустится и предложить выполнить следующие шаги.
1. PiVPN Automated Installer: приветственное сообщение. Нажмите Enter:
2. Static IP Needed: предупреждение о том, что PiVPN — это сервер и для его корректной работы нужен статический IP-адрес. Нажмите Enter:
3. IP Information: уведомление об отсутствии автоматической настройки IP. Нажмите Enter:
4. Local Users: выбор локального пользователя от чьего имени будет сконфигурирован VPN. Нажмите Enter:
5. Choose A User: cоздайте non-root пользователя, от чьего имени будет сконфигурирован VPN. Введите имя пользователя и нажмите Enter, например wg:
6. password dialog: установите пароль для нового пользователя, от чьего имени будет сконфигурирован VPN. Придумайте пароль и нажмите Enter:
7. Choose A User: подтвердите выбор пользователя, от чьего имени будет сконфигурирован VPN. С помощью кнопки tab выберите нужного пользователя из списка, если их несколько, и нажмите Enter для подтверждения выбора:
8. Installation mode: краткое описание преимуществ и возможностей WireGuard и OpenVPN. По умолчанию выбран WireGuard — для подтверждения нажмите Enter:
9. Default WireGuard Port: выбор порта, на котором будет работать WireGuard. По умолчанию задан порт 51820 — измените порт или подтвердите выбор порта по умолчанию и нажмите Enter:
10. Confirm Custom Port Number: подтверждение выбранного порта на предыдущем шаге — нажмите Enter:
11. DNS Provider: выбор DNS-провайдера. С помощью стрелок вверх и вниз выберите DNS-провайдера. В большинстве случаев можно выбрать Google или Cloudflare. Подтвердите выбор DNS-провайдера нажатием на клавишу Enter:
12. Public IP or DNS: выбор способа подключения клиентов к VPN (публичный IP, DNS). Для VPS с публичным IP лучше выбрать IP. Подтвердите выбор способа подключения нажатием на клавишу Enter:
13. Server Information: уведомление о генерации ключей для подключения к серверу. Нажмите Enter:
14. Unattended Upgrades: уведомление о рекомендации устанавливать периодические обновления системы безопасности.
15. Unattended Upgrades: согласитесь с периодическим скачиванием обновлений безопасности. Если согласны — выберите YES, если не согласны — No. Нажмите Enter:
16. Installation Complete!: уведомление о том, что установка WireGuard прошла успешно. Нажмите Enter:
17. Reboot: перезагрузка системы. Подтвердите (YES) или отклоните (NO) незамедлительную перезагрузку системы. Обратите внимание: SSH-соединение при этом будет разорвано. Нажмите Enter:
18. Rebooting: уведомление о перезагрузке. Нажмите Enter:
После успешной перезагрузки системы можно приступать к генерации клиентских конфигурационных файлов для подключения.
Генерация клиентских конфигурационных файлов для подключения
У WireGuard есть два пути генерации конфигурационных файлов для подключения клиентов.
1. Генерация конфигурационных файлов для подключения командой pivpn add
- Выполните команду pivpn add
. Будет создан конфигурационный файл для подключения клиента с названием .conf в директории /etc/wireguard/configs/. - Откройте файл /etc/wireguard/configs/
.conf с помощью любого удобного для вас текстового редактора и добавьте в раздел [Interface] следующую запись:
PostUp = ip rule add sport 22 table main suppress_prefixlength 0
priority 100
PostDown = ip rule del sport 22 table main suppress_prefixlength 0
priority 100
Запись исключает порт 22 (SSH) из туннеля WireGuard. Без указанной выше записи SSH будет недоступен так же, как и все остальные порты.
Теперь конфигурационный файл готов к отправке клиенту для подключения.
2. Генерация QR-кода для подключения мобильных клиентов командой pivpn -qr на базе уже созданного конфигурационного файла для подключения:
- Сгенерируйте конфигурационный файл для подключения командой pivpn add
в соответствии с нашей инструкцией. - Выполните команду pivpn -qr. Появится список конфигурационных файлов, из которых можно сделать QR-код.
- Введите порядковый номер конфигурационного файла и pivpn сгенерирует QR-код.
Отсканируйте сразу QR-код мобильным устройством с установленным WireGuard-клиентом или сохраните скриншот для передачи его на мобильное устройство.
Установка WireGuard-клиентов на устройства и подключение к VPN
У WireGuard есть клиенты под все популярные платформы: Windows, Linux, iOS, Android.
Установка клиента WireGuard на Linux и подключение к VPN
Для установки клиента WireGuard на Linux (Ubuntu, Debian) выполните следующие шаги:
- Обновите apt: sudo apt update && sudo apt upgrade
- Установите WireGuard: sudo apt install wireguard.
- Перезагрузите систему: sudo reboot now
- Скопируйте заранее сгенерированный конфигурационный файл для подключения к VPN в директорию /etc/wireguard/.
- Выполните команду wg-quick up
. Будет создан VPN-туннель. - Выполните команду wg для проверки того, что VPN-туннель создался. В терминале будет выведена следующая информация:
root@Server36824911:~# wg
interface: client
public key: XXXXXXXXXXX
private key: (hidden)
listening port: 49616
fwmark: 0xca6c
peer: XXXXXXXXXXX
preshared key: (hidden)
endpoint: 154.59.110.210:51820
allowed ips: 0.0.0.0/0, ::/0
latest handshake: 25 minutes, 25 seconds ago
transfer: 919.96 MiB received, 11.13 MiB sent
Обратите внимание на строку latest handshake — это время последнего успешного рукопожатия и начала работы VPN-туннеля.
Установка клиента WireGuard на Windows и подключение к VPN
Скачать WireGuard-клиента для Windows можно по ссылке. После скачивания и установки загрузите конфигурационный файл для подключения к VPN-серверу и выполните следующие шаги.
Откройте приложение и нажмите на кнопку Добавить туннель:
Выберите скачанный конфигурационный файл для подключения и нажмите кнопку Подключить:
При успешном подключении к VPN-туннелю Статус изменится на Подключен, появятся показатели времени последнего рукопожатия и количества переданных данных в обе стороны::
Установка клиента WireGuard на Android и подключение к VPN
Зайдите в Play Store, найдите WireGuard и скачайте приложение:
Войдите в приложение и нажмите на кнопку в виде плюсика в правом нижнем углу и из выпадающего меню выберите пункт Scan from QR code:
Подключитесь к VPN-серверу по SSH с помощью терминала и введите команду pivpn -qr, затем укажите порядковый номер профиля для подключения. Будет сгенерирован QR-код для подключения. Отсканируйте QR-код камерой приложения:
Активируйте VPN-туннель в приложении, переключив тумблер в положение включено:
На верхней панели уведомлений появится значок ключа — это значит, что трафик теперь едет через VPN-туннель.
WireGuard на VPS oblako.kz
WireGuard — это современный и мощный VPN, который можно установить, настроить и запустить всего в несколько простых команд с помощью скрипта автоматической установки PiVPN от The PiVPN Project. У WireGuard есть клиенты для всех платформ; скачать их можно с официального сайта, а в разделе VPS/VDS можно подобрать подходящий VPS для WireGuard.