Files
local_machine/docs/connectivity/vpn/WIREGUARD.md
2026-03-14 20:03:57 +03:00

200 lines
5.6 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# 🚀 WireGuard VPN - Полное руководство
## 📋 Обзор
WireGuard VPN позволяет подключаться к серверу 209.38.32.21 и использовать его как прокси для обхода интернет-ограничений.
**Преимущества:**
- ✅ Современный протокол (state-of-the-art криптография)
- ✅ Очень быстрый (85-95% от пропускной способности)
- ✅ Простая настройка (минимум конфигурации)
- ✅ Полное туннелирование из коробки
- ✅ Низкое потребление ресурсов
---
## 🔧 Развертывание сервера
### Автоматическое развертывание
```bash
bash scripts/deployment/deploy-vpn-wireguard.sh
```
Скрипт автоматически:
1. ✅ Проверит подключение к серверу
2. ✅ Создаст необходимые директории
3. ✅ Настроит Docker контейнер
4. ✅ Обновит firewall правила
5. ✅ Запустит VPN сервер
6. ✅ Создаст клиентскую конфигурацию
### Ручное развертывание
1. Подключитесь к серверу: `ssh hunab-prod`
2. Создайте директории:
```bash
sudo mkdir -p /opt/app/vpn/wireguard/config
sudo chown -R hunab:hunab /opt/app/vpn
```
3. Создайте docker-compose файл
4. Запустите контейнер: `docker compose -f docker-compose.vpn.yml up -d`
5. Откройте порт: `sudo ufw allow 51820/udp comment 'WireGuard VPN'`
---
## 📱 Настройка клиентов
### Android / iOS
1. Установите приложение **WireGuard** из Google Play / App Store
2. Нажмите **"+"** → **"Создать из файла или архива"**
3. Выберите файл `wireguard-peer1.conf` (созданный скриптом)
4. Нажмите **"Подключиться"**
### Windows / macOS / Linux
1. Установите WireGuard клиент:
- **Windows:** https://www.wireguard.com/install/
- **macOS:** `brew install wireguard-tools`
- **Linux:** `sudo apt install wireguard`
2. Импортируйте конфигурацию:
```bash
# Linux/macOS
sudo cp wireguard-peer1.conf /etc/wireguard/wg0.conf
sudo wg-quick up wg0
```
---
## 🔍 Проверка подключения
### На сервере
```bash
# Проверка статуса контейнера
docker ps | grep hunab-vpn-wireguard
# Просмотр логов
docker logs hunab-vpn-wireguard
# Проверка подключенных клиентов
docker exec hunab-vpn-wireguard wg show
```
### На клиенте
```bash
# Linux/macOS
sudo wg show
# Проверка IP адреса
curl ifconfig.me
# Должен показать IP сервера 209.38.32.21
```
---
## 🛠️ Управление
### Добавление нового клиента
```bash
ssh hunab-prod
cd /opt/app
docker compose -f docker-compose.vpn.yml down
# Измените PEERS=1 на PEERS=2 в docker-compose.vpn.yml
docker compose -f docker-compose.vpn.yml up -d
# Новый конфиг будет в /opt/app/vpn/wireguard/config/peer2/peer2.conf
```
### Остановка VPN
```bash
ssh hunab-prod "cd /opt/app && docker compose -f docker-compose.vpn.yml down"
```
### Перезапуск VPN
```bash
ssh hunab-prod "cd /opt/app && docker compose -f docker-compose.vpn.yml restart wireguard"
```
### Просмотр статистики
```bash
ssh hunab-prod "docker exec hunab-vpn-wireguard wg show"
```
---
## 🔒 Безопасность
### Рекомендации
1. ✅ **Храните конфигурационные файлы в безопасности**
2. ✅ **Регулярно обновляйте ключи** (каждые 3-6 месяцев)
3. ✅ **Мониторинг трафика**
4. ✅ **Обновляйте контейнер** регулярно
---
## 🐛 Решение проблем
### VPN не подключается
1. Проверьте статус контейнера: `docker ps | grep wireguard`
2. Проверьте логи: `docker logs hunab-vpn-wireguard`
3. Проверьте firewall: `sudo ufw status | grep 51820`
4. Проверьте порт: `sudo netstat -tuln | grep 51820`
### Медленное подключение
1. Проверьте задержку: `ping 209.38.32.21`
2. Проверьте нагрузку сервера: `docker stats hunab-vpn-wireguard`
### Клиент не получает IP
1. Проверьте конфигурацию: `sudo wg show`
2. Перезапустите VPN на сервере
---
## 📊 Мониторинг
### Просмотр активных подключений
```bash
ssh hunab-prod "docker exec hunab-vpn-wireguard wg show"
```
### Просмотр трафика
```bash
ssh hunab-prod "docker exec hunab-vpn-wireguard wg show wg0 transfer"
```
---
## 📝 Примечания
- **Порт:** UDP 51820 (можно изменить)
- **Сеть VPN:** 10.13.13.0/24 (можно изменить)
- **Контейнер:** `hunab-vpn-wireguard`
- **Конфигурация:** `/opt/app/vpn/wireguard/config/`
---
## 🔗 Полезные ссылки
- [WireGuard Official](https://www.wireguard.com/)
- [WireGuard Docker Image](https://github.com/linuxserver/docker-wireguard)
- [WireGuard Client Apps](https://www.wireguard.com/install/)
---
**Версия:** 2.0
**Дата:** 2025-01-XX