2.8 KiB
📦 wg-easy (WireGuard VPN) — установка через Docker
Простой способ развернуть VPN сервер WireGuard с веб-интерфейсом.
🚀 Быстрый старт
- Установить Docker apt update && apt upgrade -y apt install -y docker.io systemctl enable docker systemctl start docker
Проверка:
docker --version
🌐 2. Открыть порты (если используется firewall)
ufw allow 51820/udp
ufw allow 51821/tcp
ufw enable
🔐 3. Запуск wg-easy
docker run -d
--name=wg-easy
-e WG_HOST=193.124.57.125
-e PASSWORD_HASH='$2a$12$TXjvDufTG5P4ef6k7M0F..3z7NekUPoHnaNyHnY9XHrSIlxG5nPyO'
-e WG_DEFAULT_DNS=1.1.1.1,1.0.0.1
-v /etc/wireguard:/etc/wireguard
-p 51820:51820/udp
-p 51821:51821/tcp
--cap-add=NET_ADMIN
--cap-add=SYS_MODULE
--sysctl="net.ipv4.conf.all.src_valid_mark=1"
--sysctl="net.ipv4.ip_forward=1"
--restart unless-stopped
ghcr.io/wg-easy/wg-easy
🔍 4. Проверка работы
docker logs -f wg-easy
Ожидаемый результат:
Server Listening on http://0.0.0.0:51821 🌍 5. Доступ к панели
Открыть в браузере:
http://193.124.57.125:51821 Ввести пароль (тот, из которого был создан PASSWORD_HASH) Создать клиента Скачать конфиг или QR-код ⚙️ 6. Решение проблем ❌ Нет интернета через VPN
Включить форвардинг:
sysctl -w net.ipv4.ip_forward=1
Добавить NAT:
iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE ❌ Контейнер не запускается
Проверить логи:
docker logs wg-easy ❌ Ошибка с DNS
Правильный формат:
-e WG_DEFAULT_DNS=1.1.1.1,1.0.0.1
❗ Без пробелов после запятой
🔐 Генерация пароля docker run --rm ghcr.io/wg-easy/wg-easy wgpw yourpassword
Использовать полученный PASSWORD_HASH
📁 Полезные команды
Остановить:
docker stop wg-easy
Удалить:
docker rm wg-easy
Обновить:
docker pull ghcr.io/wg-easy/wg-easy docker rm -f wg-easy
затем снова выполнить docker run
💡 Рекомендации Используй DNS: 1.1.1.1,1.0.0.1 (Cloudflare) или свой (AdGuard / Pi-hole) Закрывай порт 51821 через reverse proxy (например Nginx Proxy Manager) Делай бэкап /etc/wireguard 📌 Примечание Требуется белый IP Работает на Ubuntu / Debian / VPS Интерфейс доступен через браузер
Если хочешь — могу сделать тебе ещё:
версию с docker-compose настройку через домен (HTTPS) интеграцию с Cloudflare Tunnel