> Полный список статей есть в [llms.txt](https://docs.f3cloud.com/llms.txt). Markdown-версия есть у каждой страницы, достаточно добавить .md к её адресу. Эта страница в Markdown: [https://docs.f3cloud.com/ru/vpn-guide/wireguard-vpn-tutorial.md](https://docs.f3cloud.com/ru/vpn-guide/wireguard-vpn-tutorial.md).

# Установка WireGuard на VPS в Docker с панелью wg-easy

Как поднять свой VPN на WireGuard на VPS с веб-панелью wg-easy в Docker. Установка за несколько команд, первая настройка в браузере, создание клиентов, подключение по файлу или QR-коду на компьютере и телефоне, частые ошибки.

**WireGuard** – быстрый и простой протокол для VPN. Он почти не нагружает сервер и быстро переподключается, если на телефоне сменилась сеть.

Чтобы не настраивать WireGuard вручную, поставим к нему веб-панель **wg-easy**. В ней в пару кликов создаются клиенты, а настройки для подключения выдаются файлом или QR-кодом. Все шаги мы проверили на сервере F3 Cloud с Debian 12 и wg-easy версии 15.4.

***

## Шаг 1. Установите Docker

wg-easy работает в Docker. Подключитесь к серверу [по SSH](https://docs.f3cloud.com/ru/vps/termius-connection.md) под пользователем root и установите Docker официальным скриптом.

```bash
curl -fsSL https://get.docker.com -o get-docker.sh
sh get-docker.sh
```

Если Docker на сервере уже стоит, этот шаг можно пропустить. Проверить это можно командой `docker --version`.

***

## Шаг 2. Запустите wg-easy

Создайте папку для панели, скачайте официальный файл настроек и запустите wg-easy.

```bash
# Папка для файлов панели
mkdir -p /opt/wg-easy && cd /opt/wg-easy

# Официальный файл настроек от разработчиков wg-easy
curl -fsSL -o docker-compose.yml https://raw.githubusercontent.com/wg-easy/wg-easy/master/docker-compose.yml

# Разрешаем открывать панель по обычному http://
sed -i -e 's/^    #environment:/    environment:/' -e 's/^    #  - INSECURE=false/      - INSECURE=true/' docker-compose.yml

# Запускаем
docker compose up -d
```

Без настройки `INSECURE=true` новая версия wg-easy открывается только по HTTPS, а для него нужен домен и сертификат. Команда `sed` включает эту настройку, и панель будет доступна сразу по IP-адресу.

> **Панель открывается по HTTP без шифрования.**
>
> Пароль от панели при входе передаётся по сети в открытом виде. Придумайте для неё сложный пароль и не заходите в панель через общественный Wi-Fi.

Если на сервере включён брандмауэр, откройте в нём порт **51820/UDP** для VPN и **51821/TCP** для панели. Как это сделать, мы показали в статье [о брандмауэре](https://docs.f3cloud.com/ru/vps/security/firewall.md).

***

## Шаг 3. Настройте панель в браузере

Откройте в браузере `http://IP-сервера:51821`. При первом входе откроется мастер настройки на русском языке.

1. Нажмите <kbd>Продолжить</kbd>.
2. Придумайте **имя пользователя** и **пароль** администратора и нажмите <kbd>Создать аккаунт</kbd>. Под этими данными вы будете входить в панель.

<figure><img src="https://docs.f3cloud.com/img/wg-easy-setup-account.png" alt="Создание аккаунта администратора в мастере настройки wg-easy"><figcaption><p>Создание администратора панели</p></figcaption></figure>

3. На вопрос **«У вас уже есть существующая настройка?»** ответьте <kbd>Нет</kbd>.
4. В поле **Хост** укажите IP-адрес сервера. Его удобно выбрать кнопкой <kbd>Предложить</kbd>, нужна строка с пометкой **IPv4 - Public**. Порт оставьте **51820** и нажмите <kbd>Продолжить</kbd>.

<figure><img src="https://docs.f3cloud.com/img/wg-easy-setup-host.png" alt="Адрес сервера и порт в мастере настройки wg-easy"><figcaption><p>Адрес сервера и порт для подключения</p></figcaption></figure>

5. Появится сообщение **«Настройка завершена успешно»**. Нажмите <kbd>Войти</kbd> и войдите под созданным аккаунтом.

***

## Шаг 4. Создайте клиента

Клиент – это отдельный профиль для одного устройства или человека. Для телефона и ноутбука лучше создать разных клиентов, так любой из них можно отключить, не трогая остальные.

Нажмите <kbd>Новый</kbd>, введите имя, например `laptop`, и нажмите <kbd>Создать клиента</kbd>. Поле **Дата отключения** можно оставить пустым, тогда клиент будет работать без срока.

<figure><img src="https://docs.f3cloud.com/img/wg-easy-client-new.png" alt="Окно создания нового клиента в wg-easy" width="320"><figcaption><p>Создание клиента</p></figcaption></figure>

Клиент появится в списке. Справа от него кнопки для управления.

<figure><img src="https://docs.f3cloud.com/img/wg-easy-client-list.png" alt="Список клиентов wg-easy с кнопками управления"><figcaption><p>Клиент создан</p></figcaption></figure>

| Кнопка | Что делает |
| --- | --- |
| Переключатель | Включает и выключает клиента |
| Карандаш | Открывает настройки клиента. Там же он удаляется кнопкой <kbd>Удалить</kbd> |
| QR-код | Показывает QR-код для подключения с телефона |
| Стрелка вниз | Скачивает файл настроек `.conf` для компьютера |
| Ссылка | Создаёт временную ссылку на файл настроек, она действует 5 минут |

***

## Шаг 5. Подключитесь к VPN

Для подключения нужно официальное приложение **WireGuard**.

#### Компьютер

1. Скачайте WireGuard для Windows или macOS со [страницы загрузки](https://www.wireguard.com/install/) и установите.
2. В панели wg-easy скачайте файл настроек кнопкой со стрелкой вниз.
3. В приложении WireGuard нажмите <kbd>Import tunnel(s) from file</kbd> и выберите скачанный файл.

<figure><img src="https://docs.f3cloud.com/img/wireguard-windows-import.png" alt="Импорт туннеля из файла в WireGuard для Windows" width="490"><figcaption><p>Импорт файла настроек</p></figcaption></figure>

4. Нажмите <kbd>Activate</kbd>. Когда в строке **Status** появится **Active**, VPN работает.

<figure><img src="https://docs.f3cloud.com/img/wireguard-windows-active.png" alt="Активный туннель в WireGuard для Windows" width="490"><figcaption><p>Подключение установлено</p></figcaption></figure>

#### Телефон

1. Установите WireGuard из [App Store](https://apps.apple.com/app/wireguard/id1441195209) или [Google Play](https://play.google.com/store/apps/details?id=com.wireguard.android).
2. В панели wg-easy нажмите кнопку QR-кода у нужного клиента.

<figure><img src="https://docs.f3cloud.com/img/wg-easy-client-qr.png" alt="QR-код клиента в панели wg-easy" width="310"><figcaption><p>QR-код для телефона</p></figcaption></figure>

3. В приложении WireGuard нажмите <kbd>+</kbd>, выберите сканирование QR-кода и наведите камеру на экран.
4. Включите переключатель рядом с добавленным туннелем.

<figure><img src="https://docs.f3cloud.com/img/wireguard-iphone-tunnel.png" alt="Включённый туннель в приложении WireGuard на iPhone"><figcaption><p>VPN включён на телефоне</p></figcaption></figure>

Чтобы проверить, что трафик идёт через VPN, откройте в браузере [api.ipify.org](https://api.ipify.org). Там должен показываться IP-адрес вашего сервера.

> **Файл настроек и QR-код – это ключ к вашему VPN.**
>
> По ним к серверу подключится любой, у кого они окажутся. Не публикуйте их и не пересылайте через открытые чаты.

***

## Частые вопросы

<details>

<summary>Панель не открывается</summary>

Проверьте, что wg-easy запущен, командой `docker ps`. В списке должен быть контейнер `wg-easy` со статусом `Up`. Убедитесь, что вы открываете адрес через `http://`, а не `https://`, и что порт 51821/TCP открыт в брандмауэре.

</details>

<details>

<summary>VPN не подключается</summary>

Чаще всего закрыт порт 51820/UDP в брандмауэре сервера. Ещё проверьте, что в мастере настройки в поле **Хост** указан внешний IP-адрес сервера. Если там внутренний адрес вроде `10.42.42.42`, исправьте его в разделе **Админ-панель → Конфигурация** и заново скачайте файл настроек.

</details>

<details>

<summary>Забыли пароль от панели</summary>

Пароль администратора можно сбросить командой на сервере. Она попросит ввести новый пароль.

```bash
cd /opt/wg-easy && docker compose exec -it wg-easy cli db:admin:reset
```

</details>

<details>

<summary>Как обновить wg-easy</summary>

Выполните две команды. Клиенты и настройки при обновлении сохраняются.

```bash
cd /opt/wg-easy && docker compose pull && docker compose up -d
```

</details>

<details>

<summary>В моей сети WireGuard не работает</summary>

Некоторые провайдеры и сети блокируют WireGuard. В этом случае используйте протоколы, которые сложнее распознать, например [Amnezia](https://docs.f3cloud.com/ru/vpn-guide/setup-amnezia.md) или [VLESS Reality в 3X-UI](https://docs.f3cloud.com/ru/vpn-guide/3x-ui-rukovodstvo-po-ustanovke-i-ispolzovaniyu-paneli.md).

</details>

***

## Наши ресурсы

**Telegram-канал:** [https://t.me/f3cloud_news](https://t.me/f3cloud_news)\
**Сайт хостинга:** [https://f3cloud.com](https://f3cloud.com/ru)
