RU Русский | EN English
Install AmneziaWG 3.1 / 2.0 VPN on Ubuntu and Debian VPS
amneziawg-installer одной командой ставит свой VPN-сервер AmneziaWG на VPS с Ubuntu или Debian: модуль ядра, настройка сервера и клиенты с QR-кодами. Работает там, где WireGuard блокируют. Хватит VPS за $3, знать Linux не нужно.
One-command, self-hosted AmneziaWG 3.1 VPN for Ubuntu 24.04 / 26.04 and Debian 13, with AmneziaWG 2.0 for older clients and routers. Kernel-native DKMS, no Docker, no web panel, runs on any cheap VPS. English README
В ядре, без Docker и панелей - нет накладных расходов | сервер только под VPN, защита из коробки | поставил и забыл | QR-код или vpn:// в один тап
**Факты на 2026-10-22.** Установщик 6.1.1. Сроки поддержки ОС проверены по данным вендоров на 2026-08-29.
| | |
|---|---|
| **Для нового сервера** | Ubuntu 24.04, Debian 13 |
| **Тоже поддерживается** | Ubuntu 26.04 |
| **Не для новых серверов** | Debian 12 - вне обычной поддержки вендора |
| **Архитектуры** | x86_64, ARM64, ARMv7 |
| **Модуль ядра** | DKMS из PPA Amnezia; на ядрах старее 6.7 (штатный Debian 12) - проверенный модуль 2.0 из исходников; для части ARM - готовые сборки |
| **Профиль конфигурации** | AmneziaWG 3.1 для новой установки; 2.0 - флагом `--protocol=2.0` или автоматически там, где установщик 3.1 не выдаёт (ядро старее 6.7, ARM); уже работающий сервер остаётся на своём поколении |
## 🚀 Быстрый старт
```bash
wget -O install_amneziawg.sh https://github.com/bivlked/amneziawg-installer/releases/latest/download/install_amneziawg.sh
chmod +x install_amneziawg.sh
sudo bash ./install_amneziawg.sh
```
> Что получится (на x86_64 с Ubuntu 24.04 / 26.04 или Debian 13): сервер AmneziaWG 3.1, настроенный под VPN (форвардинг, тюнинг ядра) и защищённый (фаервол UFW, если согласитесь), и два готовых клиента, `my_phone` и `my_laptop`: их конфиги, QR-коды и ссылки `vpn://` лежат в `/root/awg/`. 3 команды, 2 перезагрузки по ходу (при каждом вопросе о перезагрузке ответьте `y`, после каждой запустите последнюю команду снова), около 20 минут. Для чистого Ubuntu/Debian VPS, не роутер и не shared-хостинг. [Подробнее →](#ustanovka)
>
> **Подключить устройство.** Нужен клиент с поддержкой 3.1: на Android - WG Tunnel или AmneziaWG, на iPhone - AmneziaWG (отсканируйте QR `my_phone.png`), на Mac - AmneziaWG (импорт `.conf`), на Windows - AmneziaWG (импорт `my_laptop.conf`), на любой платформе - Amnezia VPN (ссылка `vpn://`), на Linux - [через awg-quick](ADVANCED.md#linux-client-adv). Как забрать файлы с сервера - в разделе [После установки](#posle-ustanovki); новое устройство потом - одна команда `add`.
>
> Есть роутер на стоковой прошивке, Hiddify или давно не обновлявшиеся приложения? Добавьте к последней команде `--protocol=2.0`, [почему](#awg3). На ARM и на штатном Debian 12 установщик сам поставит 2.0.
> 📘 Полный гайд по развёртыванию: [Установка сервера AmneziaWG на VPS](INSTALL_VPS.ru.md) - выбор VPS, ARM, troubleshooting, удаление. [English version](INSTALL_VPS.md).
> 🔐 Целостность: установщик скачивается по HTTPS из последнего релиза на GitHub. Проверить его до запуска можно подписью minisign: [Проверка подписи](#proverka-podpisi). Скрипты, которые он качает сам (`awg_common`, `manage`), он берёт с тега своей версии и сверяет с зашитыми в него SHA256-хешами, так что подпись установщика покрывает и их (если не переопределять `AWG_BRANCH`). Модель угроз - в [docs/SIGNING_DESIGN.md](docs/SIGNING_DESIGN.md#threat-model), как сообщить об уязвимости - в [SECURITY.md](SECURITY.md).
Что установщик меняет на сервере (прозрачность)
Скрипт работает от root. Ниже основные изменения, которые он вносит в систему.
- **Обновление системы.** `apt-get upgrade --with-new-pkgs`: пакеты он не удаляет, но новое ядро приехать может. Перед обновлением пишет `/etc/apt/apt.conf.d/99-amneziawg-lock-timeout` (ждать блокировку dpkg до 5 минут) и помечает установленными вручную пакеты, без которых сервер не загрузится или останется без сети (`udev`, `initramfs-tools`, `openssh-server`, `netplan.io` и другие).
- **Удаление пакетов** - после вашего согласия: если снапов на сервере нет, Enter означает «да», а с `--yes` согласие считается данным; сохранить пакеты можно флагом `--keep-packages`. Удаляются `modemmanager`, `networkd-dispatcher`, `unattended-upgrades` (обновления безопасности перестают ставиться автоматически), `packagekit`, `udisks2`. На Ubuntu ещё `snapd` вместе с `/snap`, `/var/snap`, `/var/lib/snapd` и `lxd-agent-loader`. `cloud-init` с `/etc/cloud` и `/var/lib/cloud` удаляется, только если он не управляет сетью.
- **Установка пакетов.** `curl`, `wget`, `gpg`, `sudo`, `amneziawg-dkms`, `amneziawg-tools`, `wireguard-tools`, `dkms`, `build-essential`, `dpkg-dev`, `qrencode`, заголовки ядра, `ufw`, `fail2ban` (на Debian ещё `python3-systemd`). Если модуль 2.0 собирается из исходников, ставится `git`; при устаревших заголовках ядра ставится `gcc-13`. На части ARM вместо сборки ставится готовый пакет модуля из релиза `arm-packages`.
- **Репозиторий.** PPA Amnezia: `/etc/apt/sources.list.d/amnezia-ppa.sources` (на Debian 12 `.list`) и ключ `/etc/apt/keyrings/amnezia-ppa.gpg`. Ключ встроен в установщик, сверяется по полному отпечатку и действует только для этого репозитория.
- **Модуль ядра.** `amneziawg` собирается через DKMS и загружается при старте (`/etc/modules-load.d/amneziawg.conf`). После обновления ядра модуль пересобирается сам: за это отвечают `/usr/local/sbin/amneziawg-ensure-module`, apt-хук `/etc/apt/apt.conf.d/99-amneziawg-post-kernel` и юнит `amneziawg-ensure-module.service`, журнал - `/var/log/amneziawg-ensure-module.log`. На ARM с готовым пакетом этой обвязки нет: после смены ядра установщик нужно запустить ещё раз.
- **sysctl**, файл `/etc/sysctl.d/99-amneziawg-security.conf`: форвардинг, выключение IPv6 на хосте (оставить - флаг `--allow-ipv6`), BBR, буферы по объёму памяти, `rp_filter = 2`, запрет redirect, SYN cookies, `vm.swappiness = 10`, `net.netfilter.nf_conntrack_max = 65536`, `kernel.sysrq = 0`, `kernel.printk = 3 4 1 3`.
- **Swap.** Если swap меньше 1 ГБ (при памяти до 2 ГБ) или меньше 512 МБ (при большем объёме), создаётся `/swapfile` со строкой в `/etc/fstab`.
- **Фаервол.** UFW: входящие запрещены, SSH с ограничением частоты на найденном порту (порт можно задать флагом `--ssh-port`), открыт UDP-порт VPN, правило пересылки `awg0` -> внешний интерфейс. Если UFW ещё не включён, установщик спрашивает, включать ли его (с `--yes` включает сам). Fail2Ban защищает SSH, его настройки в `/etc/fail2ban/jail.d/amneziawg.conf`. **Настройки SSH-сервера установщик не меняет.**
- **VPN.** Серверный конфиг `/etc/amnezia/amneziawg/awg0.conf` с правилами `iptables` в `PostUp`, сервис `awg-quick@awg0`, каталог `/root/awg/` (ключи, конфиги клиентов, журнал, скрипты управления) с правами 700/600, cron `/etc/cron.d/awg-expiry` для клиентов со сроком действия.
- **Перезагрузки.** Их две: после обновления системы и после установки модуля (установщик спрашивает, ответьте `y`). После каждой запустите ту же команду снова.
- **Откат**: `--uninstall` убирает своё - модуль, конфиги, sysctl-файлы, кроны, UFW-правило VPN-порта и UFW-правило маршрутизации `awg0`. UFW отключает и Fail2Ban удаляет только если сам их включал/ставил; если UFW был активен до установки, добавленное правило SSH rate-limit остаётся. Не возвращает: swap и удалённые пакеты; пакеты-зависимости, которые он ставил (dkms, компилятор, заголовки ядра), остаются. По умолчанию, в том числе с `--yes`, перед удалением создаётся архив `/root/awg_uninstall_backup_*.tar.gz` с конфигами и приватными ключами; он остаётся на сервере, удалите его сами, когда он станет не нужен.
Флаг `--no-tweaks` оставляет пакеты, swap, sysctl-hardening, UFW и Fail2Ban как есть. Форвардинг включается всё равно, в файле `/etc/sysctl.d/99-amneziawg-forwarding.conf`, и там же выключается IPv6 на хосте, если не передать `--allow-ipv6`; обновление системы идёт как обычно. Что остаётся после удаления - в [INSTALL_VPS.ru.md](INSTALL_VPS.ru.md#uninstall), модель угроз - в [docs/SIGNING_DESIGN.md](docs/SIGNING_DESIGN.md#threat-model), проверка подписи - в разделе [Проверка подписи](#proverka-podpisi).
Неинтерактивная установка (для автоматизации)
```bash
sudo bash ./install_amneziawg.sh --yes --route-all
```
Все параметры принимаются автоматически. Подробнее: [ADVANCED.md#cli-params-adv](ADVANCED.md#cli-params-adv)
### 🎯 Выберите свой случай
| Ваша ситуация | Что добавить |
|---|---|
| Обычный дешёвый VPS, просто нужен VPN | Ничего - команда выше уже всё делает |
| Мобильный интернет, DPI режет (ТСПУ, Иран, школа или корпоратив) | При установке добавьте `--mobile` - пресет обфускации + порт 443/udp разом ([проверенные операторы](#operatory)) |
| ARM: Raspberry Pi, Oracle Ampere, Hetzner CAX | Та же команда: готовые ARM-модули ядра выберутся автоматически, а протокол будет AmneziaWG 2.0 (3.1 пока только на x86_64), поэтому клиентам нужна поддержка 2.0 ([почему](#awg3)) |
| Доступ другу или гостю на время | После установки: `sudo bash /root/awg/manage_amneziawg.sh add guest --expires=7d` |
---
Зачем это нужно •
AmneziaWG 3.x •
AWG vs WG •
CLI vs панели •
Похожие инструменты •
Быстрый старт •
Что умеет •
Операторы •
Требования •
Хостинг •
Установка •
Проверка подписи •
После установки •
Управление •
Дополнительно •
FAQ •
Устранение неполадок •
Экосистема •
Лицензия
## 💡 Зачем это нужно
[AmneziaWG](https://github.com/amnezia-vpn) - форк WireGuard с обфускацией трафика. Обфускация делает трафик трудноотличимым от случайного шума для систем DPI, поэтому там, где обычный WireGuard детектируют и блокируют, AmneziaWG обычно продолжает работать.
Этот набор скриптов превращает чистый VPS в готовый VPN-сервер. Не нужны знания Linux - скрипт сам настроит firewall, оптимизирует систему, создаст конфиги и QR-коды для клиентов.
Сервер настраивается под одну задачу - VPN: лишние пакеты убираются, ядро, сеть и swap тюнингуются под железо, включаются firewall и базовая защита. AmneziaWG работает в ядре, поэтому накладных расходов почти нет - быстро и экономно. Поставил один раз для дома или семьи и забыл: добавить друга или новое устройство через месяц - минута, конфиг и QR готовятся одной командой.
Нужен чистый VPS на x86_64 с Ubuntu 24.04 / 26.04 или Debian 13: на них ставится AmneziaWG 3.1. Хватит любого дешёвого VPS, от 512 МБ RAM (комфортно от 1 ГБ). Остальные системы, архитектуры и сроки поддержки - в [Требованиях](#trebovaniya).
---
## 🆕 AmneziaWG 3.1 по умолчанию
С версии 6.0.0 новая установка по умолчанию ставит **AmneziaWG 3.1**: и сервер, и клиентские профили получают параметры третьей линии - шифрование заголовков (`HeaderProtectionKey`) и добавочный паддинг внутри шифрованной части (`ContentPaddingAddition`). Команда установки прежняя, флаги не нужны. Пакеты-пустышки `Jc`, паддинг `S1`-`S4` и маскирующий пакет `I1` остаются. `H1`-`H4` в профиле 3.1 стоят на 1-4: тип сообщения теперь прячет шифрование заголовков, и случайные диапазоны больше ничего не скрывают.
**Кому нужен `--protocol=2.0`.** Клиент без поддержки 3.1 профиль 3.1 не примет: рукопожатия не будет, а сообщения об ошибке может и не быть. Поэтому, если среди ваших устройств есть такой клиент, ставьте сервер сразу на 2.0:
```bash
sudo bash ./install_amneziawg.sh --protocol=2.0
```
Без поддержки 3.1 пока остаются роутеры на стоковой прошивке (стабильный KeeneticOS, OpenWrt со старым пакетом amneziawg), Hiddify и приложения, которые давно не обновлялись. Какие клиенты понимают 3.1 и с какой версии - в [таблице клиентов](ADVANCED.md#client-gen-adv). Решить лучше до установки: поколение работающего сервера меняется только переустановкой, и все клиентские профили тогда выдаются заново.
**Где установщик сам поставит 2.0.** На ядрах старее 6.7 (штатный Debian 12 с ядром 6.1) и на ARM установщик сознательно не выдаёт 3.1: эти платформы ещё не проверены замером. Если поколение вы не выбирали, он поставит 2.0 сам, объяснит причину в логе и повторит её в итоговом отчёте. Если параметры 3.1 не понимают установленные утилиты `awg` или модуль ядра, он переходит на 2.0, когда модуль принимает набор 2.0, а иначе останавливается и говорит, что исправить (при старых утилитах - какой пакет обновить). Явный `--protocol=3.1` на неподходящей машине прерывает установку и называет причину.
**Уже работающие серверы** остаются на своём поколении: обновление скриптов и `manage` поколение не меняют. Чтобы перейти с 2.0 на 3.1, нужно снять установку (`--uninstall`) и поставить заново, все клиентские профили при этом выдаются заново. Обратно с 3.1 на 2.0 - так же: `--uninstall` (он удаляет сервер и профили 3.1, по умолчанию сохранив копию в бэкап), затем установка с `--protocol=2.0` и новые профили для всех клиентов.
Какое поколение стоит на сервере, установщик пишет в итоговом отчёте строкой «Поколение протокола», а позже его покажет `sudo bash /root/awg/manage_amneziawg.sh check` (строка «Поколение протокола установки»). Версии утилит и загруженного модуля:
```bash
awg --version # версия утилит
cat /sys/module/amneziawg/version # версия загруженного модуля
```
Подробный разбор - что меняется на проводе, что обязано совпадать у сервера и клиента и из чего состоит профиль 3.1 - в [ADVANCED.md](ADVANCED.md#awg3-adv).
---
## ⚖️ AmneziaWG vs WireGuard
| | WireGuard | AmneziaWG 3.1 |
|---|---|---|
| **Обнаружение DPI** | Детектируется по фиксированным размерам пакетов и magic bytes | Трудно зафингерпринтить: заголовки зашифрованы (`HeaderProtectionKey`), паддинг внутри и снаружи шифрования, пакеты-пустышки и маскирующий пакет `I1` |
| **Блокируется в** | Китай, Россия, Иран, ОАЭ, Туркменистан | По фиксированной сигнатуре блокировать нечего - её нет. Остаются блокировки по адресу и UDP-порту: может помочь смена порта или `--mobile` |
| **Настройка сервера** | Вручную: ключи, iptables, sysctl, systemd | Одна команда, 20 минут, полностью автоматически |
| **Безопасность** | Сами: UFW, Fail2Ban, sysctl | Автоматически: firewall + защита от брутфорса + тюнинг ядра |
| **Управление клиентами** | Ручное редактирование конфигов, рестарт | `add`/`remove`/`list`/`stats` с hot-reload |
| **Временный доступ** | Нет | `--expires=7d` с автоматическим удалением |
| **Требования к серверу** | - | Те же - любой VPS за $3-5/мес, от 512 МБ RAM (комфортно 1 ГБ) |
| **Потеря скорости** | Базовая | Модуль ядра: шифрование и маскировка выполняются в пространстве ядра, без выхода в userspace |
> Про скорость: на сервере с одним общим vCPU узким местом становится процессор - шифрование и маскировка выполняются на том же ядре. Диагностика: [FAQ в ADVANCED](ADVANCED.md#faq-advanced-adv).
> Если WireGuard у вас работает и не блокируется - используйте его. Если блокируется или режется - AmneziaWG 3.1 является прямой заменой.
---
## ⚙️ CLI-инсталлер vs веб-панели
> **Задача - поднять VPN на дешёвом VPS за 20 минут.** Скрипт не тянет за собой Docker, веб-сервер или базу данных. После установки на сервере работает только AWG и firewall - минимум нагрузки, максимум ресурсов для VPN.
| | Этот проект (CLI) | Веб-панели на Docker |
|---|---|---|
| **Модуль AWG** | Kernel module - работает на уровне ядра | Userspace в контейнере |
| **Требования к серверу** | Любой VPS от 512 МБ RAM | Нужны PHP/Python, БД, веб-сервер, Docker |
| **Поверхность атаки** | SSH + UDP-порт VPN | + HTTP-панель, база данных, Docker |
| **Установка** | Одна команда на сервере, 20 минут | docker-compose + передача SSH-доступа панели |
| **После перезагрузки** | Продолжит установку с того же шага | Зависит от состояния контейнеров и БД |
| **Веб-интерфейс** | ❌ Нет, только SSH (управление через скрипт `manage`) | ✅ GUI, управление через браузер |
| **Несколько протоколов** | Только AmneziaWG | WireGuard, OpenVPN, VLESS и другие |
> Нужен VPN без GUI на выделенном сервере - этот проект. Нужна веб-панель с несколькими протоколами - ищите Docker-решения.
---
## 🔧 Сравнение с похожими инструментами
Есть ещё несколько способов поднять AmneziaWG. Каждый выбирает свой компромисс:
| Инструмент | Способ | Кому подходит |
|---|---|---|
| **Этот установщик** | SSH + одна bash-команда | Headless VPS, single-purpose сервер, без Docker и панели, ARM-prebuilt'ы |
| **[wiresock/amneziawg-install](https://github.com/wiresock/amneziawg-install)** | SSH + bash, опц. нативная веб-панель и обфускация-прокси (Rust) | Нужна веб-панель без Docker или маскировка трафика отдельным сервисом |
| **[wg-easy](https://github.com/wg-easy/wg-easy)** | Docker + веб-интерфейс | Домашние боксы, на которых уже крутится Docker; нужна панель для клиентов. AmneziaWG там экспериментальный (`EXPERIMENTAL_AWG=true` и модуль ядра на хосте); третья линия есть только в ветке master с 9 сентября 2026, в выпуске v15.4.0 её нет |
| **[Amnezia VPN](https://amnezia.org/)** | Десктоп/моб GUI, разворачивает сервер в Docker по SSH | Установка кликами без терминала; нужен графический клиент |
**Быстрый выбор:**
* Часто заводите и меняете клиентов, удобнее мышкой в браузере - веб-панель: **wiresock** (нативная, без Docker) или **wg-easy** (Docker). Учтите: панель - это лишний постоянно работающий сервис, открытый порт и расход ресурсов сервера; для режима «поставил и забыл» это ненужная нагрузка.
* Дешёвый или слабый VPS, ARM (Raspberry Pi, Oracle Ampere) - **этот установщик** с готовыми prebuilt'ами, без ожидания сборки модуля.
* Импорт в телефон одним тапом (QR или `vpn://`), клиенты по сроку (`--expires`), пресеты под мобильных операторов - **этот установщик**.
* Установка мышкой без терминала - десктоп-клиент **Amnezia VPN**.
**Когда этот проект - не лучший выбор:**
* Часто заводите и меняете клиентов и хочется браузерную панель - возьмите **wiresock** или **wg-easy**. Здесь панели нет осознанно: если клиенты меняются изредка, постоянно работающая панель только ест ресурсы сервера, а управление и так делается из CLI (`manage` add/remove/list) по SSH.
* Нужна устойчивость к активному зондированию (active probing) - маскировка трафика под сторонний протокол (например QUIC или DNS): у **wiresock** для этого есть отдельный обфускация-прокси (серверную маскировку получает любой стандартный клиент, полная двунаправленная - в связке с их коммерческим клиентом WireSock Secure Connect). Здесь обфускация делается в самом протоколе - шифрование заголовков и паддинг AmneziaWG 3.1 плюс маскирующий пакет `I1` - и ориентирована на типовой мобильный DPI, без отдельного прокси-демона и платного клиента.
* Нужен графический клиент или установка мышкой без терминала - десктоп-клиент **Amnezia VPN**.
### Чем отличается от официального приложения Amnezia?
Официальное приложение Amnezia - официальный графический клиент: вы ставите приложение, указываете сервер, и оно разворачивает серверную часть в Docker по SSH. Удобно, когда нужен только GUI. Этот установщик создан под другую задачу - выжать из одного выделенного VPS максимум как из VPN-сервера. Отсюда и отличия:
* **Без Docker и накладных расходов на него.** AmneziaWG ставится модулем ядра, а не в контейнере. Нет постоянного Docker-демона - меньше расход RAM и CPU. На дешёвом VPS это критично, на сервере помощнее тоже не лишнее.
* **Сервер оптимизируется под железо.** Скрипт смотрит на RAM и настраивает sysctl-буферы и размер swap, включает BBR - вытягивает из тарифа максимум. Официальное приложение разворачивает контейнеры и сам сервер не оптимизирует и не настраивает.
* **Меньше поверхность атаки.** Лишние пакеты и службы вырезаются, на сервере остаётся одна задача - VPN. Сверху UFW deny-all, Fail2Ban, строгие права на файлы и sysctl-хардненинг.
* **Тонкая настройка обфускации.** Пресет для мобильных сетей (`--preset=mobile`), прямой доступ к параметрам AmneziaWG и полевые данные по операторам и DPI - можно подстроить под конкретную сеть или оператора.
* **Headless и автоматизация.** Одна SSH-команда, все параметры флагами, управление клиентами из CLI, гости по сроку (`--expires`), импорт по QR или `vpn://`, готовые сборки под ARM.
Протокол и стойкость к DPI при этом одинаковые - под капотом тот же протокол AmneziaWG. Код открыт под MIT, это читаемый bash, его можно просмотреть перед запуском, на нём 2000+ автотестов. Ставится тот же upstream AmneziaWG - это автоматизация и тюнинг сервера, а не форк протокола.
Подробное сравнение: [amneziawg-installer и официальное приложение Amnezia](https://bivlked.github.io/amneziawg-installer/ru/compare/).
---
## ✨ Что умеет
* **Обход блокировок** - AmneziaWG 3.1 (или 2.0 для старых клиентов) с обфускацией трафика. DPI не детектирует подключение
* **Одна команда - готовый VPN** - от чистого VPS до работающего сервера с клиентскими конфигами и QR-кодами
* **Безопасность из коробки** - UFW, Fail2Ban, sysctl hardening, строгие права доступа (600/700)
* **Удобное управление** - добавление/удаление клиентов, временные клиенты с авто-удалением, статистика, бэкапы
* **Широкая поддержка ОС** - Ubuntu 24.04, 26.04 и Debian 13; Debian 12 для переноса уже работающего сервера
* **x86_64 и ARM** - облачные VPS, Raspberry Pi 3/4/5, ARM64-серверы (AWS Graviton, Oracle Ampere, Hetzner); на ARM ставится AmneziaWG 2.0
* **Оптимизация для мобильных сетей** - `--preset=mobile` для Tele2, Yota, Мегафон и других операторов с DPI-блокировками. Тонкая настройка через `--jc`, `--jmin`, `--jmax` ([подробнее](ADVANCED.md#presets-adv))
* **Опциональный dual-stack IPv6** - флаг `--allow-ipv6-tunnel` добавляет IPv6 внутри туннеля рядом с IPv4 (по умолчанию выключено, [подробнее](ADVANCED.md#ipv6-tunnel-adv))
Все возможности
* Нативная генерация ключей и конфигов через `awg` - без Python и внешних зависимостей
* Hardware-aware оптимизация: swap и сетевые буферы на основе характеристик сервера
* DKMS - автоматическая пересборка модуля ядра при обновлении
* `vpn://` URI для импорта в Amnezia Client одним тапом (`.vpnuri` файлы)
* Статистика трафика по клиентам (`stats`, `stats --json`)
* Временные клиенты с авто-удалением (`--expires=1h`, `7d`, `4w` и др.)
* Диагностический отчёт (`--diagnostic`) и полная деинсталляция (`--uninstall`)
* Логирование всех действий в `/root/awg/`
* Возобновление установки после перезагрузки - скрипт продолжит с нужного шага
* Выбор порта, подсети, режима IPv6, маршрутизации и изоляции клиентов (`--isolation=on|off`). Поддержка `--endpoint` для серверов за NAT
---
## 📡 С какими операторами проверено
Установщик настраивает обфускацию AmneziaWG под мобильные сети с DPI: `--mobile` включает мобильный пресет и порт 443/udp одним флагом. Если VPN нестабилен через мобильный интернет, на новом сервере ставьте сразу с `--mobile`. На уже работающем это переустановка с `--force --mobile`: параметры обфускации и порт поменяются, и всем клиентам придётся перевыпустить конфиги через `regen`. Если рукопожатие на мобильной сети не проходит вовсе, сначала прочитайте [разбор](ADVANCED.md#no-hs-mobile-adv). Ниже - рабочие конфигурации по отчётам пользователей из issues и discussions, собранным на серверах 2.0 (не гарантия: блокировки и параметры операторов меняются со временем). Пресеты и `I1` в профиле 3.1 задаются так же; результатами на 3.1 делитесь в [Discussions](https://github.com/bivlked/amneziawg-installer/discussions). Конфигурации из отчётов:
- **Yota** - Москва, `--preset=mobile`
- **Tele2** - Москва (`--preset=mobile`); Красноярск (`--preset=mobile`; в майскую волну 2026 заработал `I1=`)
- **Таттелеком / Летай** - Татарстан, `--preset=mobile`
- **Мегафон** - регионы, `--preset=mobile` + удалить параметр `I1`
- **Билайн** - дефолтный preset, флаги не нужны
- **Домашний/проводной интернет** - дефолт, как правило, «из коробки»
Вашего оператора нет в списке? Попробуйте `--preset=mobile`. Не помогло - заведите тред в [Discussions](https://github.com/bivlked/amneziawg-installer/discussions) или [Issues](https://github.com/bivlked/amneziawg-installer/issues), добавлю в список.
> Полная таблица операторских параметров (Jc, Jmin, Jmax, I1) - в [ADVANCED.md → FAQ «через мобильную сеть»](ADVANCED.md#faq-mobile-unstable-adv). Точечная настройка через `--jc`/`--jmin`/`--jmax` - в [ADVANCED.md → Presets](ADVANCED.md#presets-adv).
---
## 🖥️ Требования
* **ОС:** **Чистая** установка **Ubuntu Server 24.04 LTS** / **Ubuntu 26.04** / **Debian 13** Minimal. Debian 12 установщик тоже поддерживает, но для НОВОГО сервера его брать не стоит - см. таблицу совместимости
* **Доступ:** Права `root` (через `sudo`)
* **Интернет:** Стабильное подключение
* **Ресурсы:** 512 МБ ОЗУ минимум, рекомендуется 1 ГБ (комфортно 2+ ГБ); минимум ~2 ГБ диска (рекомендуется 3+ ГБ)
* **SSH:** Доступ по SSH
**Совместимость ОС:**
| ОС | Наш выбор | Поддержка от вендора | Примечание |
|----|-----------|----------------------|------------|
| Ubuntu 24.04 LTS | ✅ выбор по умолчанию | до 2029-05-31 | Обкатана лучше всех. HWE-ядро 7.0.0-38 поддерживается: исходник модуля из PPA установщик исправляет сам ([подробнее](ADVANCED.md#kernel-70-backport-adv)) |
| Debian 13 (trixie) | ✅ выбор по умолчанию | до 2028-08-09 | Протестировано. PPA через маппинг codename на noble, DEB822 |
| Ubuntu 26.04 | ✅ поддерживается | до 2031-05-29 | PPA публикует пакеты под неё (`resolute`). Под ядро 7.0.0-38 модуль из PPA сам не собирается, установщик исправляет его исходник сам ([подробнее](ADVANCED.md#kernel-70-backport-adv)) |
| Debian 12 (bookworm) | ⚠️ для миграции | обычная закончилась 2026-07-11, Debian LTS до 2028-06-30 | Работает и протестировано, обновления безопасности идут через Debian LTS. PPA через маппинг codename на focal. Для нового сервера лучше Debian 13 |
| Ubuntu 25.10 (questing) | ❌ не поддерживается с v6.0.0 | закончилась 2026-07-01, продления нет | Выпуск снят с поддержки, обновлений безопасности для него не выходит. Установщик предупредит о непроверенном выпуске и спросит подтверждение. Перейдите на 26.04 LTS (`do-release-upgrade`, затем снова запустите установщик последней версии) или переустановите на 24.04 LTS |
**Поддержка архитектур:**
| Архитектура | Статус | Протокол | Платформы |
|---|---|---|---|
| x86_64 (amd64) | ✅ Полная поддержка | AmneziaWG 3.1 (на ядре 6.7+, иначе 2.0) | Все облачные VPS |
| ARM64 (aarch64) | ✅ Поддержка | AmneziaWG 2.0 | Raspberry Pi 3/4/5, AWS Graviton, Oracle Ampere, Hetzner |
| ARMv7 (armhf) | ✅ Поддержка | AmneziaWG 2.0 | Raspberry Pi 3/4 (32-bit) |
> На ARM установщик загружает готовые модули ядра при наличии и автоматически переключается на DKMS-сборку, если нужно. Профиль 3.1 на ARM пока не выдаётся: установщик сам ставит 2.0, клиентам нужна поддержка 2.0.
> ⚠️ **Нестандартный порт SSH:** Установщик обычно определяет SSH-порт автоматически. Если SSH на нестандартном порту или автодетект недоступен, запускайте с `--ssh-port=ВАШ_ПОРТ` (несколько портов - списком через запятую). Как дополнительная консервативная страховка можно заранее выполнить `sudo ufw allow ВАШ_ПОРТ/tcp` **до** запуска установки.
**Клиенты:**
* **Android:** [WG Tunnel](https://github.com/wgtunnel/android) (профиль 3.1 с версии **5.6.0**) или лёгкий [AmneziaWG](https://github.com/amnezia-vpn/amneziawg-android) (профиль 3.1 с **3.1.4** в Google Play). Импорт QR-кодом `имя.png`; почему они - [какой клиент выбрать](#ekosistema)
* **Все платформы:** [Amnezia VPN](https://github.com/amnezia-vpn/amnezia-client/releases) - полнофункциональный VPN-клиент: профиль 3.1 с версии **5.0.1.5**, профиль 2.0 с **4.8.12.7**. Импорт через `vpn://` URI
* **iPhone, iPad, Mac:** [AmneziaWG](https://apps.apple.com/app/amneziawg/id6478942365) (профиль 3.1 с версии **3.1.4**, на октябрь 2026 есть и в российском App Store). На iPhone и iPad импорт QR-кодом `имя.png` или файлом `имя.conf`, на Mac - файлом `имя.conf`
* **Windows:** [AmneziaWG](https://github.com/amnezia-vpn/amneziawg-windows-client/releases) - легковесный tunnel manager: профиль 3.1 с версии **3.1.0**, профиль 2.0 с **2.0.0**. Импорт через `.conf` файлы
* **Linux, в том числе сервер без графики:** `awg-quick` из `amneziawg-tools` - [подключение Linux-машины как клиента](ADVANCED.md#linux-client-adv)
> [Какие клиенты понимают 3.1, полная таблица →](ADVANCED.md#client-gen-adv)
---
## 🚀 Рекомендация хостинга
Для стабильной работы VPN-сервера с высокой пропускной способностью важен надежный хостинг с хорошим каналом.
**На что смотреть при выборе VPS под VPN:**
- IP-адреса, не помеченные как датацентровые - меньше риск блокировок по диапазону.
- Большой или неограниченный трафик и канал от 1 Гбит/с.
- Поддержка нужной ОС (Ubuntu 24.04 LTS, 26.04 или Debian 13; Debian 12 тоже работает) и root-доступ.
Опробовал и рекомендую [**FreakHosting**](https://freakhosting.com/clientarea/aff.php?aff=392). В частности, их линейка **BUDGET VPS** предлагает отличное соотношение цены и качества. Это партнёрская ссылка: при заказе по ней я получаю небольшой процент, для вас цена та же.
Их IP-адреса не идентифицируются, как адреса датацентров и не попадают под блокировки по признаку «IP принадлежит хостинг-провайдеру» (в отличие, например, от Azure и некоторых крупных облаков).
* **Рекомендуемый тариф:** **BVPS-2**
* **Характеристики:** 2 vCPU, 2 GB RAM, 40 GB NVMe SSD.
* **Ключевое преимущество:** порт **10 Gbps** с **неограниченным трафиком**. Идеально для VPN!
* **Цена:** Всего **€25 в год** (около 2200 руб.; на момент проверки, цена может меняться).
Этой конфигурации более чем достаточно для комфортной работы AmneziaWG с большим количеством подключений и высоким трафиком.
---
## 🔧 Установка (Рекомендуемый способ)
Установка AmneziaWG на Ubuntu или Debian сводится к трём командам: скачать скрипт, запустить с `sudo` и ответить на несколько вопросов. Этот метод гарантирует корректную работу интерактивных запросов и цветного вывода в вашем терминале.
1. **Подключитесь** к **чистому** серверу (Ubuntu 24.04 / Ubuntu 26.04 / Debian 13) по SSH.
> **Совет:** После создания сервера подождите 5-10 минут, чтобы завершились все фоновые процессы инициализации системы, прежде чем запускать установку.
2. **Скачайте скрипт:**
```bash
wget -O install_amneziawg.sh https://github.com/bivlked/amneziawg-installer/releases/latest/download/install_amneziawg.sh
# или: curl -fLo install_amneziawg.sh https://github.com/bivlked/amneziawg-installer/releases/latest/download/install_amneziawg.sh
```
> На минимальном Debian curl может отсутствовать (wget обычно есть) - используйте `wget`. Сам curl установщик доставит на шаге 1.
3. **Сделайте его исполняемым:**
```bash
chmod +x install_amneziawg.sh
```
4. **Запустите с `sudo`:**
```bash
sudo bash ./install_amneziawg.sh
```
*(Вы также можете передать параметры командной строки, см. `sudo bash ./install_amneziawg.sh --help` или [ADVANCED.md#install-cli-adv](ADVANCED.md#install-cli-adv))*
> **English version:** Для вывода на английском используйте `install_amneziawg_en.sh`:
> ```bash
> wget -O install_amneziawg_en.sh https://github.com/bivlked/amneziawg-installer/releases/latest/download/install_amneziawg_en.sh
> sudo bash ./install_amneziawg_en.sh
> ```
> Английская версия функционально идентична; только сообщения и логи на английском.
> После перезагрузки продолжайте тем же файлом: `sudo bash ./install_amneziawg_en.sh`
5. **Начальная настройка:** Скрипт интерактивно запросит:
* **UDP порт:** Порт для подключения клиентов (1-65535). По умолчанию: `39743`.
* **Подсеть туннеля:** Внутренняя сеть для VPN. По умолчанию: `10.9.9.1/24`.
* **Отключение IPv6:** рекомендуется (`Y`). Речь об IPv6 на самом сервере; попадёт ли в туннель IPv6 вашего устройства, решает режим маршрутизации, см. [IPv6 устройства, `::/0` и локальная сеть](ADVANCED.md#client-ipv6-adv).
* **Режим маршрутизации:** Определяет, какой трафик пойдет через VPN. По умолчанию `1` (весь трафик, `0.0.0.0/0`) - привычная клиентам форма полного туннеля. Режим `2` (Список Amnezia+DNS) оставляет частные сети (`10.0.0.0/8`, `172.16.0.0/12`, `192.168.0.0/16`) вне туннеля, но часть клиентов считает такой список раздельной маршрутизацией и ведёт себя иначе.
* **Изоляция клиентов:** Блокировать ли трафик между клиентами внутри VPN. По умолчанию включена (`Y`) - клиенты не видят друг друга; неинтерактивно: `--isolation=on|off`.
* **Имя сервера:** Под этим именем сервер появится в приложении Amnezia при импорте `vpn://`. По умолчанию `AWG Server`; неинтерактивно: `--server-name=ИМЯ`.
* **Удаление лишних пакетов:** скрипт покажет список (snapd, unattended-upgrades и другие) и спросит, удалять ли их. Оставить - ответ `n` или флаг `--keep-packages`.
Параметры обфускации (для 3.1 вместе с ключом защиты заголовков) генерируются **автоматически** - никаких действий не требуется.
6. **Перезагрузки:** Потребуется **ДВЕ** перезагрузки. Скрипт запросит подтверждение `[y/N]`. Введите `y` и нажмите Enter.
7. **Продолжение:** После каждой перезагрузки **снова запустите скрипт** той же командой:
```bash
sudo bash ./install_amneziawg.sh
```
Скрипт продолжит с нужного шага, прежние вопросы не повторяются. Если UFW ещё не включён, в третьем запуске будет один новый вопрос: «Включить UFW? [y/N]». Ответьте `y`: по Enter фаервол не включается, и сервер остаётся без него. С `--yes` UFW включается без вопроса.
8. **Завершение:** После второй перезагрузки и третьего запуска скрипта вы увидите сообщение:
`Установка и настройка AmneziaWG 3.1 УСПЕШНО ЗАВЕРШЕНА!` (или `2.0`, если сервер поставлен на неё) и строку «Поколение протокола» с причиной, если установщик выбрал 2.0 сам.
---
## 🔏 Проверка подписи (необязательно, лучше до запуска)
Установщик подписан ключом minisign, который хранится у автора офлайн и в GitHub Actions не попадает. Подписи есть у релизов начиная с v5.29.0.
```bash
sudo apt install minisign
BASE="https://github.com/bivlked/amneziawg-installer/releases/latest/download"
wget -O install_amneziawg.sh "$BASE/install_amneziawg.sh"
wget -O install_amneziawg.sh.minisig "$BASE/install_amneziawg.sh.minisig"
minisign -V -P RWQXfpABHIpZPttqrwYrQNHRTk/iLIz4cVh9KkRwAElHP+CoW/NPEysN \
-m install_amneziawg.sh -x install_amneziawg.sh.minisig
```
Ожидаемый ответ: `Signature and comment signature verified`, а строкой ниже `Trusted comment: amneziawg-installer vX.Y.Z install_amneziawg.sh`. Тег в этой строке должен совпадать с последним релизом на [странице релизов](https://github.com/bivlked/amneziawg-installer/releases), а имя - с файлом, который вы скачали. Если проверка не прошла, скачайте оба файла заново: между двумя закачками мог выйти новый релиз. Не прошла повторно - не запускайте.
**Ключ сверяйте целиком.** Публичный ключ проекта: `RWQXfpABHIpZPttqrwYrQNHRTk/iLIz4cVh9KkRwAElHP+CoW/NPEysN`. Он же лежит в `KEYS.txt` в корне репозитория и в каждом подписанном релизе (с v5.29.0). `3E598A1C01907E17` - идентификатор ключа, а не отпечаток: чужой ключ может нести тот же идентификатор, поэтому сверять по нему нельзя. Сохраните ключ у себя и в следующий раз берите его из своей копии.
**Что покрывает подпись.** Вы проверяете сам установщик. Скрипты, которые он качает потом (`awg_common.sh`, `manage_amneziawg.sh`), он сверяет с SHA256-хешами, зашитыми в него, так что подписанный установщик покрывает и их, если не переопределять `AWG_BRANCH`. Не покрыты подписью:
- готовые ARM-пакеты модуля из релиза `arm-packages`: хеш лежит рядом с ними и защищает только от битой закачки;
- пакеты из PPA Amnezia: их проверяет apt по ключу PPA;
- скрипты, заменённые вручную: для них повторите команду выше с их именами.
⚠️ **Чего проверка не даёт.** Если ключ скопирован с этой же страницы в тот же заход, проверка защищает от подмены по пути, но не от взлома самого аккаунта: кто подменит скрипт, подменит и эту страницу. Смысл проверки появляется, когда ключ у вас сохранён с прошлого раза.
## 📦 После установки
**Где найти файлы клиентов:**
| Файл | Путь | Назначение |
|------|------|------------|
| `.conf` | `/root/awg/имя.conf` | Конфигурация для импорта в клиент |
| `.png` | `/root/awg/имя.png` | QR-код этого же `.conf` для клиентов AmneziaWG |
| `.vpnuri` | `/root/awg/имя.vpnuri` | `vpn://` URI для Amnezia Client |
| `.vpnuri.png` | `/root/awg/имя.vpnuri.png` | QR-код ссылки `vpn://` для приложения Amnezia VPN |
**Скачать конфиг на компьютер:**
```bash
scp root@IP_СЕРВЕРА:/root/awg/my_phone.conf .
```
Импорт в WG Tunnel или AmneziaWG на Android, в AmneziaWG на iPhone
1. Скачайте QR-код конфига: `scp root@IP_СЕРВЕРА:/root/awg/my_phone.png .`
2. Откройте файл на экране компьютера
3. На телефоне: «+» → пункт импорта по QR-коду
Импорт в Amnezia VPN (телефон) через vpn:// URI
1. На сервере выполните: `cat /root/awg/my_phone.vpnuri`
2. Скопируйте текст и отправьте себе (Telegram, почта и т.д.)
3. На телефоне: Amnezia VPN → «Добавить VPN» → «Вставить из буфера»
Импорт в Amnezia VPN через QR-код ссылки
1. Скачайте QR-код ссылки: `scp root@IP_СЕРВЕРА:/root/awg/my_phone.vpnuri.png .`
2. Откройте файл на экране компьютера
3. На телефоне: Amnezia VPN → «Добавить VPN» → «Сканировать QR-код»
Если сканер Amnezia VPN код не распознаёт (так было на Android с версией 5.0.3), считайте его обычной камерой телефона, скопируйте текст `vpn://...` и вставьте в Amnezia VPN, как в способе выше.
Файл `my_phone.png` без `vpnuri` в имени - это QR-код самого `.conf` для клиента AmneziaWG, в Amnezia VPN его не сканируйте.
Импорт в AmneziaWG for Windows
1. Скачайте `.conf` файл на компьютер через `scp` или `sftp`
2. AmneziaWG → Import tunnel(s) from file → выберите `.conf` файл
**Другие файлы на сервере:**
* Конфигурация сервера: `/etc/amnezia/amneziawg/awg0.conf`
* Настройки скрипта: `/root/awg/awgsetup_cfg.init`
* Скрипт управления: `/root/awg/manage_amneziawg.sh`
* Общие функции: `/root/awg/awg_common.sh`
* Данные истечения клиентов: `/root/awg/expiry/`
* Логи: `/root/awg/*.log`
---
## 👥 Управление клиентами (`manage_amneziawg.sh`)
Скрипт `manage_amneziawg.sh` для управления пользователями скачивается автоматически.
**Использование:**
```bash
sudo bash /root/awg/manage_amneziawg.sh <команда> [аргументы]
```
Полный список - `... help` или [ADVANCED.md#manage-commands-adv](ADVANCED.md#manage-commands-adv).
**Повседневные команды:**
| Команда | Аргументы | Описание | Перезапуск? |
| :-------- | :--------------------- | :--------------------------- | :-----------: |
| `add` | `<имя> [имя2 ...] [--expires=ВРЕМЯ] [--allowed-ips=СПИСОК]` | Добавить клиента(ов) (опц. с истечением и индивид. маршрутами) | Нет (авто) |
| `remove` | `<имя> [имя2 ...]` | Удалить клиента(ов) | Нет (авто) |
| `list` | `[-v] [--json]` | Список клиентов (`-v` детали, `--json` машиночитаемый с `client_ipv6` и `expires_at`) | Нет |
| `show` | | Статус `awg show` | Нет |
| `stats` | `[--json]` | Статистика трафика по клиентам | Нет |
**Обслуживание и восстановление:**
| Команда | Аргументы | Описание | Перезапуск? |
| :-------- | :--------------------- | :--------------------------- | :-----------: |
| `regen` | `[имя ...] [--reset-routes]` | Переген. файлы (всех/указанных) | Нет |
| `modify` | `<имя> <пар> <зн>` | Изменить параметр клиента | Нет |
| `backup` | | Создать резервную копию | Нет |
| `restore` | `[файл]` | Восстановить из резервной копии | Нет |
| `check` | | Проверка состояния сервера | Нет |
| `diagnose`| `[--carrier=ИМЯ]` | Диагностика (опц. под оператора) | Нет |
| `repair-module` | | Пересобрать модуль ядра (DKMS) | Да |
| `restart` | | Перезапуск сервиса AmneziaWG | - |
> **💡 Примечание:** Команды `add` и `remove` автоматически применяют изменения через `awg syncconf` - перезапуск сервиса не требуется.
> **🤖 Для скриптов и ботов:** с v5.21.0 почти все команды управления (от `add` до `repair-module`) понимают `--json` и отвечают одним JSON-объектом, даже если что-то пошло не так - вывод можно спокойно разбирать из своего скрипта или бота. `list --json` и `stats --json`, как и раньше, отдают простые массивы. Формат и строгий режим подтверждений `AWG_STRICT_CONFIRM=1` расписаны в [ADVANCED.md → JSON-интерфейс](ADVANCED.md#json-api-adv), а готовый Telegram-бот на этом интерфейсе уже есть - [awgram](#ekosistema).
### 📌 Краткая справка
```bash
# Установка (русский)
wget -O install_amneziawg.sh https://github.com/bivlked/amneziawg-installer/releases/latest/download/install_amneziawg.sh
sudo bash ./install_amneziawg.sh # Запуск (+ 2 перезагрузки)
# Установка (English)
wget -O install_amneziawg_en.sh https://github.com/bivlked/amneziawg-installer/releases/latest/download/install_amneziawg_en.sh
sudo bash ./install_amneziawg_en.sh # Запуск (+ 2 перезагрузки)
# Управление клиентами
sudo bash /root/awg/manage_amneziawg.sh add my_phone # Добавить
sudo bash /root/awg/manage_amneziawg.sh add my_iphone --psk # +PresharedKey (Shadowrocket iOS/macOS)
sudo bash /root/awg/manage_amneziawg.sh remove my_phone # Удалить
sudo bash /root/awg/manage_amneziawg.sh list # Список
sudo bash /root/awg/manage_amneziawg.sh list --json # Список в JSON (для скриптов)
sudo bash /root/awg/manage_amneziawg.sh regen # Перегенерация
# Временный клиент (7 дней)
sudo bash /root/awg/manage_amneziawg.sh add guest --expires=7d
# Статистика трафика
sudo bash /root/awg/manage_amneziawg.sh stats
sudo bash /root/awg/manage_amneziawg.sh stats --json
# Обслуживание
sudo bash /root/awg/manage_amneziawg.sh check # Диагностика
sudo bash /root/awg/manage_amneziawg.sh backup # Бэкап
sudo bash /root/awg/manage_amneziawg.sh restart # Перезапуск
```
---
## ℹ️ Дополнительная информация
Более подробную информацию о деталях конфигурации, настройках безопасности, параметрах AmneziaWG 3.1 и 2.0, дополнительных командах управления, технических деталях и ответах на другие вопросы вы можете найти в файле **[ADVANCED.md](ADVANCED.md)**.
Историю изменений смотрите в **[CHANGELOG.md](CHANGELOG.md)**.
Планы развития и приоритеты - в **[docs/ROADMAP.md](docs/ROADMAP.md)**.
Каскад из двух серверов с раздельным выходом российского и зарубежного трафика (split-tunnel) - в **[CASCADE.md](CASCADE.md)**.
Выборочная маршрутизация российского сегмента через Cloudflare WARP по BGP-фиду, если сервер один - в **[WARP-RU.md](WARP-RU.md)**.
---
## ❓ FAQ (Основные вопросы)
> **В разделе:** установка и обновление, подключение клиентов, мобильные сети, выбор хостинга и перенос, безопасность и параметры. Разверните нужный вопрос ниже.
В: Как установить AmneziaWG 3.1 на свой сервер?
О: На чистом VPS на x86_64 с Ubuntu 24.04, 26.04 или Debian 13 - тремя командами из быстрого старта: скачать install_amneziawg.sh из последнего релиза и запустить его через sudo bash. Профиль 3.1 ставится по умолчанию, модулем ядра и без Docker; на ARM и на штатном Debian 12 установщик сам поставит 2.0, а когда ещё он так делает - в разделе про 3.1. Понадобятся две перезагрузки: при каждом вопросе «Перезагрузить сейчас?» ответьте y, а после каждой перезагрузки подключитесь снова и повторите последнюю команду. Другой путь - официальное приложение Amnezia VPN, оно разворачивает сервер в Docker; чем подходы отличаются - в сравнении.
В: Будет ли работать после обновления ядра?
О: На обычной DKMS-установке да: модуль пересобирается при следующей загрузке, проверка - dkms status. На ARM с готовым модулем нет: после смены ядра туннель сам не поднимется. Штатный способ починки - запустить установщик ещё раз (sudo bash ./install_amneziawg.sh --force), он заново поставит модуль под новое ядро; это полный цикл с двумя перезагрузками.
В: Как полностью удалить AmneziaWG?
О: Скачайте скрипт установки (если его нет) и запустите: sudo bash ./install_amneziawg.sh --uninstall.
В: Клиенты не подключаются, что делать?
О: 1. Проверьте статус: sudo bash /root/awg/manage_amneziawg.sh check. 2. Проверьте фаервол: sudo ufw status verbose. 3. Проверьте конфиг клиента. 4. Проверьте логи: sudo journalctl -u awg-quick@awg0 -n 50. 5. Убедитесь, что клиент понимает поколение сервера (строка «Поколение протокола» в итоговом отчёте установщика или «Поколение протокола установки» в выводе check): для 3.1 нужны Amnezia VPN >= 5.0.1.5, AmneziaWG >= 3.1.0 для Windows и >= 3.1.4 для Android и iOS или WG Tunnel >= 5.6.0 на Android, для 2.0 - Amnezia VPN >= 4.8.12.7 или AmneziaWG >= 2.0.0.
В: Почему у меня поставился AmneziaWG 2.0, а не 3.1?
О: Профиль 3.1 установщик выдаёт только на x86_64 с ядром 6.7 и новее, это сознательная осторожность для платформ, которые ещё не проверены замером. Поэтому на ARM (Raspberry Pi, Oracle Ampere, Hetzner CAX) и на штатном Debian 12 (ядро 6.1) он сам ставит 2.0. Ещё он переходит на 2.0, если установленные утилиты awg или модуль ядра не понимают параметры 3.1 (или останавливается и говорит, что исправить). Причину он пишет в итоговом отчёте. Чтобы получить 3.1, нужен сервер на x86_64 с Ubuntu 24.04 / 26.04 или Debian 13. Если сервер был поставлен до версии 6.0.0, он остаётся на 2.0 и после обновления: переход - это --uninstall и новая установка с новыми профилями для всех клиентов. Сначала заберите резервную копию с сервера: --uninstall стирает /root/awg/. Подробнее - в ADVANCED.md.
В: Как подключить к VPN Linux-машину, в том числе сервер без графики?
О: Через awg-quick из amneziawg-tools: положите файл клиента как /etc/amnezia/amneziawg/awg0.conf и поднимите туннель командой sudo awg-quick up awg0. Для профиля 3.1 модуль (или amneziawg-go) и утилиты на клиенте тоже должны поддерживать 3.1. Пошагово - в ADVANCED.md → Подключение Linux-машины как клиента.
В: Handshake проходит, но трафик не идёт - что не так?
О: Частая причина - ловушка с AllowedIPs при ручной правке. Если хотите пинговать сервер или заходить на него по SSH по внутреннему IP (10.9.9.1 в подсети по умолчанию), добавьте в AllowedIPs клиента подсеть туннеля (по умолчанию 10.9.9.0/24, или вашу, если меняли --subnet). Иначе клиент не маршрутизирует трафик к серверу даже изнутри тоннеля. Режим --route-all (полный туннель 0.0.0.0/0, по умолчанию) покрывает подсеть автоматически; режим --route-amnezia (Amnezia List) и --route-custom= - нет, добавьте вручную. Подробнее - в ADVANCED.md → AllowedIPs.
Отдельно от режима маршрутизации: по умолчанию клиенты изолированы друг от друга на сервере (правило FORWARD awg0→awg0 DROP), даже если оба в одном режиме. Чтобы устройства видели друг друга внутри VPN, ставьте --isolation=off при установке - сервер снимает блокировку, а подсеть туннеля сама добавляется в AllowedIPs клиентов. Подробнее - в ADVANCED.md → Изоляция клиентов.
В: Можно сделать так, чтобы российский трафик шёл напрямую, а остальное - через заграницу?
О: Да, через каскад из двух серверов: клиент подключается к серверу-входу (лучше в РФ), российский трафик уходит в интернет напрямую с него, остальное - через второй сервер за границей. Деление на стороне сервера, на клиенте ничего особого настраивать не нужно. Пошаговая инструкция - в CASCADE.md.
В: Можно ли использовать с AWG 1.x клиентами?
О: Нет. Ни профиль 3.1, ни профиль 2.0 клиенты AWG 1.x не понимают: клиент должен поддерживать поколение сервера - 3.1 по умолчанию или 2.0, если сервер поставлен на неё. Для AWG 1.x используйте ветку legacy/v4.
В: Ошибка импорта конфига «Неверный ключ: s3» - что делать?
О: Вы используете устаревшую версию amneziawg-windows-client (< 2.0.0). Обновите до версии 2.0.0+, которая поддерживает AWG 2.0; для сервера 3.1 нужна версия 3.1.0 или новее. Альтернатива - Amnezia VPN >= 4.8.12.7, а для 3.1 >= 5.0.1.5.
В: Как обновить скрипты до новой версии?
О: Переустановка сервера не нужна: достаточно заменить два скрипта в /root/awg/. Скачайте их во временную папку, проверьте подпись и только потом замените (нужен minisign: sudo apt install minisign). Прямой wget -O поверх рабочего файла при сбое скачивания оставил бы пустой файл.
cd "$(mktemp -d)"
KEY=RWQXfpABHIpZPttqrwYrQNHRTk/iLIz4cVh9KkRwAElHP+CoW/NPEysN
M=manage_amneziawg.sh C=awg_common.sh # английская версия: M=manage_amneziawg_en.sh C=awg_common_en.sh
ok=1 tag=
for f in "$M" "$C"; do
wget -q -O "$f" "https://github.com/bivlked/amneziawg-installer/releases/latest/download/$f" \
&& wget -q -O "$f.minisig" "https://github.com/bivlked/amneziawg-installer/releases/latest/download/$f.minisig" \
&& out=$(minisign -V -P "$KEY" -m "$f" -x "$f.minisig") \
&& t=$(printf '%s\n' "$out" | sed -n "s/^Trusted comment: amneziawg-installer \(v[0-9.]*\) $f\$/\1/p") \
&& [ -n "$t" ] && [ "${tag:-$t}" = "$t" ] || { echo "НЕ ПРОВЕРЕН: $f"; ok=0; break; }
tag=$t
done
[ "$ok" = 1 ] && { old=$(sudo sed -n 's/^SCRIPT_VERSION="\(.*\)"/v\1/p' /root/awg/manage_amneziawg.sh) && [ -n "$old" ] \
|| { echo "НЕ ПРОВЕРЕН: не удалось прочитать установленную версию из /root/awg/manage_amneziawg.sh"; ok=0; }; }
[ "$ok" = 1 ] && [ "$(printf '%s\n' "$old" "$tag" | sort -V | tail -1)" != "$tag" ] \
&& { echo "НЕ ПРОВЕРЕН: релиз $tag старше установленного $old"; ok=0; }
[ "$ok" = 1 ] && { sudo install -m 700 "$M" /root/awg/manage_amneziawg.sh \
&& sudo install -m 700 "$C" /root/awg/awg_common.sh && echo "Установлен проверенный релиз $tag" || echo "НЕ УСТАНОВЛЕН до конца: запустите блок ещё раз"; }
Если скрипт напечатал «НЕ ПРОВЕРЕН», рабочие файлы не тронуты; «НЕ УСТАНОВЛЕН до конца» значит, что заменены не оба файла, и блок нужно запустить ещё раз. Если установленный `manage` старше v5.7.0, строки версии в нём нет и блок откажет: такой сервер обновляйте новым установщиком с `--force`. Блок принимает только пару файлов из одного релиза и не старше уже установленного, поэтому подменённая ссылка на последний релиз не откатит скрипты на старые подписанные версии. Номер проверенного релиза он печатает: сверьте его со страницей релизов.
С v5.21.0 пара скриптов защищена от рассинхрона: обновили manage, а awg_common забыли (или наоборот), и версии разошлись - скрипт остановится и покажет, какими командами докачать вторую половину, вместо странных ошибок посреди работы.
В: Какое максимальное количество клиентов?
О: Подсеть /24 по умолчанию позволяет до 253 клиентов (.2 - .254), что достаточно для большинства сценариев. Нужно больше - укажите более широкую маску через --subnet (например, /16).
В: Какой хостинг подходит?
О: Любой VPS - полноценная виртуальная машина (KVM или аналог) на x86_64 с Ubuntu 24.04 LTS / Ubuntu 26.04 / Debian 13 (так ставится AmneziaWG 3.1; штатный Debian 12 (ядро 6.1) тоже поддержан, но на 2.0 и без обычной поддержки - см. таблицу совместимости), root-доступом и от 512 МБ RAM (рекомендуется 1 ГБ). В контейнере (OpenVZ, LXC, Docker) установщик не работает, для него есть путь через userspace - ADVANCED.md. Беру хостинги с незаблокированными IP и неограниченным трафиком. См. рекомендацию ниже.
В: Как перенести VPN на другой сервер?
О: 1. Создайте бэкап: sudo bash /root/awg/manage_amneziawg.sh backup. 2. Скопируйте архив из /root/awg/backups/ на новый сервер. 3. Установите AmneziaWG на новом сервере. 4. Восстановите: sudo bash /root/awg/manage_amneziawg.sh restore (интерактивный выбор из списка, или укажите полный путь к архиву). 5. Перегенерируйте конфиги с новым IP: sudo bash /root/awg/manage_amneziawg.sh regen. Учтите поколение: restore возвращает сервер к поколению копии. Если старый сервер был на 2.0, а новый поставился на 3.1, после восстановления он станет 2.0 (restore об этом предупредит). Хотите заодно перейти на 3.1 - не восстанавливайте копию, а выдайте клиентам новые профили.
В: Как создать временного клиента?
О: sudo bash /root/awg/manage_amneziawg.sh add guest --expires=7d. Форматы: 1h, 12h, 1d, 7d, 30d, 4w. Cron проверяет каждые 5 минут и автоматически удаляет истёкших клиентов.
В: Что такое файлы .vpnuri?
О: Файлы .vpnuri содержат vpn:// URI для импорта конфигурации в Amnezia Client одним тапом. Скопируйте содержимое файла → откройте Amnezia Client → «Добавить VPN» → «Вставить из буфера».
В: Не подключается Shadowrocket на iOS/macOS - нужен PresharedKey
О: Для этого у команды add есть флаг --psk: sudo bash /root/awg/manage_amneziawg.sh add my_iphone --psk. В файле клиента появится строка PresharedKey = ... совпадающая с серверным [Peer]. Для уже созданных клиентов: пересоздать с флагом (remove + add --psk) или вручную - сгенерировать ключ один раз (PSK=$(awg genpsk)) и вставить одно и то же значение в обе стороны (серверный [Peer] клиента и клиентский [Peer] сервера); если значения различаются - handshake не пройдёт. regen сохраняет существующий PSK через rotation. Подробнее - в ADVANCED.md.
В: iPhone подключается, но через ~10 секунд трафик пропадает
О: Исправлено в v5.16.1 (Issue #42, спасибо @LiaNdrY). Тогдашний режим маршрутизации по умолчанию (mode 2, «Список Amnezia+DNS») начинался с 0.0.0.0/5 - на iOS этот блок ломал весь список маршрутов, и туннель вставал примерно через 10 секунд. На уже установленном сервере проще всего поставить в конфиге iOS-клиента AllowedIPs = 0.0.0.0/0 (обычная переустановка с --force сохранённый список не меняет). Точечная правка с сохранением split-tunnel - в ADVANCED.md.
В: Почему порт 39743?
О: Это случайный порт из верхнего диапазона, выбранный как дефолт. Можно изменить при установке: --port=N (любой порт 1-65535). На мобильных сетях, где оператор режет незнакомые порты, часто выручает 443/udp - его ставит флаг --mobile вместе с пресетом обфускации.
В: Нужен ли Perl на сервере?
О: Perl используется опционально для генерации vpn:// URI (.vpnuri файлов). Если Perl отсутствует, .conf файлы создаются как обычно - ими можно пользоваться через импорт файла или QR-код. На Ubuntu и Debian Perl установлен по умолчанию.
В: Можно ли управлять сервером из своих скриптов или Telegram-бота?
О: Да. С v5.21.0 команды управления принимают флаг --json и отвечают одним JSON-объектом даже при сбое - его спокойно разберёт любой скрипт (list/stats отдают JSON-массивы давно). Формат обещаю не ломать: новые поля могут появляться, существующие не переименовываются и не меняют тип. Для запусков без человека есть --yes, а строгий режим AWG_STRICT_CONFIRM=1 заставляет команды вроде remove отказаться, если --yes забыли, вместо молчаливого согласия. Разбор формата - в ADVANCED.md → JSON-интерфейс. Живой пример - Telegram-бот awgram, он работает ровно через этот интерфейс.
В: Безопасно ли запускать скрипт повторно? Придётся ли перевыпускать конфиги клиентам?
О: Да, безопасно, и перевыпускать не придётся. Повторная установка поверх уже работающего сервиса требует флага --force (или AWG_FORCE_REINSTALL=1) - без него скрипт сообщит, что AmneziaWG уже установлен, и ничего не тронет. С --force серверный конфиг пересоздаётся, но серверные ключи и параметры обфускации берутся существующие, а [Peer]-блоки переносятся из прежнего конфига. Клиенты сохраняются все, включая дефолтные my_phone и my_laptop: цикл создания пропускает тех, кто уже есть в конфиге. Выданные файлы и QR-коды остаются валидными.
Оговорка одна: если передать --mobile, --preset, --jc, --jmin или --jmax, весь набор Jc/S/H/I1 сгенерируется заново, а --port (и --mobile, который ставит 443) меняет порт. В обоих случаях старые конфиги перестанут подключаться, их придётся перевыпустить через regen и раздать снова. --endpoint меняет адрес только в заново выпущенных конфигах: старые сохраняют прежний и работают, пока он ведёт на сервер, а новый получат после regen. При обычном обновлении эти флаги не указывайте.
И чаще всего --force не нужен вовсе: чтобы получить новые команды управления, достаточно обновить два скрипта на сервере (вопрос выше). Заново прогонять установщик стоит, только когда менялся он сам.
В: AmneziaWG не подключается через мобильный интернет, а на Wi-Fi работает - что делать?
О: Чаще всего дело либо в порте, который глушит оператор, либо в форме маскирующего пакета I1. Различить их помогает сервер: во время попытки подключения посмотрите sudo tcpdump -ni any udp и sudo awg show.
- Пакетов от телефона нет вовсе: проверьте адрес и порт в
Endpoint, фаервол и не заблокирован ли адрес хостера. Если дело в порте, попробуйте --mobile (мобильный пресет и порт 443/udp); на работающем сервере это переустановка с --force и перевыпуск всех конфигов.
- Пакеты приходят, но
endpoint у пира не меняется: не совпадают S1-S4 или H1-H4 на сервере и клиенте.
endpoint меняется, счётчик принятого растёт, а latest handshake пустой: это I1. С v5.33.0 новые установки получают его в форме DNS-ответа сами, а в старых профилях I1 правят в .conf клиента, сервер трогать не нужно.
Разбор с готовой строкой - в ADVANCED.md → Рукопожатие на мобильном интернете, частые случаи собраны в обсуждении #38.
В: Почему конфиг AmneziaWG подсвечен жёлтым в приложении Amnezia?
О: Это не ошибка: жёлтым приложение Amnezia помечает конфигурации второй линии AmneziaWG. Их выдают серверы 2.0: поставленные до версии 6.0.0, с --protocol=2.0 или там, где установщик выбрал 2.0 сам. Сама по себе метка не говорит, что с соединением что-то не так, и переделывать из-за неё ничего не нужно. Подробнее - в FAQ ADVANCED.md.
В: С включённым AmneziaWG пропадает локальная сеть или не открываются сайты по IPv6 - это нормально?
О: Да, так работает полный туннель, режим по умолчанию: весь трафик устройства, включая IPv6, уходит в VPN. По умолчанию IPv6 в туннеле дальше не идёт, и устройство переходит на IPv4. Останется ли доступной локальная сеть, решает клиент: AmneziaWG для Windows её отрезает. Если домашние устройства нужны при включённом VPN, переключите сервер в режим «Amnezia»: переустановка с --force --route-amnezia, затем sudo bash /root/awg/manage_amneziawg.sh regen --reset-routes, чтобы новый режим дошёл до уже выданных профилей. У режима есть своя цена, она описана в ADVANCED.md → IPv6 устройства и локальная сеть.
В: Можно ли поставить AmneziaWG на Synology NAS?
О: Этим установщиком нет: на проверенном DS918+ с DSM 7.4.1 ядро 4.4, модулю нужно 5.15 и выше, а собрать его на самой коробке нечем. Сам AmneziaWG на Synology поднимается вручную через userspace-реализацию, пошагово - в ADVANCED.md → AmneziaWG на Synology NAS.
В: После обновления AmneziaWG перестал подключаться - что проверить?
О: Посмотрите, что именно обновлялось. Если установщик запускали повторно с флагами, которые меняют параметры обфускации или порт, выданные конфиги нужно перевыпустить, какие это флаги - в вопросе «Безопасно ли запускать скрипт повторно?» выше. На ARM с готовым модулем после обновления ядра запустите установщик ещё раз. Если после обновления приложения Amnezia конфиг стал жёлтым, это не ошибка (вопрос выше). В остальных случаях начните с sudo bash /root/awg/manage_amneziawg.sh check.
> Больше ответов и решений см. в **[ADVANCED.md](ADVANCED.md)**.
---
## 🛠️ Устранение неполадок
1. **Логи:** `/root/awg/install_amneziawg.log`, `/root/awg/manage_amneziawg.log`
2. **Статус сервиса:** `sudo systemctl status awg-quick@awg0`
3. **Статус AmneziaWG:** `sudo awg show`
4. **Статус UFW:** `sudo ufw status verbose`
5. **Диагностический отчет:** `sudo bash ./install_amneziawg.sh --diagnostic`
Подробное описание содержимого отчета см. в [ADVANCED.md](ADVANCED.md#diagnostic-report-adv).
---
## 🌐 Экосистема
### Клиенты
> **Какой клиент выбрать?** На Android - [**WG Tunnel**](https://github.com/wgtunnel/android) или лёгкий [**AmneziaWG**](https://github.com/amnezia-vpn/amneziawg-android): по нашей проверке 13 октября 2026 оба переподключаются меньше чем за секунду и не теряют туннель при переходе с Wi-Fi на мобильную сеть. На iPhone, Mac и Windows - лёгкий **AmneziaWG** для вашей платформы (импорт `.conf`; iPhone и Mac в проверке не участвовали).
> [Amnezia VPN](https://github.com/amnezia-vpn/amnezia-client/releases) (для сервера 3.1 >= 5.0.1.5, для 2.0 >= 4.8.12.7) работает на всех платформах и принимает ссылку `vpn://`; в российском App Store его нет.
| Клиент | Платформа | AWG 3.1 | AWG 2.0 | Тип | Примечание |
|--------|-----------|:-------:|:-------:|-----|------------|
| [Amnezia VPN](https://github.com/amnezia-vpn/amnezia-client/releases) | Windows, macOS, Linux, Android, iOS | ✅ >= 5.0.1.5 | ✅ >= 4.8.12.7 | Официальный | Полнофункциональный, `vpn://` URI; на Android после выключения Wi-Fi туннель не восстановился без перезапуска приложения (5.0.3, 13 окт 2026); в российском App Store нет |
| [AmneziaWG](https://github.com/amnezia-vpn/amneziawg-windows-client/releases) | Windows | ✅ >= 3.1.0 | ✅ >= 2.0.0 | Официальный | Легковесный tunnel manager, импорт `.conf` |
| **[AmneziaWG](https://github.com/amnezia-vpn/amneziawg-android)** | Android | ✅ >= 3.1.4 в Google Play | ✅ >= 2.0.0 | Официальный | **Рекомендуется для Android.** Легковесный tunnel manager, импорт `.conf` и QR |
| [AmneziaWG](https://apps.apple.com/app/amneziawg/id6478942365) | iOS, macOS | ✅ >= 3.1.4 | ✅ | Официальный | Легковесный tunnel manager, импорт `.conf`; есть в российском App Store |
| **[WG Tunnel](https://github.com/wgtunnel/android)** | Android | ✅ >= 5.6.0 | ✅ | Сторонний, FOSS | **Рекомендуется для Android.** Auto-tunneling, split tunnel; Google Play, IzzyOnDroid |
| [WG Tunnel Desktop](https://github.com/wgtunnel/desktop) | Windows, Linux, macOS | ✅ v2 | ✅ | Сторонний, FOSS | Тот же движок, что у Android-версии |
| [VeilBox](https://github.com/artem4150/VeilBox) | Windows, macOS | не проверено | ✅ | Сторонний, FOSS | Также поддерживает VLESS |
> Версии с поддержкой 3.1 взяты из заметок к выпускам на 12 октября 2026. [Полная таблица совместимости клиентов →](ADVANCED.md#client-compat-adv)
### Инструменты настройки
| Проект | Описание |
|--------|----------|
| [Junker](https://spatiumstas.github.io/junker/) | Веб-генератор подписей AmneziaWG от @spatiumstas - для ручной настройки без установочного скрипта |
| [Any-Tech-ARCHITECT](https://architect.vai-rice.space/) | Веб-генератор параметров обфускации от @Vadim-Khristenko - подбор и проверка значений с матрицей совместимости клиентов ([GitHub](https://github.com/Vadim-Khristenko/Any-Tech-ARCHITECT)) |
### Прошивки для роутеров
| Проект | Платформа | Описание |
|--------|-----------|----------|
| [AWG Manager](https://github.com/hoaxisr/awg-manager) | Keenetic (Entware) | Веб-интерфейс для управления AWG-туннелями на роутерах Keenetic |
| [AmneziaWG for Merlin](https://github.com/r0otx/asuswrt-merlin-amneziawg) | ASUS (Asuswrt-Merlin) | Аддон AWG 2.0 с веб-интерфейсом, GeoIP/GeoSite маршрутизация |
### Управление сервером
| Проект | Платформа | Описание |
|--------|-----------|----------|
| [amneziawg-manager](https://github.com/rockysys/amneziawg-manager) | macOS | Нативный GUI, управляет сервером по SSH через штатный manage - без веб-панели и демонов |
| [awgram](https://github.com/ekuraev/awgram) | Telegram | Бот на Rust: добавление/удаление клиентов, статистика, бэкап - через штатный manage |
| [amneziawg-installer-tg-bot](https://github.com/blindtechnique/amneziawg-installer-tg-bot) | Telegram | Бот на Python, работает на самом сервере: клиенты кнопками, гостевой доступ со сроком, статистика, бэкап - через штатный manage |
| [amneziawg_dns_adblock](https://github.com/Cueuler/amneziawg_dns_adblock) | Сервер | Блокировка рекламы и трекеров в DNS для клиентов VPN от @Cueuler: Blocky на адресе туннеля, ставится поверх готовой установки, нужен полный туннель (`--route-all`). Файла лицензии нет, автор разрешил свободное использование в [обсуждении #237](https://github.com/bivlked/amneziawg-installer/discussions/237#discussioncomment-18605625) |
📰 Упоминания
**📖 Гайды и туториалы**
- [Hetzner Community - Making a website accessible from restricted regions](https://community.hetzner.com/tutorials/making-website-accessible-from-restricted-regions) (cross-link в Resources)
- [Debian Forums - HowTo: Install AmneziaWG 2.0 on Debian 12/13](https://forums.debian.net/viewtopic.php?t=166105)
- [LowEndTalk - [Tutorial] One-command AmneziaWG VPN server install on Ubuntu / Debian / ARM](https://lowendtalk.com/discussion/217191)
- [AVA Hosting - Self-Hosted VPN: Setup AmneziaWG Easily (пошаговый гайд на основе установщика)](https://ava.hosting/information/amneziawg/)
**📰 Статьи и обзоры**
- [XDA Developers - «I found a self-hosted VPN that works where WireGuard gets blocked»](https://www.xda-developers.com/self-hosted-vpn-works-where-wireguard-gets-blocked/)
- [Pinggy - Top 5 Best Self-Hosted VPNs in 2026](https://pinggy.io/blog/top_5_best_self_hosted_vpns/)
- [gHacks Tech News - AmneziaWG 2.0](https://www.ghacks.net/2026/03/25/amnezia-releases-amneziawg-2-0-to-bypass-advanced-internet-censorship-systems/)
**📋 Каталоги и подборки**
- [VPN Статус - каталог AmneziaWG-сервисов и серверных решений](https://vpnstatus.site/protocols/amneziawg)
- [AlternativeTo - amneziawg-installer (42 альтернативы)](https://alternativeto.net/software/amneziawg-installer/about/)
- [LibHunt - #1 в категории Shell VPN](https://www.libhunt.com/r/amneziawg-installer)
**💬 Форумы и сообщества**
- [Qubes OS Forum - AmneziaWG for censored regions](https://forum.qubes-os.org/t/installation-of-amnezia-vpn-and-amnezia-wg-effective-tools-against-internet-blocks-via-dpi-for-china-russia-belarus-turkmenistan-iran-vpn-with-vless-xray-reality-best-obfuscation-for-wireguard-easy-self-hosted-vpn-bypass/39005)
- [Lemmy.world /c/selfhosted - amneziawg-installer announce (143 upvotes / 39 comments)](https://lemmy.world/post/45242153)
---
## 📝 Лицензия и Автор
* **Автор скриптов:** @bivlked - [GitHub](https://github.com/bivlked)
* **Лицензия:** MIT - свободное ПО с открытым исходным кодом (см. `LICENSE`)
---
Проект пригодился - поставьте ⭐. Так его проще найти другим.
↑ К началу