200 lines
5.6 KiB
Markdown
200 lines
5.6 KiB
Markdown
# 🚀 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
|
||
|