WireGuard - установка на Ubuntu 22.04 с веб-интерфейсом через docker

Материал из Все о VPN, прокси и свободном интернете

WireGuard - установка на Ubuntu 22.04 с веб-интерфейсом через docker wg-easy

Видео инструкция:


Алгоритм установки VPN wireguard сервера с веб-интерфейсом и возможность генерировать конфиг файлы.
Возможности wg-easy:

Wireguard + веб-интерфейс
Простота использования и установка
Просмотр, создание, редактирование, удаление, включение и отключение клиентов WG
Показ клиентских QR кодов.
Генерация конфиг файлов WG для клиентов
Статистика для каждого подключенного клиента WG
Tx/Rx графики трафика для каждого подключенного клиента WG
Поддержка Gravatar (https://en.wikipedia.org/wiki/Gravatar)

Установка на Ubuntu 22.04 через docker контейнеры:
1) Установить docker на Ubuntu 22.04:

# apt update -y && apt install apt-transport-https ca-certificates curl software-properties-common -y
# curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg
# echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
# apt update
# apt install docker-ce -y
# systemctl enable docker


2) Установить VPN Wireguard + web-ui интерфейс командой по ssh:

# docker run -d --name=wg-easy -e WG_HOST=YOUR_SERVER_IP -e PASSWORD=YOUR_ADMIN_PASSWORD -v ~/.wg-easy:/etc/wireguard -p 51820:51820/udp -p 51821:51821/tcp --cap-add=NET_ADMIN --cap-add=SYS_MODULE --sysctl="net.ipv4.conf.all.src_valid_mark=1" --sysctl="net.ipv4.ip_forward=1"  --restart unless-stopped  weejewel/wg-easy

где

YOUR_SERVER_IP - Ваш VPS IP
YOUR_ADMIN_PASSWORD - пароль от админки
51820 порт - порт наружу для Wireguard
51821 порт - порт наружу для админки Wireguard

Админка Wireguard VPN будет работать по ссылке

http://YOUR_SERVER_IP:51821

Какие контейнеры установились можно проверить командой:

# docker ps -a
CONTAINER ID   IMAGE              COMMAND                  CREATED          STATUS          PORTS                                                                                    NAMES
b6ab88787a23   weejewel/wg-easy   "docker-entrypoint.s…"   47 seconds ago   Up 46 seconds   0.0.0.0:443->51820/udp, :::443->51820/udp, 0.0.0.0:5000->51821/tcp, :::5000->51821/tcp   wg-easy


Ссылка на github:

https://github.com/WeeJeWel/wg-easy

Контейнер wg-easy докера на hub.docker.com:

https://hub.docker.com/r/weejewel/wg-easy

Скриншоты админки Wireguard интерфейса: