НейроАгент

Как изменить пароль и порт AmneziaWG VPN

Полное руководство по изменению пароля и порта веб-интерфейса AmneziaWG VPN. Узнайте как безопасно изменить настройки доступа через Docker и переменные окружения.

Вопрос

Как изменить пароль и порт для веб-интерфейса AmneziaWG VPN?

Я настроил AmneziaWG VPN на своем VPS сервере и некоторое время успешно им пользовался. Однако сегодня столкнулся с двумя проблемами:

  1. Пароль для подключения к веб-интерфейсу VPN не подходит (тот, который указывался при первоначальной настройке через SSH)
  2. При попытке подключения по адресу http://IP_сервера:8880 появляется сообщение об ошибке доступа, хотя рабочий порт на самом деле :1111

Подскажите, пожалуйста, как можно изменить:

  • Пароль для доступа к веб-интерфейсу AmneziaWG
  • Порт для подключения к графическому интерфейсу VPN
НейроАгент

Для изменения пароля и порта веб-интерфейса AmneziaWG VPN вам необходимо использовать переменные окружения при запуске через Docker или изменить конфигурационные файлы. Пароль устанавливается через bcrypt-хеш или переменную PASSWORD, а порт настраивается через переменную PORT.

Содержание

Изменение пароля веб-интерфейса

Для изменения пароля доступа к веб-интерфейсу AmneziaWG существует несколько методов:

Метод 1: Использование bcrypt-хеша

Самый безопасный способ - использовать bcrypt-хеш пароля:

  1. Сгенерируйте bcrypt-хеш вашего нового пароля:
bash
echo "ваш_новый_пароль" | htpasswd -nBC 10 | tr -d ':\n'
  1. Запустите контейнер с новым хешом:
bash
docker run -d \
  -e PASSWORD_HASH="$(echo "ваш_новый_пароль" | htpasswd -nBC 10 | tr -d ':\n')" \
  -e WG_HOST=vpn.yourdomain.com \
  -p 51821:51821/tcp \
  -p 51820:51820/udp \
  --name amneziawg \
  -v ~/.amnezia-wg-easy:/etc/amneziawg \
  --cap-add=NET_ADMIN \
  --cap-add=SYS_MODULE \
  --sysctl="net.ipv4.conf.all.src_valid_mark=1 net.ipv4.ip_forward=1" \
  w0rng/amnezia-wg-easy

Метод 2: Использование переменной PASSWORD

Проще, но менее безопасный способ:

bash
docker run -d \
  -e PASSWORD="ваш_новый_пароль" \
  -e WG_HOST=vpn.yourdomain.com \
  -p 51821:51821/tcp \
  -p 51820:51820/udp \
  --name amneziawg \
  -v ~/.amnezia-wg-easy:/etc/amneziawg \
  --cap-add=NET_ADMIN \
  --cap-add=SYS_MODULE \
  --sysctl="net.ipv4.conf.all.src_valid_mark=1 net.ipv4.ip_forward=1" \
  w0rng/amnezia-wg-easy

Важно: При изменении пароля через переменную PASSWORD он будет храниться в открытом виде в настройках Docker, что может представлять угрозу безопасности.


Изменение порта веб-интерфейса

Для изменения порта веб-интерфейса используйте переменную окружения PORT:

Метод 1: При первоначальной установке

bash
docker run -d \
  -e PASSWORD="ваш_пароль" \
  -e PORT=1111 \
  -e WG_HOST=vpn.yourdomain.com \
  -p 1111:1111/tcp \
  -p 51820:51820/udp \
  --name amneziawg \
  -v ~/.amnezia-wg-easy:/etc/amneziawg \
  --cap-add=NET_ADMIN \
  --cap-add=SYS_MODULE \
  --sysctl="net.ipv4.conf.all.src_valid_mark=1 net.ipv4.ip_forward=1" \
  w0rng/amnezia-wg-easy

Метод 2: Перенастройка существующего контейнера

  1. Остановите текущий контейнер:
bash
docker stop amneziawg
docker rm amneziawg
  1. Запустите новый контейнер с нужным портом:
