Поднимаем сервер Wireguard на Debian и подключаемся к нему с телефонов и десктопов

WireGuard — это VPN-туннель с максимальной производительностью. Его просто установить и настроить. Это идеальное решение для подключения удаленного сотрудника к сети предприятия или для создания собственного сервера анонимности в интернете.


Подготовка

Мы будем устанавливать WireGuard не вручную, а используя специальный скрипт с Github.

Для правильной работы скрипта нужны дополнительные пакеты. На Debian их нет. Необходимо установить командой:

sudo apt install mawk grep iproute2 qrencode iptables wget

Установка

sudo apt install wireguard

Генерируем ключи и конфиги

Скачиваем скрипт easy-wg-quick и запускаем его:

mkdir easy-wg-quick
cd easy-wg-quick
wget https://raw.githubusercontent.com/burghardt/easy-wg-quick/master/easy-wg-quick
chmod +x easy-wg-quick
./easy-wg-quick

Скрипт создаст необходимые ключи и конфиги в тестовой директории /easy-wg-quick.

Также скрипт в самом конце выведет QR-код, для быстрого подключения мобильного клиента. О том как это сделать ниже.

Завершаем настройку сервера

Нам нужно перенести конфиг WireGuard в /etc/wireguard и настроить автоматический запуск демона.

Выполняем поочередно команды:

cp wghub.conf /etc/wireguard/wghub.conf
systemctl enable wg-quick@wghub
systemctl start wg-quick@wghub

Сервер WireGuard готов!

Подключение к WireGuard

К WireGuard могут подключаться большое количество устройств. Все ограничивается только шириной канала и ресурсами сервера. В данный момент можно подключаться с любой операционной системы.

Для того, чтобы добавить новое устройство, выполняем команду:

./easy-wg-quick name_profile
No wgclient_name_profile.conf... creating one!
No wgclient_name_profile.uci.txt... creating one!
████████████████████████████████████████████████████████
████ ▄▄▄▄▄ █▀▀▄█▀█▀ ▀ ▀▀▀▀ █▀▄▄▄ ▄  █████▀█ █▀▄█▄▄██ ▀█ ▀▄█▄▀█ ▄▄▄▄▄ ████
████ █   █ █▀▀█   ▀▄▀▄ ▀▄█▄▀█▀▄ ▀█ ▀█▄▀█▀ █▀▄▀▀█▀███▀▄ ▀▀█ ▀▄█ █   █ ████
████ █▄▄▄█ █▀▄▄ ▄██▄█▀▀██▄▄██▄▄▄▄█ ▄▄▄ █  █▀▀▄▄▀  ▀▀▀ ▀  ▄▀█▄█ █▄▄▄█ ████
████▄▄▄▄▄▄▄█▄█ ▀ ▀▄▀▄▀▄█▄█ █▄▀ █ █ █▄█ █ █▄█ ▀ █ █▄█▄▀▄█ ▀ ▀ █▄▄▄▄▄▄▄████
████    ▄▀▄▄ ▀██▀█ █▀▀ ▄▀ ▀█▀██ ▀▄ ▄ ▄▄███▄ ▄▄ ▀█ ██▀▄▄ ▀█▄█  █▄█ ▀▄▀████
█████▄▄ ▄ ▄▄▄▀█ █ █▀█▄██▀▄██▀█▄ ▄█▀█▀█▄ █▄▄    ▄█  ▄▄█    █▀██▄ ▄▄█ ▄████
████▀▄▀▄█ ▄   ██▄▄█ ▀▀▀▀▄▄▀▀ ▀▀█▄█▀▀ ▀█  █ █▀▄  ▀ █ ▄█▄███▄█▄▄▄█▄█  ▀████
████▀█▄ ▄▄▄▀██ █▄▄█▀█▀▀▀▄ ▄▀ ▀▄██▀ ▀▄▄▄▄  ▄▄███▀ ▄ ▀  ▄██▄▄▄▀▄ ▀▀▄█▄▀████
████▀ ▄▀ ▄▄▀▀  ▀ ▀ ▄██▄▄ ▄▀██▀ ▀▄█▀█  ▀▄█ ▀  █ ▀▀▀██▄▄▄▄▀█ █▄  █ ▄█ ▀████
█████▄▀▀ ▄▄▄▀ ▀█ █  ▀██ █▄ █  ▀▀▀▀█▄ █ ▀▀ █▄▄  ▀▄▀█▀   ▀▄▀   █▀▀▄█▄▄ ▄████
█████ ▄▀▀ ▄██▄██▀▄▀▀▀▀▄▄ ▀▀█▄ ▀ ██▄▄▀▄▄█▀ █▄▄  ▀ █▄▀▀ ▄▄  ▀█▀▀▄▄█ ▄█▄████
████▀█▄ █▄▄█▄█▀▀██ █▄█▀ █▀ ▀██▀ ▀  █ ▄▄▄██   ▄▀▀▄  █▄█   ▀█▀▀  █▀▄▀▄ ████
█████▄▄█▄█▄▄▀█ ▄▀▀  ▄█▀▄█▄▄ ▀██▄▄▄ ▄▄▄ █▀█ ▄▀█▀██ █▀▀██ ▄█ ▀ ▄▄▄  ▄█▀████
████ ▄▄▄▄▄ █▄ ▄ █ ███▄ ██▄██ ▀▄▀██ █▄█ ▄▄▄▄  ▄▀▄ ▀ ██▄█▀▀██▄ █▄█ █▀▄█████
████ █   █ █ ▄ ██▄▄▀▄▀ ▀▄  ▀▀█▀ █▀ ▄  ▄▄ █ ▀▀██▄▀▀▄▄▄▄▄█▀█▀▀   ▄▄   ▄████
████ █▄▄▄█ █     ▄█ ▄██▄██▄▀ ▀▄  ██▀█▀█ ▄ ▄▄▀ ▀▄▄▀▀  █ ▄█ █▀  ▄█▄█  █████
████▄▄▄▄▄▄▄█▄▄██▄██▄▄█▄█▄▄█▄██▄█▄██▄▄█▄██▄▄▄█▄███▄██▄██▄▄███▄▄▄██
Scan QR code with your phone or use "wgclient_name_profile.conf" file.
Updating wghub.conf... done!

