🎯 Для чого потрібен VPN сервер?
| 📋 Застосування | 📝 Опис |
|---|
| 🏠 Домашня мережа | З’єднання домашньої та офісної мережі |
| 🌐 Віддалений доступ | Безпечний доступ до домашніх ресурсів з будь-де |
| 🏢 Корпоративні потреби | Створення Site-to-Site VPN між філіями |
🏗️ Архітектура мережі
📊 Схема підключення:
Головний роутер (сервер) ← VPN тунель → Комп'ютер/телефон
🔧 Мережева структура:
| 🏷️ Компонент | 🔢 IP діапазон |
|---|
| Головний роутер (VPN сервер) | OpenWRT з WireGuard сервером (10.0.0.1) |
| Локальна мережа | 192.168.1.0/24 |
| VPN підмережа | 10.0.0.0/24 |
| Клієнти | 10.0.0.2-10.0.0.254 |
⚠️ Важливо! Мережі не повинні перетинатися. Якщо у вас всюди 192.168.1.x, потрібно змінити одну з них.
📦 Частина 1: Встановлення WireGuard на OpenWRT
🛠️ Крок 1: Встановлення пакетів
- 🌐 Заходимо в веб-інтерфейс роутера (192.168.1.1)
- 📋 Переходимо в System → Software → Update lists
- 📥 Встановлюємо необхідні пакети:
| 📦 Пакет | 📝 Призначення |
|---|
wireguard-tools | Основні інструменти WireGuard |
luci-proto-wireguard | Протокол для веб-інтерфейсу |
luci-app-wireguard | Веб-додаток для управління |
qrencode | Генерація QR кодів для мобільних пристроїв |
- 🔄 Перезавантажуємо роутер
✅ Перевірка встановлення
Після перезавантаження у меню з’являться нові розділи:
- 🔗 Network → Interfaces (протокол “WireGuard VPN”)
- 📊 Status → WireGuard
- 🔐 VPN → WireGuard (залежить від версії)
⚙️ Частина 2: Налаштування WireGuard сервера
🌐 Крок 1: Створення мережевого інтерфейсу
- 📍 Переходимо в Network → Interfaces
- ➕ Натискаємо “Add new interface…” внизу сторінки
- 📝 У діалозі заповнюємо:
| 🏷️ Поле | 📝 Значення |
|---|
| Name | wg_server |
| Protocol | WireGuard VPN |
- 💾 Натискаємо “Create interface”
🔑 Крок 2: Основні налаштування
На вкладці General Settings конфігуруємо:
| 🏷️ Параметр | 📝 Значення | 📝 Примітка |
|---|
| Private Key & Public Key | 🔄 Натискаємо “Generate Key” | Автоматична генерація |
| Listen Port | 51820 | Стандартний порт WireGuard |
| IP Addresses | 10.0.0.1/24 | IP сервера у VPN мережі |
🌐 Крок 3: Розширені налаштування
На вкладці Advanced Settings:
| 🏷️ Параметр | 📝 Значення |
|---|
| Use custom DNS servers | 8.8.8.8, 1.1.1.1 |
| Bring up on boot (Якщо є) | ✅ |
🛡️ Крок 4: Налаштування Firewall
На вкладці Firewall Settings:
- Create / Assign firewall-zone:
lan
💾 Натискаємо “Save & Apply”
✅ Перевірка
Переходимо в Status → WireGuard і перевіряємо, що з’явився новий інтерфейс wg_server.
🛡️ Частина 3: Налаштування файрволу
🚪 Крок 1: Дозволяємо трафік WireGuard
- 📍 Переходимо в Network → Firewall → Traffic Rules
- ➕ Натискаємо “Add”
- 📝 Заповнюємо правило:
| 🏷️ Поле | 📝 Значення |
|---|
| Name | Allow WireGuard |
| Protocol | UDP |
| Source zone | wan |
| Destination port | 51820 |
| Target | ACCEPT |
- 💾 Натискаємо “Save & Apply”
💻 Частина 4: Налаштування Windows клієнта
📥 Крок 1: Встановлення WireGuard клієнта
- 🌐 Завантажуємо клієнт з https://www.wireguard.com/install/
- 💿 Встановлюємо на комп’ютер
- 🚀 Запускаємо програму
🔧 Крок 2: Створення конфігурації клієнта
- ➕ У WireGuard клієнті натискаємо “Add empty tunnel”
- 🏷️ Даємо назву тунелю (наприклад, “Home VPN”)
- 📋 Копіюємо публічний ключ клієнта (знадобиться для сервера)
🔗 Крок 3: Додавання клієнта на сервері
- 📍 На роутері переходимо в Network → Interfaces → wg_server
- 👥 Переходимо на вкладку Peers
- ➕ Натискаємо “Add Peer”
- 📝 Заповнюємо поля:
| 🏷️ Поле | 📝 Значення | 📝 Примітка |
|---|
| Description | Windows Client | Довільна назва |
| Public key / Private key | [з Windows клієнта] | Копіюємо і вставляємо |
| Allowed IPs | 10.0.0.2/32 | IP клієнта у VPN |
| Route Allowed IPs | ✅ | Увімкнути маршрутизацію |
- 💾 Зберігаємо “Save & Apply” і перезавантажуємо роутер
📝 Крок 4: Завершення конфігурації клієнта
У вікні Windows клієнта додаємо конфігурацію:
[Interface]
PrivateKey = [залишаємо автоматично згенерований]
Address = 10.0.0.2/32
DNS = 8.8.8.8
[Peer]
PublicKey = [копіюємо з роутера: Network → Interfaces → wg_server → General Setup]
AllowedIPs = 0.0.0.0/0
Endpoint = [зовнішня_IP_адреса]:51820
⚠️ Важливо! Замість [зовнішня_IP_адреса] потрібно вказати реальну зовнішню IP адресу вашого роутера.
🧪 Тестування з’єднання
- 🔌 У Windows клієнті натискаємо “Activate”
- ✅ Перевіряємо статус підключення
🌐 Частина 5: Налаштування DDNS
Якщо у вас динамічний IP від провайдера, налаштуйте DDNS для постійного доступу.
📦 Крок 1: Встановлення DDNS пакетів
- 📍 System → Software → Update lists
- 📥 Встановлюємо пакети:
| 📦 Пакет | 📝 Призначення |
|---|
ddns-scripts | Основні скрипти DDNS |
luci-app-ddns | Веб-інтерфейс для DDNS |
ddns-scripts-services | Підтримка різних DDNS сервісів |
- 🔄 Перезавантажуємо роутер
🏷️ Крок 2: Вибір DDNS сервісу
🦆 Варіант 1: DuckDNS (рекомендований)
| 📋 Крок | 📝 Дія |
|---|
| 1 | 🌐 Йдемо на https://duckdns.org |
| 2 | 🔐 Авторизуємося через Google/GitHub |
| 3 | 🏷️ Створюємо субдомен: myserver.duckdns.org |
| 4 | 📋 Копіюємо token |
🌐 Варіант 2: No-IP
| 📋 Крок | 📝 Дія |
|---|
| 1 | 🌐 Йдемо на https://noip.com |
| 2 | 📝 Реєструємося безкоштовно |
| 3 | 🏷️ Створюємо hostname: myserver.ddns.net |
| 4 | 🔐 Запам’ятовуємо логін/пароль |
⚙️ Крок 3: Налаштування в OpenWRT
- 📍 Переходимо в Services → Dynamic DNS
- ➕ Натискаємо “Add”
- 📝 Заповнюємо поля:
🦆 Для DuckDNS:
| 🏷️ Поле | 📝 Значення |
|---|
| Service provider | duckdns.org |
| Hostname | myserver.duckdns.org |
| Username | myserver () |
| Password | [token з DuckDNS] |
🌐 Для No-IP:
| 🏷️ Поле | 📝 Значення |
|---|
| Service provider | No-IP.com |
| Hostname | myserver.ddns.net |
| Username | [ваш логін] |
| Password | [ваш пароль] |
⚙️ Додаткові налаштування:
| 🏷️ Параметр | 📝 Значення |
|---|
| Check interval | 10 (хвилин) |
| Force update interval | 72 (годин) |
| Enable | ✅ |
- 💾 Натискаємо “Save & Apply”
🔧 Крок 4: Оновлення клієнтської конфігурації
У Windows клієнті замінюємо IP адресу на домен:
Endpoint = myserver.duckdns.org:51820
🧪 Крок 5: Тестування DDNS
- 📍 Переходимо в Status → System Log
- 🔍 Шукаємо повідомлення про DDNS
🎉 Висновок
Тепер у вас є повноцінний VPN сервер на базі OpenWRT з WireGuard, який може:
| ✅ Можливість | 📝 Опис |
|---|
| 🔗 Об’єднання мереж | Безпечне з’єднання різних мереж |
| 🌐 Віддалений доступ | Доступ до домашніх ресурсів з будь-де |
| 🔄 Динамічний IP | Робота з динамічним IP через DDNS |
| 📱 Мультиплатформність | Підтримка Windows, Android, iOS, Linux |
🛠️ Додаткові поради
📱 Підключення мобільних пристроїв
- Використовуйте
qrencode для генерації QR кодів
- Мобільні додатки WireGuard можуть сканувати QR коди
🔒 Безпека
- Регулярно оновлюйте ключі
- Використовуйте складні паролі для DDNS
- Відстежуйте підключені пристрої
🚀 Оптимізація
- При великій кількості клієнтів розгляньте створення окремої VPN зони
- Налаштуйте логування для моніторингу підключень