bash
docker run -d \
  -e PASSWORD="ваш_пароль" \
  -e PORT=1111 \
  -e WG_HOST=vpn.yourdomain.com \
  -p 1111:1111/tcp \
  -p 51820:51820/udp \
  --name amneziawg \
  -v ~/.amnezia-wg-easy:/etc/amneziawg \
  --cap-add=NET_ADMIN \
  --cap-add=SYS_MODULE \
  --sysctl="net.ipv4.conf.all.src_valid_mark=1 net.ipv4.ip_forward=1" \
  w0rng/amnezia-wg-easy

Доступные параметры портов

  • Веб-интерфейс: TCP порт (по умолчанию 51821)
  • AmneziaWG: UDP порт (по умолчанию 51820, может быть изменен в диапазоне 30000-50000)

Полная перенастройка через Docker

Если вам необходимо изменить оба параметра (пароль и порт), выполните следующие шаги:

Шаг 1: Остановка и удаление старого контейнера

bash
docker stop amneziawg
docker rm amneziawg

Шаг 2: Генерация bcrypt-хеша (рекомендуется)

bash
PASSWORD_HASH=$(echo "ваш_сильный_пароль" | htpasswd -nBC 10 | tr -d ':\n')
echo "Generated password hash: $PASSWORD_HASH"

Шаг 3: Запуск нового контейнера с нужными настройками

bash
docker run -d \
  -e PASSWORD_HASH="$PASSWORD_HASH" \
  -e PORT=1111 \
  -e WG_HOST=vpn.yourdomain.com \
  -p 1111:1111/tcp \
  -p 42666:42666/udp \
  --name amneziawg \
  -v ~/.amnezia-wg-easy:/etc/amneziawg \
  --cap-add=NET_ADMIN \
  --cap-add=SYS_MODULE \
  --sysctl="net.ipv4.conf.all.src_valid_mark=1 net.ipv4.ip_forward=1" \
  -v /lib/modules:/lib/modules:ro \
  w0rng/amnezia-wg-easy

Шаг 4: Проверка работы

bash
docker logs amneziawg

Проверка конфигурации

Просмотр активных портов

bash
docker port amneziawg

Просмотр переменных окружения

bash
docker inspect amneziawg | grep -A 10 "Env"

Проверка доступности веб-интерфейса

bash
curl -I http://localhost:1111

Устранение распространенных проблем

Проблема 1: “Порт 8880 не работает, хотя должен быть 1111”

Причина: Неверная привязка портов в Docker или firewall

Решение:

  1. Проверьте правильность маппинга портов:
bash
docker port amneziawg
  1. Проверьте открытые порты на сервере:
bash
sudo ufw status
  1. Откройте нужный порт:
bash
sudo ufw allow 1111/tcp

Проблема 2: “Пароль не подходит”

Причина: Использована переменная PASSWORD вместо PASSWORD_HASH или контейнер запущен с неверными настройками

Решение:

  1. Проверьте текущие настройки контейнера:
bash
docker inspect amneziawg | grep -A 5 "Env"
  1. Для изменения пароля остановите контейнер и запустите заново с новыми параметрами

Проблема 3: “Веб-интерфейс недоступен”

Причины и решения:

  • Firewall: Откройте порт 1111/tcp
  • Docker: Проверьте правильность маппинга портов
  • Сеть: Убедитесь, что сервер слушает на правильном интерфейсе

Источники

  1. GitHub - w0rng/amnezia-wg-easy - Конфигурация пароля
  2. DeepWiki - Конфигурация AmneziaWG Easy
  3. Ithy - Руководство по настройке AmneziaWG для Ubuntu 24.04
  4. EDIS Global - Установка AmneziaWG на Ubuntu 22.04
  5. Amnezia Docs - Установка и настройка протоколов

Заключение

  • Для изменения пароля веб-интерфейса используйте переменную PASSWORD_HASH с bcrypt-хешем для максимальной безопасности
  • Порт веб-интерфейса изменяется через переменную окружения PORT при запуске Docker-контейнера
  • При изменении настроек всегда перезапускайте контейнер docker stop и docker run
  • Проверяйте правильность маппинга портов и firewall-правил для доступа к веб-интерфейсу
  • Для полного контроля над конфигурацией используйте файлы конфигурации в ~/.amnezia-wg-easy

Если у вас остались вопросы по изменению настроек AmneziaWG, вы можете обратиться к официальной документации или задать вопрос в сообществе AmneziaVPN.