One-command AmneziaWG 2.0 / 3.x installer for a self-hosted VPN server on Ubuntu and Debian: DPI bypass, traffic obfuscation, split tunneling, auto-hardening, client management. Includes a VPN cascade guide.
1,241
stars
434
commits
Shell
primary language
Sep 10, 2026
updated
RU Русский | EN English
VPN за одну команду - работает там, где WireGuard блокируют. Любой VPS за $3, без знания Linux.
One-command, self-hosted AmneziaWG 2.0 / 3.0 VPN for Ubuntu 24.04 / 25.10 / 26.04 and Debian 12 / 13. Kernel-native DKMS, no Docker, no web panel, runs on any cheap VPS.
В ядре, без Docker и панелей - нет накладных расходов | сервер только под VPN, защита из коробки | поставил и забыл | QR-код или vpn:// в один тап
wget -O install_amneziawg.sh https://raw.githubusercontent.com/bivlked/amneziawg-installer/v5.27.1/install_amneziawg.sh
chmod +x install_amneziawg.sh
sudo bash ./install_amneziawg.sh
Что делает: ставит AmneziaWG (модуль ядра через DKMS, какую линию протокола вы получите - в разделе AmneziaWG 3.x), настраивает firewall и форвардинг, создаёт первого клиента, печатает QR-код и
vpn://ссылку для импорта в Amnezia Client. Добавить друга или устройство потом - одна командаadd. 3 команды. 2 перезагрузки по ходу. Около 20 минут до готового VPN. Для чистого Ubuntu/Debian VPS, не роутер и не shared-хостинг. Подробнее →
📘 Полный гайд по развёртыванию: Установка сервера AmneziaWG на VPS - выбор VPS, ARM, troubleshooting, удаление. English version.
🔐 Целостность: скрипт качается по HTTPS с
raw.githubusercontent.com(тег закреплён), вспомогательные скрипты (awg_common,manage) проверяются по закреплённым SHA256-хешам. Отдельные detached-подписи релизов пока не активны (запланированы) - статус и модель угроз в SECURITY.md.
Скрипт получает root - вот краткий список того, что он делает с системой:
unattended-upgrades (значит, обновления безопасности перестают ставиться автоматически) и cloud-init, если он не управляет сетью (полный список в ADVANCED.md)./etc/sysctl.d/); IPv6 на хосте по умолчанию выключается (оставить: --allow-ipv6); swap подгоняется под размер RAM./root/awg/ и /etc/amnezia/amneziawg/ с правами 600/700; сервис awg-quick@awg0; крон автоудаления истёкших клиентов.--uninstall убирает своё - модуль, конфиги, sysctl-файлы, кроны, UFW-правило VPN-порта и UFW-правило маршрутизации awg0. UFW отключает и Fail2Ban удаляет только если сам их включал/ставил; если UFW был активен до установки, добавленное правило SSH rate-limit остаётся. Не возвращает: swap и удалённые пакеты.Пошаговые детали - в ADVANCED.md, модель угроз - в SECURITY.md.
sudo bash ./install_amneziawg.sh --yes --route-all
Все параметры принимаются автоматически. Подробнее: ADVANCED.md#cli-params-adv
| Ваша ситуация | Что добавить |
|---|---|
| Обычный дешёвый VPS, просто нужен VPN | Ничего - команда выше уже всё делает |
| Мобильный интернет, DPI режет (ТСПУ, Иран, школа или корпоратив) | При установке добавьте --mobile - пресет обфускации + порт 443/udp разом (проверенные операторы) |
| ARM: Raspberry Pi, Oracle Ampere, Hetzner CAX | Та же команда - готовые ARM-модули ядра выберутся автоматически (детали) |
| Доступ другу или гостю на время | После установки: manage_amneziawg.sh add guest --expires=7d |
Зачем это нужно • AmneziaWG 3.x • AWG vs WG • CLI vs панели • Похожие инструменты • Быстрый старт • Что умеет • Операторы • Требования • Хостинг • Установка • После установки • Управление • Дополнительно • FAQ • Устранение неполадок • Экосистема • Лицензия
AmneziaWG - форк WireGuard с обфускацией трафика. Обфускация делает трафик трудноотличимым от случайного шума для систем DPI, поэтому там, где обычный WireGuard детектируют и блокируют, AmneziaWG обычно продолжает работать.
Этот набор скриптов превращает чистый VPS в готовый VPN-сервер. Не нужны знания Linux - скрипт сам настроит firewall, оптимизирует систему, создаст конфиги и QR-коды для клиентов.
Сервер настраивается под одну задачу - VPN: лишние пакеты убираются, ядро, сеть и swap тюнингуются под железо, включаются firewall и базовая защита. AmneziaWG работает в ядре, поэтому накладных расходов почти нет - быстро и экономно. Поставил один раз для дома или семьи и забыл: добавить друга или новое устройство через месяц - минута, конфиг и QR готовятся одной командой.
Работает на Ubuntu 24.04/25.10/26.04 и Debian 12/13. Хватит любого дешёвого VPS с 1 ГБ RAM.
В конце июля 2026 вышла AmneziaWG 3.0, и PPA переключили на неё; 12 августа внутри той же линии вышла 3.1, и PPA раздаёт уже её. На x86 с ядром 6.7 или новее установщик уже ставит модуль третьей версии - включать отдельно ничего не нужно, а конфиги, которые у вас уже розданы, продолжают работать без единой правки. Какой именно выпуск приедет вам, зависит от того, что лежит в PPA на день установки, поэтому ниже команда, которая отвечает точно.
Посмотреть, что стоит именно у вас:
awg --version # версия утилит
cat /sys/module/amneziawg/version # версия загруженного модуля
Если модуль не загружен, вторая команда ничего не покажет - тогда версию файла на диске выдаст modinfo amneziawg | grep ^version. Подробнее о том, почему это разные вопросы, - в ADVANCED.md.
На ядрах старее 6.7 (Debian 12 с 6.1) и на ARM, где есть готовый пакет под ваше ядро, ставится проверенная 2.0: там третья версия обкатана меньше всего, и порог мы держим сознательно.
Сами возможности 3.0 - шифрование заголовков, добавочный паддинг, настройка таймингов - в генерируемые конфиги ещё не попадают. Для них нужны клиентские приложения, а они вышли не на всех платформах. Подробный разбор (что меняется на проводе, какие параметры добавились, что обязано совпадать у сервера и клиента) - в ADVANCED.md.
| WireGuard | AmneziaWG 2.0 | |
|---|---|---|
| Обнаружение DPI | Детектируется по фиксированным размерам пакетов и magic bytes | Трудно зафингерпринтить - случайные заголовки, padding, имитация протоколов |
| Блокируется в | Китай, Россия, Иран, ОАЭ, Туркменистан | Не известно о блокировках (по состоянию на апрель 2026) |
| Настройка сервера | Вручную: ключи, iptables, sysctl, systemd | Одна команда, 20 минут, полностью автоматически |
| Безопасность | Сами: UFW, Fail2Ban, sysctl | Автоматически: firewall + защита от брутфорса + тюнинг ядра |
| Управление клиентами | Ручное редактирование конфигов, рестарт | add/remove/list/stats с hot-reload |
| Временный доступ | Нет | --expires=7d с автоматическим удалением |
| Требования к серверу | - | Те же - любой VPS за $3-5/мес, 1 ГБ RAM |
| Потеря скорости | Базовая | Минимальная (<2% в типичных тестах) |
Если WireGuard у вас работает и не блокируется - используйте его. Если блокируется или режется - AmneziaWG 2.0 является прямой заменой.
Задача - поднять 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 | SSH + bash, опц. нативная веб-панель и обфускация-прокси (Rust) | Нужна веб-панель без Docker или маскировка трафика отдельным сервисом |
| wg-easy | Docker + веб-интерфейс | Домашние боксы, на которых уже крутится Docker; нужна панель для клиентов |
| spcfox/amnezia-wg-easy | Docker-форк wg-easy | Те, кто уже на wg-easy и хочет именно AmneziaWG вместо обычного WireGuard |
| Amnezia VPN | Десктоп/моб GUI, разворачивает сервер в Docker по SSH | Установка кликами без терминала; нужен графический клиент |
Быстрый выбор:
vpn://), клиенты по сроку (--expires), пресеты под мобильных операторов - этот установщик.Когда этот проект - не лучший выбор:
manage add/remove/list) по SSH.Официальное приложение Amnezia - официальный графический клиент: ставишь приложение, указываешь сервер, и оно разворачивает серверную часть в Docker по SSH. Удобно, когда нужен только GUI. Этот установщик создан под другую задачу - выжать из одного выделенного VPS максимум как из VPN-сервера. Отсюда и отличия:
--preset=mobile), прямой доступ к параметрам AmneziaWG 2.0 и полевые данные по операторам и DPI - можно подстроить под конкретную сеть или оператора.--expires), импорт по QR или vpn://, готовые сборки под ARM.Протокол и стойкость к DPI при этом одинаковые - под капотом тот же AmneziaWG 2.0. Код открыт под MIT, это читаемый bash, его можно просмотреть перед запуском, на нём 1100+ автотестов. Ставится тот же upstream AmneziaWG - это автоматизация и тюнинг сервера, а не форк протокола.
Подробное сравнение: amneziawg-installer и официальное приложение Amnezia.
--preset=mobile для Tele2, Yota, Мегафон и других операторов с DPI-блокировками. Тонкая настройка через --jc, --jmin, --jmax (подробнее)--allow-ipv6-tunnel добавляет IPv6 внутри туннеля рядом с IPv4 (по умолчанию выключено, подробнее)awg - без Python и внешних зависимостейvpn:// URI для импорта в Amnezia Client одним тапом (.vpnuri файлы)stats, stats --json)--expires=1h, 7d, 4w и др.)--diagnostic) и полная деинсталляция (--uninstall)/root/awg/--isolation=on|off). Поддержка --endpoint для серверов за NATУстановщик настраивает обфускацию AmneziaWG 2.0 под мобильные сети с DPI: --mobile включает мобильный пресет и порт 443/udp одним флагом. Если VPN нестабилен через мобильный интернет - переустановите с --mobile. Ниже - рабочие конфигурации по отчётам пользователей из issues и discussions (не гарантия: блокировки и параметры операторов меняются со временем):
--preset=mobile--preset=mobile); Красноярск (--preset=mobile; в майскую волну 2026 заработал I1=<r 48>)--preset=mobile--preset=mobile + удалить параметр I1Вашего оператора нет в списке? Попробуйте --preset=mobile. Не помогло - заведите тред в Discussions или Issues, добавлю в список.
Полная таблица операторских параметров (Jc, Jmin, Jmax, I1) - в ADVANCED.md → FAQ «через мобильную сеть». Точечная настройка через
--jc/--jmin/--jmax- в ADVANCED.md → Presets.
root (через sudo)Совместимость ОС:
| ОС | Статус | Примечание |
|---|---|---|
| Ubuntu 24.04 LTS | ✅ Полная поддержка | Рекомендуется |
| Ubuntu 25.10 | ✅ Поддерживается | PPA noble fallback применяется автоматически с v5.13.0 |
| Ubuntu 26.04 | ✅ Поддерживается | PPA noble fallback применяется автоматически с v5.13.0 |
| Debian 12 (bookworm) | ✅ Поддержка | Протестировано. PPA через маппинг codename на focal |
| Debian 13 (trixie) | ✅ Поддержка | Протестировано. PPA через маппинг codename на noble, DEB822 |
Поддержка архитектур (v5.10.0+):
| Архитектура | Статус | Платформы |
|---|---|---|
| x86_64 (amd64) | ✅ Полная поддержка | Все облачные VPS |
| ARM64 (aarch64) | ✅ Поддержка | Raspberry Pi 3/4/5, AWS Graviton, Oracle Ampere, Hetzner |
| ARMv7 (armhf) | ✅ Поддержка | Raspberry Pi 3/4 (32-bit) |
На ARM установщик загружает готовые модули ядра при наличии, и автоматически переключается на DKMS-сборку если нужно.
⚠️ Нестандартный порт SSH: Установщик обычно определяет SSH-порт автоматически. Если SSH на нестандартном порту или автодетект недоступен, запускайте с
--ssh-port=ВАШ_ПОРТ(несколько портов - списком через запятую). Как дополнительная консервативная страховка можно заранее выполнитьsudo ufw allow ВАШ_ПОРТ/tcpдо запуска установки.
Клиенты:
vpn:// URI.conf файлыДля стабильной работы VPN-сервера с высокой пропускной способностью важен надежный хостинг с хорошим каналом.
На что смотреть при выборе VPS под VPN:
Опробовал и рекомендую FreakHosting. В частности, их линейка BUDGET VPS предлагает отличное соотношение цены и качества.
Их IP-адреса не идентифицируются, как адреса датацентров и не попадают под блокировки по признаку «IP принадлежит хостинг-провайдеру» (в отличие, например, от Azure и некоторых крупных облаков).
Этой конфигурации более чем достаточно для комфортной работы AmneziaWG с большим количеством подключений и высоким трафиком.
Установка AmneziaWG на Ubuntu или Debian сводится к трём командам: скачать скрипт, запустить с sudo и ответить на несколько вопросов. Этот метод гарантирует корректную работу интерактивных запросов и цветного вывода в вашем терминале.
Подключитесь к чистому серверу (Ubuntu 24.04 / Ubuntu 25.10 / Ubuntu 26.04 / Debian 12 / Debian 13) по SSH.
Совет: После создания сервера подождите 5-10 минут, чтобы завершились все фоновые процессы инициализации системы, прежде чем запускать установку.
Скачайте скрипт:
wget -O install_amneziawg.sh https://raw.githubusercontent.com/bivlked/amneziawg-installer/v5.27.1/install_amneziawg.sh
# или: curl -fLo install_amneziawg.sh https://raw.githubusercontent.com/bivlked/amneziawg-installer/v5.27.1/install_amneziawg.sh
На минимальном Debian curl может отсутствовать (wget обычно есть) - используйте
wget. Сам curl установщик доставит на шаге 1.
Сделайте его исполняемым:
chmod +x install_amneziawg.sh
Запустите с sudo:
sudo bash ./install_amneziawg.sh
(Вы также можете передать параметры командной строки, см. sudo bash ./install_amneziawg.sh --help или ADVANCED.md#install-cli-adv)
English version: Для вывода на английском используйте
install_amneziawg_en.sh:wget -O install_amneziawg_en.sh https://raw.githubusercontent.com/bivlked/amneziawg-installer/v5.27.1/install_amneziawg_en.sh sudo bash ./install_amneziawg_en.shАнглийская версия функционально идентична; только сообщения и логи на английском. После перезагрузки продолжайте тем же файлом:
sudo bash ./install_amneziawg_en.sh
Начальная настройка: Скрипт интерактивно запросит:
UDP порт: Порт для подключения клиентов (1-65535). По умолчанию: 39743.
Подсеть туннеля: Внутренняя сеть для VPN. По умолчанию: 10.9.9.1/24.
Отключение IPv6: Рекомендуется отключить (Y) для избежания утечек трафика.
Режим маршрутизации: Определяет, какой трафик пойдет через VPN. По умолчанию 2 (Список Amnezia+DNS) - рекомендуется для лучшей совместимости и обхода блокировок.
Изоляция клиентов: Блокировать ли трафик между клиентами внутри VPN. По умолчанию включена (Y) - клиенты не видят друг друга; неинтерактивно: --isolation=on|off.
Имя сервера: Под этим именем сервер появится в приложении Amnezia при импорте vpn://. По умолчанию AWG Server; неинтерактивно: --server-name=ИМЯ.
Параметры AWG 2.0 (Jc, S1-S4, H1-H4, I1) генерируются автоматически - никаких действий не требуется.
Перезагрузки: Потребуется ДВЕ перезагрузки. Скрипт запросит подтверждение [y/N]. Введите y и нажмите Enter.
Продолжение: После каждой перезагрузки снова запустите скрипт той же командой:
sudo bash ./install_amneziawg.sh
Скрипт автоматически продолжит с нужного шага без повторных запросов.
Завершение: После второй перезагрузки и третьего запуска скрипта вы увидите сообщение:
Установка и настройка AmneziaWG 2.0 УСПЕШНО ЗАВЕРШЕНА!
Где найти файлы клиентов:
| Файл | Путь | Назначение |
|---|---|---|
.conf | /root/awg/имя.conf | Конфигурация для импорта в клиент |
.png | /root/awg/имя.png | QR-код для мобильных устройств |
.vpnuri | /root/awg/имя.vpnuri | vpn:// URI для Amnezia Client |
Скачать конфиг на компьютер:
scp root@IP_СЕРВЕРА:/root/awg/my_phone.conf .
cat /root/awg/my_phone.vpnuriscp root@IP_СЕРВЕРА:/root/awg/my_phone.png ..conf файл на компьютер через scp или sftp.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/*.logmanage_amneziawg.sh)Скрипт manage_amneziawg.sh для управления пользователями скачивается автоматически.
Использование:
sudo bash /root/awg/manage_amneziawg.sh <команда> [аргументы]
Полный список - ... help или ADVANCED.md#manage-commands-adv.
Повседневные команды:
| Команда | Аргументы | Описание | Перезапуск? |
|---|---|---|---|
add | <имя> [имя2 ...] [--expires=ВРЕМЯ] | Добавить клиента(ов) (опц. с истечением) | Нет (авто) |
remove | <имя> [имя2 ...] | Удалить клиента(ов) | Нет (авто) |
list | [-v] [--json] | Список клиентов (-v детали, --json машиночитаемый с client_ipv6) | Нет |
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-интерфейс, а готовый Telegram-бот на этом интерфейсе уже есть - awgram.
# Установка (русский)
wget -O install_amneziawg.sh https://raw.githubusercontent.com/bivlked/amneziawg-installer/v5.27.1/install_amneziawg.sh
sudo bash ./install_amneziawg.sh # Запуск (+ 2 перезагрузки)
# Установка (English)
wget -O install_amneziawg_en.sh https://raw.githubusercontent.com/bivlked/amneziawg-installer/v5.27.1/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 # Перезапуск
Более подробную информацию о деталях конфигурации, настройках безопасности, параметрах AWG 2.0, дополнительных командах управления, технических деталях и ответах на другие вопросы вы можете найти в файле ADVANCED.md.
Историю изменений смотрите в CHANGELOG.md.
Планы развития и приоритеты - в docs/ROADMAP.md.
Каскад из двух серверов с раздельным выходом российского и зарубежного трафика (split-tunnel) - в CASCADE.md.
Выборочная маршрутизация российского сегмента через Cloudflare WARP по BGP-фиду, если сервер один - в WARP-RU.md.
В разделе: установка и обновление, подключение клиентов, мобильные сети, выбор хостинга и перенос, безопасность и параметры. Разверните нужный вопрос ниже.
dkms status.
sudo bash ./install_amneziawg.sh --uninstall.
sudo bash /root/awg/manage_amneziawg.sh check. 2. Проверьте фаервол: sudo ufw status verbose. 3. Проверьте конфиг клиента. 4. Проверьте логи: sudo journalctl -u awg-quick@awg0 -n 50. 5. Убедитесь, что клиент поддерживает AWG 2.0: Amnezia VPN >= 4.8.12.7 или AmneziaWG >= 2.0.0.
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 → Изоляция клиентов.
amneziawg-windows-client (< 2.0.0). Обновите до версии 2.0.0+, которая поддерживает AWG 2.0. Альтернатива - Amnezia VPN >= 4.8.12.7.
# Русская версия: wget -O /root/awg/manage_amneziawg.sh https://raw.githubusercontent.com/bivlked/amneziawg-installer/v5.27.1/manage_amneziawg.sh wget -O /root/awg/awg_common.sh https://raw.githubusercontent.com/bivlked/amneziawg-installer/v5.27.1/awg_common.sh chmod 700 /root/awg/manage_amneziawg.sh /root/awg/awg_common.shПереустановка сервера не требуется.Английская версия:
wget -O /root/awg/manage_amneziawg.sh https://raw.githubusercontent.com/bivlked/amneziawg-installer/v5.27.1/manage_amneziawg_en.sh wget -O /root/awg/awg_common.sh https://raw.githubusercontent.com/bivlked/amneziawg-installer/v5.27.1/awg_common_en.sh chmod 700 /root/awg/manage_amneziawg.sh /root/awg/awg_common.sh
/24 по умолчанию позволяет до 253 клиентов (.2 - .254), что достаточно для большинства сценариев. Нужно больше - укажите более широкую маску через --subnet (например, /16).
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.
sudo bash /root/awg/manage_amneziawg.sh add guest --expires=7d. Форматы: 1h, 12h, 1d, 7d, 30d, 4w. Cron проверяет каждые 5 минут и автоматически удаляет истёкших клиентов.
.vpnuri содержат vpn:// URI для импорта конфигурации в Amnezia Client одним тапом. Скопируйте содержимое файла → откройте Amnezia Client → «Добавить VPN» → «Вставить из буфера».
--psk для команды add: 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.
0.0.0.0/5 - на iOS этот блок ломал весь список маршрутов, и туннель вставал примерно через 10 секунд. На уже установленном сервере проще всего поставить в конфиге iOS-клиента AllowedIPs = 0.0.0.0/0 (обычная переустановка с --force сохранённый список не меняет). Точечная правка с сохранением split-tunnel - в ADVANCED.md.
--port=N (любой порт 1-65535). На мобильных сетях, где оператор режет незнакомые порты, часто выручает 443/udp - его ставит флаг --mobile вместе с пресетом обфускации.
vpn:// URI (.vpnuri файлов). Если Perl отсутствует, .conf файлы создаются как обычно - ими можно пользоваться через импорт файла или QR-код. На Ubuntu и Debian Perl установлен по умолчанию.
--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-коды остаются валидными.
--preset, --jc, --jmin или --jmax, весь набор Jc/S/H/I1 сгенерируется заново - и вот тогда старые конфиги перестанут подключаться, их придётся перевыпустить через regen и раздать снова. При обычном обновлении эти флаги не указывайте.
--force не нужен вовсе: чтобы получить новые команды управления, достаточно обновить два скрипта на сервере (вопрос выше). Заново прогонять установщик стоит, только когда менялся он сам.
Больше ответов и решений см. в ADVANCED.md.
/root/awg/install_amneziawg.log, /root/awg/manage_amneziawg.logsudo systemctl status awg-quick@awg0sudo awg showsudo ufw status verbosesudo bash ./install_amneziawg.sh --diagnostic
Подробное описание содержимого отчета см. в ADVANCED.md.Какой клиент выбрать? Установите Amnezia VPN (>= 4.8.12.7) - работает на всех платформах, поддерживает импорт
vpn://URI. Для легковесного подключения (только.conf) используйте AmneziaWG для вашей платформы.
| Клиент | Платформа | AWG 2.0 | Тип | Примечание |
|---|---|---|---|---|
| Amnezia VPN | Windows, macOS, Linux, Android, iOS | ✅ >= 4.8.12.7 | Официальный | Рекомендуется. Полнофункциональный, vpn:// URI |
| AmneziaWG | Windows | ✅ >= 2.0.0 | Официальный | Легковесный tunnel manager, импорт .conf |
| AmneziaWG | Android | ✅ >= 2.0.0 | Официальный | Легковесный tunnel manager, импорт .conf |
| AmneziaWG | iOS | ✅ | Официальный | Легковесный tunnel manager, импорт .conf |
| WG Tunnel | Android | ⚠️ частично | Сторонний, FOSS | Auto-tunneling, split tunnel, F-Droid |
| VeilBox | Windows, macOS | ✅ | Сторонний, FOSS | Также поддерживает VLESS |
| Проект | Описание |
|---|---|
| Junker | Веб-генератор подписей AmneziaWG от @spatiumstas - для ручной настройки без установочного скрипта |
| Any-Tech-ARCHITECT | Веб-генератор параметров обфускации от @Vadim-Khristenko - подбор и проверка значений с матрицей совместимости клиентов (GitHub) |
| Проект | Платформа | Описание |
|---|---|---|
| AWG Manager | Keenetic (Entware) | Веб-интерфейс для управления AWG-туннелями на роутерах Keenetic |
| AmneziaWG for Merlin | ASUS (Asuswrt-Merlin) | Аддон AWG 2.0 с веб-интерфейсом, GeoIP/GeoSite маршрутизация |
| Проект | Платформа | Описание |
|---|---|---|
| amneziawg-manager | macOS | Нативный GUI, управляет сервером по SSH через штатный manage - без веб-панели и демонов |
| awgram | Telegram | Бот на Rust: добавление/удаление клиентов, статистика, бэкап - через штатный manage |
| amneziawg-installer-tg-bot | Telegram | Бот на Python, работает на самом сервере: клиенты кнопками, гостевой доступ со сроком, статистика, бэкап - через штатный manage |
📖 Гайды и туториалы
📰 Статьи и обзоры
📋 Каталоги и подборки
💬 Форумы и сообщества
LICENSE)Проект пригодился - поставьте ⭐. Так его проще найти другим.
Shell
100.0%
One-command AmneziaWG 2.0 / 3.x installer for a self-hosted VPN server on Ubuntu and Debian: DPI bypass, traffic obfuscation, split tunneling, auto-hardening, client management. Includes a VPN cascade guide.
1,241
stars
434
commits
Shell
primary language
Sep 10, 2026
updated
RU Русский | EN English
VPN за одну команду - работает там, где WireGuard блокируют. Любой VPS за $3, без знания Linux.
One-command, self-hosted AmneziaWG 2.0 / 3.0 VPN for Ubuntu 24.04 / 25.10 / 26.04 and Debian 12 / 13. Kernel-native DKMS, no Docker, no web panel, runs on any cheap VPS.
В ядре, без Docker и панелей - нет накладных расходов | сервер только под VPN, защита из коробки | поставил и забыл | QR-код или vpn:// в один тап
wget -O install_amneziawg.sh https://raw.githubusercontent.com/bivlked/amneziawg-installer/v5.27.1/install_amneziawg.sh
chmod +x install_amneziawg.sh
sudo bash ./install_amneziawg.sh
Что делает: ставит AmneziaWG (модуль ядра через DKMS, какую линию протокола вы получите - в разделе AmneziaWG 3.x), настраивает firewall и форвардинг, создаёт первого клиента, печатает QR-код и
vpn://ссылку для импорта в Amnezia Client. Добавить друга или устройство потом - одна командаadd. 3 команды. 2 перезагрузки по ходу. Около 20 минут до готового VPN. Для чистого Ubuntu/Debian VPS, не роутер и не shared-хостинг. Подробнее →
📘 Полный гайд по развёртыванию: Установка сервера AmneziaWG на VPS - выбор VPS, ARM, troubleshooting, удаление. English version.
🔐 Целостность: скрипт качается по HTTPS с
raw.githubusercontent.com(тег закреплён), вспомогательные скрипты (awg_common,manage) проверяются по закреплённым SHA256-хешам. Отдельные detached-подписи релизов пока не активны (запланированы) - статус и модель угроз в SECURITY.md.
Скрипт получает root - вот краткий список того, что он делает с системой:
unattended-upgrades (значит, обновления безопасности перестают ставиться автоматически) и cloud-init, если он не управляет сетью (полный список в ADVANCED.md)./etc/sysctl.d/); IPv6 на хосте по умолчанию выключается (оставить: --allow-ipv6); swap подгоняется под размер RAM./root/awg/ и /etc/amnezia/amneziawg/ с правами 600/700; сервис awg-quick@awg0; крон автоудаления истёкших клиентов.--uninstall убирает своё - модуль, конфиги, sysctl-файлы, кроны, UFW-правило VPN-порта и UFW-правило маршрутизации awg0. UFW отключает и Fail2Ban удаляет только если сам их включал/ставил; если UFW был активен до установки, добавленное правило SSH rate-limit остаётся. Не возвращает: swap и удалённые пакеты.Пошаговые детали - в ADVANCED.md, модель угроз - в SECURITY.md.
sudo bash ./install_amneziawg.sh --yes --route-all
Все параметры принимаются автоматически. Подробнее: ADVANCED.md#cli-params-adv
| Ваша ситуация | Что добавить |
|---|---|
| Обычный дешёвый VPS, просто нужен VPN | Ничего - команда выше уже всё делает |
| Мобильный интернет, DPI режет (ТСПУ, Иран, школа или корпоратив) | При установке добавьте --mobile - пресет обфускации + порт 443/udp разом (проверенные операторы) |
| ARM: Raspberry Pi, Oracle Ampere, Hetzner CAX | Та же команда - готовые ARM-модули ядра выберутся автоматически (детали) |
| Доступ другу или гостю на время | После установки: manage_amneziawg.sh add guest --expires=7d |
Зачем это нужно • AmneziaWG 3.x • AWG vs WG • CLI vs панели • Похожие инструменты • Быстрый старт • Что умеет • Операторы • Требования • Хостинг • Установка • После установки • Управление • Дополнительно • FAQ • Устранение неполадок • Экосистема • Лицензия
AmneziaWG - форк WireGuard с обфускацией трафика. Обфускация делает трафик трудноотличимым от случайного шума для систем DPI, поэтому там, где обычный WireGuard детектируют и блокируют, AmneziaWG обычно продолжает работать.
Этот набор скриптов превращает чистый VPS в готовый VPN-сервер. Не нужны знания Linux - скрипт сам настроит firewall, оптимизирует систему, создаст конфиги и QR-коды для клиентов.
Сервер настраивается под одну задачу - VPN: лишние пакеты убираются, ядро, сеть и swap тюнингуются под железо, включаются firewall и базовая защита. AmneziaWG работает в ядре, поэтому накладных расходов почти нет - быстро и экономно. Поставил один раз для дома или семьи и забыл: добавить друга или новое устройство через месяц - минута, конфиг и QR готовятся одной командой.
Работает на Ubuntu 24.04/25.10/26.04 и Debian 12/13. Хватит любого дешёвого VPS с 1 ГБ RAM.
В конце июля 2026 вышла AmneziaWG 3.0, и PPA переключили на неё; 12 августа внутри той же линии вышла 3.1, и PPA раздаёт уже её. На x86 с ядром 6.7 или новее установщик уже ставит модуль третьей версии - включать отдельно ничего не нужно, а конфиги, которые у вас уже розданы, продолжают работать без единой правки. Какой именно выпуск приедет вам, зависит от того, что лежит в PPA на день установки, поэтому ниже команда, которая отвечает точно.
Посмотреть, что стоит именно у вас:
awg --version # версия утилит
cat /sys/module/amneziawg/version # версия загруженного модуля
Если модуль не загружен, вторая команда ничего не покажет - тогда версию файла на диске выдаст modinfo amneziawg | grep ^version. Подробнее о том, почему это разные вопросы, - в ADVANCED.md.
На ядрах старее 6.7 (Debian 12 с 6.1) и на ARM, где есть готовый пакет под ваше ядро, ставится проверенная 2.0: там третья версия обкатана меньше всего, и порог мы держим сознательно.
Сами возможности 3.0 - шифрование заголовков, добавочный паддинг, настройка таймингов - в генерируемые конфиги ещё не попадают. Для них нужны клиентские приложения, а они вышли не на всех платформах. Подробный разбор (что меняется на проводе, какие параметры добавились, что обязано совпадать у сервера и клиента) - в ADVANCED.md.
| WireGuard | AmneziaWG 2.0 | |
|---|---|---|
| Обнаружение DPI | Детектируется по фиксированным размерам пакетов и magic bytes | Трудно зафингерпринтить - случайные заголовки, padding, имитация протоколов |
| Блокируется в | Китай, Россия, Иран, ОАЭ, Туркменистан | Не известно о блокировках (по состоянию на апрель 2026) |
| Настройка сервера | Вручную: ключи, iptables, sysctl, systemd | Одна команда, 20 минут, полностью автоматически |
| Безопасность | Сами: UFW, Fail2Ban, sysctl | Автоматически: firewall + защита от брутфорса + тюнинг ядра |
| Управление клиентами | Ручное редактирование конфигов, рестарт | add/remove/list/stats с hot-reload |
| Временный доступ | Нет | --expires=7d с автоматическим удалением |
| Требования к серверу | - | Те же - любой VPS за $3-5/мес, 1 ГБ RAM |
| Потеря скорости | Базовая | Минимальная (<2% в типичных тестах) |
Если WireGuard у вас работает и не блокируется - используйте его. Если блокируется или режется - AmneziaWG 2.0 является прямой заменой.
Задача - поднять 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 | SSH + bash, опц. нативная веб-панель и обфускация-прокси (Rust) | Нужна веб-панель без Docker или маскировка трафика отдельным сервисом |
| wg-easy | Docker + веб-интерфейс | Домашние боксы, на которых уже крутится Docker; нужна панель для клиентов |
| spcfox/amnezia-wg-easy | Docker-форк wg-easy | Те, кто уже на wg-easy и хочет именно AmneziaWG вместо обычного WireGuard |
| Amnezia VPN | Десктоп/моб GUI, разворачивает сервер в Docker по SSH | Установка кликами без терминала; нужен графический клиент |
Быстрый выбор:
vpn://), клиенты по сроку (--expires), пресеты под мобильных операторов - этот установщик.Когда этот проект - не лучший выбор:
manage add/remove/list) по SSH.Официальное приложение Amnezia - официальный графический клиент: ставишь приложение, указываешь сервер, и оно разворачивает серверную часть в Docker по SSH. Удобно, когда нужен только GUI. Этот установщик создан под другую задачу - выжать из одного выделенного VPS максимум как из VPN-сервера. Отсюда и отличия:
--preset=mobile), прямой доступ к параметрам AmneziaWG 2.0 и полевые данные по операторам и DPI - можно подстроить под конкретную сеть или оператора.--expires), импорт по QR или vpn://, готовые сборки под ARM.Протокол и стойкость к DPI при этом одинаковые - под капотом тот же AmneziaWG 2.0. Код открыт под MIT, это читаемый bash, его можно просмотреть перед запуском, на нём 1100+ автотестов. Ставится тот же upstream AmneziaWG - это автоматизация и тюнинг сервера, а не форк протокола.
Подробное сравнение: amneziawg-installer и официальное приложение Amnezia.
--preset=mobile для Tele2, Yota, Мегафон и других операторов с DPI-блокировками. Тонкая настройка через --jc, --jmin, --jmax (подробнее)--allow-ipv6-tunnel добавляет IPv6 внутри туннеля рядом с IPv4 (по умолчанию выключено, подробнее)awg - без Python и внешних зависимостейvpn:// URI для импорта в Amnezia Client одним тапом (.vpnuri файлы)stats, stats --json)--expires=1h, 7d, 4w и др.)--diagnostic) и полная деинсталляция (--uninstall)/root/awg/--isolation=on|off). Поддержка --endpoint для серверов за NATУстановщик настраивает обфускацию AmneziaWG 2.0 под мобильные сети с DPI: --mobile включает мобильный пресет и порт 443/udp одним флагом. Если VPN нестабилен через мобильный интернет - переустановите с --mobile. Ниже - рабочие конфигурации по отчётам пользователей из issues и discussions (не гарантия: блокировки и параметры операторов меняются со временем):
--preset=mobile--preset=mobile); Красноярск (--preset=mobile; в майскую волну 2026 заработал I1=<r 48>)--preset=mobile--preset=mobile + удалить параметр I1Вашего оператора нет в списке? Попробуйте --preset=mobile. Не помогло - заведите тред в Discussions или Issues, добавлю в список.
Полная таблица операторских параметров (Jc, Jmin, Jmax, I1) - в ADVANCED.md → FAQ «через мобильную сеть». Точечная настройка через
--jc/--jmin/--jmax- в ADVANCED.md → Presets.
root (через sudo)Совместимость ОС:
| ОС | Статус | Примечание |
|---|---|---|
| Ubuntu 24.04 LTS | ✅ Полная поддержка | Рекомендуется |
| Ubuntu 25.10 | ✅ Поддерживается | PPA noble fallback применяется автоматически с v5.13.0 |
| Ubuntu 26.04 | ✅ Поддерживается | PPA noble fallback применяется автоматически с v5.13.0 |
| Debian 12 (bookworm) | ✅ Поддержка | Протестировано. PPA через маппинг codename на focal |
| Debian 13 (trixie) | ✅ Поддержка | Протестировано. PPA через маппинг codename на noble, DEB822 |
Поддержка архитектур (v5.10.0+):
| Архитектура | Статус | Платформы |
|---|---|---|
| x86_64 (amd64) | ✅ Полная поддержка | Все облачные VPS |
| ARM64 (aarch64) | ✅ Поддержка | Raspberry Pi 3/4/5, AWS Graviton, Oracle Ampere, Hetzner |
| ARMv7 (armhf) | ✅ Поддержка | Raspberry Pi 3/4 (32-bit) |
На ARM установщик загружает готовые модули ядра при наличии, и автоматически переключается на DKMS-сборку если нужно.
⚠️ Нестандартный порт SSH: Установщик обычно определяет SSH-порт автоматически. Если SSH на нестандартном порту или автодетект недоступен, запускайте с
--ssh-port=ВАШ_ПОРТ(несколько портов - списком через запятую). Как дополнительная консервативная страховка можно заранее выполнитьsudo ufw allow ВАШ_ПОРТ/tcpдо запуска установки.
Клиенты:
vpn:// URI.conf файлыДля стабильной работы VPN-сервера с высокой пропускной способностью важен надежный хостинг с хорошим каналом.
На что смотреть при выборе VPS под VPN:
Опробовал и рекомендую FreakHosting. В частности, их линейка BUDGET VPS предлагает отличное соотношение цены и качества.
Их IP-адреса не идентифицируются, как адреса датацентров и не попадают под блокировки по признаку «IP принадлежит хостинг-провайдеру» (в отличие, например, от Azure и некоторых крупных облаков).
Этой конфигурации более чем достаточно для комфортной работы AmneziaWG с большим количеством подключений и высоким трафиком.
Установка AmneziaWG на Ubuntu или Debian сводится к трём командам: скачать скрипт, запустить с sudo и ответить на несколько вопросов. Этот метод гарантирует корректную работу интерактивных запросов и цветного вывода в вашем терминале.
Подключитесь к чистому серверу (Ubuntu 24.04 / Ubuntu 25.10 / Ubuntu 26.04 / Debian 12 / Debian 13) по SSH.
Совет: После создания сервера подождите 5-10 минут, чтобы завершились все фоновые процессы инициализации системы, прежде чем запускать установку.
Скачайте скрипт:
wget -O install_amneziawg.sh https://raw.githubusercontent.com/bivlked/amneziawg-installer/v5.27.1/install_amneziawg.sh
# или: curl -fLo install_amneziawg.sh https://raw.githubusercontent.com/bivlked/amneziawg-installer/v5.27.1/install_amneziawg.sh
На минимальном Debian curl может отсутствовать (wget обычно есть) - используйте
wget. Сам curl установщик доставит на шаге 1.
Сделайте его исполняемым:
chmod +x install_amneziawg.sh
Запустите с sudo:
sudo bash ./install_amneziawg.sh
(Вы также можете передать параметры командной строки, см. sudo bash ./install_amneziawg.sh --help или ADVANCED.md#install-cli-adv)
English version: Для вывода на английском используйте
install_amneziawg_en.sh:wget -O install_amneziawg_en.sh https://raw.githubusercontent.com/bivlked/amneziawg-installer/v5.27.1/install_amneziawg_en.sh sudo bash ./install_amneziawg_en.shАнглийская версия функционально идентична; только сообщения и логи на английском. После перезагрузки продолжайте тем же файлом:
sudo bash ./install_amneziawg_en.sh
Начальная настройка: Скрипт интерактивно запросит:
UDP порт: Порт для подключения клиентов (1-65535). По умолчанию: 39743.
Подсеть туннеля: Внутренняя сеть для VPN. По умолчанию: 10.9.9.1/24.
Отключение IPv6: Рекомендуется отключить (Y) для избежания утечек трафика.
Режим маршрутизации: Определяет, какой трафик пойдет через VPN. По умолчанию 2 (Список Amnezia+DNS) - рекомендуется для лучшей совместимости и обхода блокировок.
Изоляция клиентов: Блокировать ли трафик между клиентами внутри VPN. По умолчанию включена (Y) - клиенты не видят друг друга; неинтерактивно: --isolation=on|off.
Имя сервера: Под этим именем сервер появится в приложении Amnezia при импорте vpn://. По умолчанию AWG Server; неинтерактивно: --server-name=ИМЯ.
Параметры AWG 2.0 (Jc, S1-S4, H1-H4, I1) генерируются автоматически - никаких действий не требуется.
Перезагрузки: Потребуется ДВЕ перезагрузки. Скрипт запросит подтверждение [y/N]. Введите y и нажмите Enter.
Продолжение: После каждой перезагрузки снова запустите скрипт той же командой:
sudo bash ./install_amneziawg.sh
Скрипт автоматически продолжит с нужного шага без повторных запросов.
Завершение: После второй перезагрузки и третьего запуска скрипта вы увидите сообщение:
Установка и настройка AmneziaWG 2.0 УСПЕШНО ЗАВЕРШЕНА!
Где найти файлы клиентов:
| Файл | Путь | Назначение |
|---|---|---|
.conf | /root/awg/имя.conf | Конфигурация для импорта в клиент |
.png | /root/awg/имя.png | QR-код для мобильных устройств |
.vpnuri | /root/awg/имя.vpnuri | vpn:// URI для Amnezia Client |
Скачать конфиг на компьютер:
scp root@IP_СЕРВЕРА:/root/awg/my_phone.conf .
cat /root/awg/my_phone.vpnuriscp root@IP_СЕРВЕРА:/root/awg/my_phone.png ..conf файл на компьютер через scp или sftp.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/*.logmanage_amneziawg.sh)Скрипт manage_amneziawg.sh для управления пользователями скачивается автоматически.
Использование:
sudo bash /root/awg/manage_amneziawg.sh <команда> [аргументы]
Полный список - ... help или ADVANCED.md#manage-commands-adv.
Повседневные команды:
| Команда | Аргументы | Описание | Перезапуск? |
|---|---|---|---|
add | <имя> [имя2 ...] [--expires=ВРЕМЯ] | Добавить клиента(ов) (опц. с истечением) | Нет (авто) |
remove | <имя> [имя2 ...] | Удалить клиента(ов) | Нет (авто) |
list | [-v] [--json] | Список клиентов (-v детали, --json машиночитаемый с client_ipv6) | Нет |
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-интерфейс, а готовый Telegram-бот на этом интерфейсе уже есть - awgram.
# Установка (русский)
wget -O install_amneziawg.sh https://raw.githubusercontent.com/bivlked/amneziawg-installer/v5.27.1/install_amneziawg.sh
sudo bash ./install_amneziawg.sh # Запуск (+ 2 перезагрузки)
# Установка (English)
wget -O install_amneziawg_en.sh https://raw.githubusercontent.com/bivlked/amneziawg-installer/v5.27.1/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 # Перезапуск
Более подробную информацию о деталях конфигурации, настройках безопасности, параметрах AWG 2.0, дополнительных командах управления, технических деталях и ответах на другие вопросы вы можете найти в файле ADVANCED.md.
Историю изменений смотрите в CHANGELOG.md.
Планы развития и приоритеты - в docs/ROADMAP.md.
Каскад из двух серверов с раздельным выходом российского и зарубежного трафика (split-tunnel) - в CASCADE.md.
Выборочная маршрутизация российского сегмента через Cloudflare WARP по BGP-фиду, если сервер один - в WARP-RU.md.
В разделе: установка и обновление, подключение клиентов, мобильные сети, выбор хостинга и перенос, безопасность и параметры. Разверните нужный вопрос ниже.
dkms status.
sudo bash ./install_amneziawg.sh --uninstall.
sudo bash /root/awg/manage_amneziawg.sh check. 2. Проверьте фаервол: sudo ufw status verbose. 3. Проверьте конфиг клиента. 4. Проверьте логи: sudo journalctl -u awg-quick@awg0 -n 50. 5. Убедитесь, что клиент поддерживает AWG 2.0: Amnezia VPN >= 4.8.12.7 или AmneziaWG >= 2.0.0.
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 → Изоляция клиентов.
amneziawg-windows-client (< 2.0.0). Обновите до версии 2.0.0+, которая поддерживает AWG 2.0. Альтернатива - Amnezia VPN >= 4.8.12.7.
# Русская версия: wget -O /root/awg/manage_amneziawg.sh https://raw.githubusercontent.com/bivlked/amneziawg-installer/v5.27.1/manage_amneziawg.sh wget -O /root/awg/awg_common.sh https://raw.githubusercontent.com/bivlked/amneziawg-installer/v5.27.1/awg_common.sh chmod 700 /root/awg/manage_amneziawg.sh /root/awg/awg_common.shПереустановка сервера не требуется.Английская версия:
wget -O /root/awg/manage_amneziawg.sh https://raw.githubusercontent.com/bivlked/amneziawg-installer/v5.27.1/manage_amneziawg_en.sh wget -O /root/awg/awg_common.sh https://raw.githubusercontent.com/bivlked/amneziawg-installer/v5.27.1/awg_common_en.sh chmod 700 /root/awg/manage_amneziawg.sh /root/awg/awg_common.sh
/24 по умолчанию позволяет до 253 клиентов (.2 - .254), что достаточно для большинства сценариев. Нужно больше - укажите более широкую маску через --subnet (например, /16).
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.
sudo bash /root/awg/manage_amneziawg.sh add guest --expires=7d. Форматы: 1h, 12h, 1d, 7d, 30d, 4w. Cron проверяет каждые 5 минут и автоматически удаляет истёкших клиентов.
.vpnuri содержат vpn:// URI для импорта конфигурации в Amnezia Client одним тапом. Скопируйте содержимое файла → откройте Amnezia Client → «Добавить VPN» → «Вставить из буфера».
--psk для команды add: 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.
0.0.0.0/5 - на iOS этот блок ломал весь список маршрутов, и туннель вставал примерно через 10 секунд. На уже установленном сервере проще всего поставить в конфиге iOS-клиента AllowedIPs = 0.0.0.0/0 (обычная переустановка с --force сохранённый список не меняет). Точечная правка с сохранением split-tunnel - в ADVANCED.md.
--port=N (любой порт 1-65535). На мобильных сетях, где оператор режет незнакомые порты, часто выручает 443/udp - его ставит флаг --mobile вместе с пресетом обфускации.
vpn:// URI (.vpnuri файлов). Если Perl отсутствует, .conf файлы создаются как обычно - ими можно пользоваться через импорт файла или QR-код. На Ubuntu и Debian Perl установлен по умолчанию.
--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-коды остаются валидными.
--preset, --jc, --jmin или --jmax, весь набор Jc/S/H/I1 сгенерируется заново - и вот тогда старые конфиги перестанут подключаться, их придётся перевыпустить через regen и раздать снова. При обычном обновлении эти флаги не указывайте.
--force не нужен вовсе: чтобы получить новые команды управления, достаточно обновить два скрипта на сервере (вопрос выше). Заново прогонять установщик стоит, только когда менялся он сам.
Больше ответов и решений см. в ADVANCED.md.
/root/awg/install_amneziawg.log, /root/awg/manage_amneziawg.logsudo systemctl status awg-quick@awg0sudo awg showsudo ufw status verbosesudo bash ./install_amneziawg.sh --diagnostic
Подробное описание содержимого отчета см. в ADVANCED.md.Какой клиент выбрать? Установите Amnezia VPN (>= 4.8.12.7) - работает на всех платформах, поддерживает импорт
vpn://URI. Для легковесного подключения (только.conf) используйте AmneziaWG для вашей платформы.
| Клиент | Платформа | AWG 2.0 | Тип | Примечание |
|---|---|---|---|---|
| Amnezia VPN | Windows, macOS, Linux, Android, iOS | ✅ >= 4.8.12.7 | Официальный | Рекомендуется. Полнофункциональный, vpn:// URI |
| AmneziaWG | Windows | ✅ >= 2.0.0 | Официальный | Легковесный tunnel manager, импорт .conf |
| AmneziaWG | Android | ✅ >= 2.0.0 | Официальный | Легковесный tunnel manager, импорт .conf |
| AmneziaWG | iOS | ✅ | Официальный | Легковесный tunnel manager, импорт .conf |
| WG Tunnel | Android | ⚠️ частично | Сторонний, FOSS | Auto-tunneling, split tunnel, F-Droid |
| VeilBox | Windows, macOS | ✅ | Сторонний, FOSS | Также поддерживает VLESS |
| Проект | Описание |
|---|---|
| Junker | Веб-генератор подписей AmneziaWG от @spatiumstas - для ручной настройки без установочного скрипта |
| Any-Tech-ARCHITECT | Веб-генератор параметров обфускации от @Vadim-Khristenko - подбор и проверка значений с матрицей совместимости клиентов (GitHub) |
| Проект | Платформа | Описание |
|---|---|---|
| AWG Manager | Keenetic (Entware) | Веб-интерфейс для управления AWG-туннелями на роутерах Keenetic |
| AmneziaWG for Merlin | ASUS (Asuswrt-Merlin) | Аддон AWG 2.0 с веб-интерфейсом, GeoIP/GeoSite маршрутизация |
| Проект | Платформа | Описание |
|---|---|---|
| amneziawg-manager | macOS | Нативный GUI, управляет сервером по SSH через штатный manage - без веб-панели и демонов |
| awgram | Telegram | Бот на Rust: добавление/удаление клиентов, статистика, бэкап - через штатный manage |
| amneziawg-installer-tg-bot | Telegram | Бот на Python, работает на самом сервере: клиенты кнопками, гостевой доступ со сроком, статистика, бэкап - через штатный manage |
📖 Гайды и туториалы
📰 Статьи и обзоры
📋 Каталоги и подборки
💬 Форумы и сообщества
LICENSE)Проект пригодился - поставьте ⭐. Так его проще найти другим.
Shell
100.0%