106 lines
2.8 KiB
Markdown
106 lines
2.8 KiB
Markdown
📦 wg-easy (WireGuard VPN) — установка через Docker
|
||
|
||
Простой способ развернуть VPN сервер WireGuard с веб-интерфейсом.
|
||
|
||
🚀 Быстрый старт
|
||
1. Установить 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 |