Important: Deploy updated wghub.conf configuration to wireguard with wg-quick:
  sudo wg-quick down ./wghub.conf # if already configured
  sudo wg-quick up ./wghub.conf
  sudo wg show # to check status

Где name_profile — это любое название профиля на английском языке.

После добавления нового пользователя необходимо повторить команду копирования конфига и перезапустить сервер:

cp wghub.conf /etc/wireguard/wghub.conf
systemctl restart wg-quick@wghub

С телефонов

Необходимо установить приложение WireGuard на Google Play Маркет или App Store

В приложении кликнуть на знак + (Добавить туннель) и выбрать СКАНИРОВАТЬ QR-КОД или СОЗДАТЬ из QR-код. Далее наводим на QR-код, созданный на этапе установки сервера или добавлении пользователя.

Wireguard на Iphone

Это всё!

Активируем соединение и пользуемся VPN.

С десктопов

Устанавливаем приложение

Для десктопных операционных систем процесс подключния одинаковый.

Загружаем приложение с официального сайта проекта WireGuard и устанавливаем его.

Копируем клиентский конфиг с сервера

На предыдущем этапе мы создали конфигурационный файл для name_profile. Сам конфигурационный файл клиента можно вывести на экран командой:

cat wgclient_name_profile.conf
# 13: office > wgclient_name_profile.conf
[Interface]
Address = 10.145.207.13/24
DNS = 1.1.1.1
PrivateKey = BfPxwQdxIZ5tnLmpo4uiFQyHZlIp4GJJ3lDvKz3D8iH=
MTU = 1280
[Peer]
PublicKey =4wfluPXeh/0O2pzIyCFC6plYgiwuOtPpR40qRte67SA=
PresharedKey = ITh3+QpbdgsmBnTCSX9vosjzEwS+KwDFfUrjovroR8I=
AllowedIPs = 0.0.0.0/0, ::/0
Endpoint = 129.134.17.156:46396
PersistentKeepalive = 25

Команда выполняется на сервере. Весь конфиг выделяем (отмечено красным) и копируем в буфер обмена.

Вставляем конфиг в десктопное приложение

Открываем программу и создаем Пустой туннель

Создаем пустой туннель WireGuard в MacOS

В открывшемся окне вводим имя нашего соединения (любое) и вставляем из буфера обмена конфиг.

Вносим конфиг для Wireguard в MacOS

После сохранения, можно подключаться и пользоваться.

Теги:

Комментарии




В качестве аватарки используется сервис - gravatar.com



IT-событие