Налаштування WireGuard: відмінності між версіями
R (обговорення | внесок) Первинна версія документу |
R (обговорення | внесок) Немає опису редагування |
||
| Рядок 16: | Рядок 16: | ||
Для встановлення WireGuard у Linux використовується пакетний менеджер відповідного дистрибутива. | Для встановлення WireGuard у Linux використовується пакетний менеджер відповідного дистрибутива. | ||
< | <pre> | ||
sudo apt install wireguard # або пакет для свого дистро | sudo apt install wireguard # або пакет для свого дистро | ||
</ | </pre> | ||
=== Генерація ключів === | === Генерація ключів === | ||
| Рядок 24: | Рядок 24: | ||
Після встановлення потрібно згенерувати приватний і публічний ключі клієнта. | Після встановлення потрібно згенерувати приватний і публічний ключі клієнта. | ||
< | <pre> | ||
wg genkey | tee ~/wg_private | wg pubkey > ~/wg_public | wg genkey | tee ~/wg_private | wg pubkey > ~/wg_public | ||
cat ~/wg_public | cat ~/wg_public | ||
</ | </pre> | ||
Публічний ключ потрібно надіслати адміністратору для додавання користувача до VPN-сервера. | Публічний ключ потрібно надіслати адміністратору для додавання користувача до VPN-сервера. | ||
| Рядок 35: | Рядок 35: | ||
Файл конфігурації створюється за шляхом: | Файл конфігурації створюється за шляхом: | ||
< | <pre> | ||
/etc/wireguard/wg0.conf | /etc/wireguard/wg0.conf | ||
</ | </pre> | ||
Приклад конфігурації split-tunnel до мереж датацентру: | Приклад конфігурації split-tunnel до мереж датацентру: | ||
< | <pre> | ||
[Interface] | [Interface] | ||
Address = 10.7.0.ОтриматиВідАдміна/32 | Address = 10.7.0.ОтриматиВідАдміна/32 | ||
| Рядок 56: | Рядок 56: | ||
AllowedIPs = 192.168.20.0/24, 192.168.21.0/24 | AllowedIPs = 192.168.20.0/24, 192.168.21.0/24 | ||
PersistentKeepalive = 25 | PersistentKeepalive = 25 | ||
</ | </pre> | ||
У режимі '''full-tunnel''' у параметрі <code>AllowedIPs</code> потрібно вказати: | У режимі '''full-tunnel''' у параметрі <code>AllowedIPs</code> потрібно вказати: | ||
< | <pre> | ||
AllowedIPs = 0.0.0.0/0 | AllowedIPs = 0.0.0.0/0 | ||
</ | </pre> | ||
За потреби можна додати <code>DNS=</code> до внутрішнього DNS-сервера. | За потреби можна додати <code>DNS=</code> до внутрішнього DNS-сервера. | ||
| Рядок 68: | Рядок 68: | ||
=== Запуск WireGuard === | === Запуск WireGuard === | ||
< | <pre> | ||
sudo wg-quick up wg0 | sudo wg-quick up wg0 | ||
</ | </pre> | ||
Щоб увімкнути автозапуск при старті системи: | Щоб увімкнути автозапуск при старті системи: | ||
< | <pre> | ||
sudo systemctl enable --now wg-quick@wg0 | sudo systemctl enable --now wg-quick@wg0 | ||
</ | </pre> | ||
=== Перевірка стану === | === Перевірка стану === | ||
< | <pre> | ||
wg show | wg show | ||
ip addr show wg0 | ip addr show wg0 | ||
</ | </pre> | ||
=== Перезапуск === | === Перезапуск === | ||
| Рядок 89: | Рядок 89: | ||
М’який перезапуск через <code>wg-quick</code>: | М’який перезапуск через <code>wg-quick</code>: | ||
< | <pre> | ||
sudo wg-quick down wg0 && sudo wg-quick up wg0 | sudo wg-quick down wg0 && sudo wg-quick up wg0 | ||
</ | </pre> | ||
Перезапуск через systemd, якщо сервіс увімкнений: | Перезапуск через systemd, якщо сервіс увімкнений: | ||
< | <pre> | ||
sudo systemctl restart wg-quick@wg0 | sudo systemctl restart wg-quick@wg0 | ||
</ | </pre> | ||
=== Зупинка === | === Зупинка === | ||
< | <pre> | ||
sudo wg-quick down wg0 | sudo wg-quick down wg0 | ||
</ | </pre> | ||
Щоб вимкнути автозапуск і зупинити тунель: | Щоб вимкнути автозапуск і зупинити тунель: | ||
< | <pre> | ||
sudo systemctl disable --now wg-quick@wg0 | sudo systemctl disable --now wg-quick@wg0 | ||
</ | </pre> | ||
=== Шпаргалка команд Linux === | === Шпаргалка команд Linux === | ||
| Рядок 152: | Рядок 152: | ||
Для редагування тунелю потрібно натиснути кнопку '''Edit''' і заповнити конфігурацію. | Для редагування тунелю потрібно натиснути кнопку '''Edit''' і заповнити конфігурацію. | ||
< | <pre> | ||
[Interface] | [Interface] | ||
PrivateKey = ВставляєтьсяАвтоматичноПриГенераціїНеМіняти | PrivateKey = ВставляєтьсяАвтоматичноПриГенераціїНеМіняти | ||
| Рядок 164: | Рядок 164: | ||
# або 0.0.0.0/0 для full-tunnel | # або 0.0.0.0/0 для full-tunnel | ||
PersistentKeepalive = 25 | PersistentKeepalive = 25 | ||
</ | </pre> | ||
Після збереження конфігурації потрібно натиснути '''Activate'''. У вікні клієнта має з’явитися '''Latest Handshake''', а також повинні зростати показники '''Transfer RX/TX'''. | Після збереження конфігурації потрібно натиснути '''Activate'''. У вікні клієнта має з’явитися '''Latest Handshake''', а також повинні зростати показники '''Transfer RX/TX'''. | ||
=== Ілюстрації з документа === | |||
<gallery mode="packed" heights="180"> | |||
WireGuard_01.png|Ілюстрація WireGuard | |||
WireGuard_02.png|Ілюстрація WireGuard | |||
</gallery> | |||
=== Перезапуск у Windows === | === Перезапуск у Windows === | ||
| Рядок 177: | Рядок 184: | ||
Якщо тунель встановлено як сервіс, його можна перезапустити командою: | Якщо тунель встановлено як сервіс, його можна перезапустити командою: | ||
< | <pre> | ||
"C:\Program Files\WireGuard\wireguard.exe" /restarttunnelservice "<ім'я_тунелю>" | "C:\Program Files\WireGuard\wireguard.exe" /restarttunnelservice "<ім'я_тунелю>" | ||
</ | </pre> | ||
== Перевірка роботи == | == Перевірка роботи == | ||
| Рядок 187: | Рядок 194: | ||
Приклад: | Приклад: | ||
< | <pre> | ||
ping 192.168.20.225 | ping 192.168.20.225 | ||
</ | </pre> | ||
Якщо VPN працює коректно, має бути відповідь з обміном пакетами. | Якщо VPN працює коректно, має бути відповідь з обміном пакетами. | ||
| Рядок 253: | Рядок 260: | ||
* [[K2 ERP]] | * [[K2 ERP]] | ||
[[ | [[Категорія:VPN]] | ||
[[ | [[Категорія:WireGuard]] | ||
[[ | [[Категорія:Інструкції]] | ||
[[ | [[Категорія:Адміністрування Linux]] | ||
[[ | [[Категорія:Адміністрування Windows]] | ||
Версія за 21:00, 28 квітня 2026
WireGuard — сучасне VPN-рішення для безпечного підключення користувачів і сервісів до внутрішніх мереж. У цій інструкції описано встановлення, налаштування, запуск, перевірку та перезапуск WireGuard на Linux і Windows.
Linux
Встановлення WireGuard
Для встановлення WireGuard у Linux використовується пакетний менеджер відповідного дистрибутива.
sudo apt install wireguard # або пакет для свого дистро
Генерація ключів
Після встановлення потрібно згенерувати приватний і публічний ключі клієнта.
wg genkey | tee ~/wg_private | wg pubkey > ~/wg_public cat ~/wg_public
Публічний ключ потрібно надіслати адміністратору для додавання користувача до VPN-сервера.
Конфігурація wg0.conf
Файл конфігурації створюється за шляхом:
/etc/wireguard/wg0.conf
Приклад конфігурації split-tunnel до мереж датацентру:
[Interface] Address = 10.7.0.ОтриматиВідАдміна/32 # ip-адреса надається адміністратором, наприклад: # Address = 10.7.0.3/32 PrivateKey = <ВСТАВ ВМІСТ ~/wg_private> MTU = 1420 # PresharedKey = <якщо використовується> [Peer] PublicKey = cx6KJsqfQSBRaG0+Rmy8+0JjbtUf/i/Ri3U+/el2aCY= # PublicKey = <PUBLIC_KEY_ТВОГО_MIKROTIK> Endpoint = 185.46.151.62:51820 AllowedIPs = 192.168.20.0/24, 192.168.21.0/24 PersistentKeepalive = 25
У режимі full-tunnel у параметрі AllowedIPs потрібно вказати:
AllowedIPs = 0.0.0.0/0
За потреби можна додати DNS= до внутрішнього DNS-сервера.
Запуск WireGuard
sudo wg-quick up wg0
Щоб увімкнути автозапуск при старті системи:
sudo systemctl enable --now wg-quick@wg0
Перевірка стану
wg show ip addr show wg0
Перезапуск
М’який перезапуск через wg-quick:
sudo wg-quick down wg0 && sudo wg-quick up wg0
Перезапуск через systemd, якщо сервіс увімкнений:
sudo systemctl restart wg-quick@wg0
Зупинка
sudo wg-quick down wg0
Щоб вимкнути автозапуск і зупинити тунель:
sudo systemctl disable --now wg-quick@wg0
Шпаргалка команд Linux
| Дія | Команда |
|---|---|
| Старт | sudo wg-quick up wg0
|
| Зупинка | sudo wg-quick down wg0
|
| Перезапуск | sudo wg-quick down wg0 && sudo wg-quick up wg0
|
| Стан і лічильники | wg show
|
| Увімкнути автозапуск | sudo systemctl enable --now wg-quick@wg0
|
| Вимкнути автозапуск | sudo systemctl disable --now wg-quick@wg0
|
| Перевірити сервіс | systemctl status wg-quick@wg0
|
Windows
Встановлення клієнта
Для Windows використовується офіційний клієнт WireGuard.
- Завантажити WireGuard for Windows: https://www.wireguard.com/install/
Створення нового тунелю
- Відкрити WireGuard.
- Натиснути Add Tunnel.
- Обрати Add empty tunnel….
- Клієнт автоматично згенерує Private Key і Public Key.
- Натиснути іконку Copy public key.
- Надіслати публічний ключ адміністратору.
Налаштування конфігурації
Для редагування тунелю потрібно натиснути кнопку Edit і заповнити конфігурацію.
[Interface] PrivateKey = ВставляєтьсяАвтоматичноПриГенераціїНеМіняти Address = IPОтриманийВідАдміна MTU = 1420 [Peer] PublicKey = cx6KJsqfQSBRaG0+Rmy8+0JjbtUf/i/Ri3U+/el2aCY= Endpoint = 185.46.151.62:51820 AllowedIPs = 192.168.20.0/24, 192.168.21.0/24 # або 0.0.0.0/0 для full-tunnel PersistentKeepalive = 25
Після збереження конфігурації потрібно натиснути Activate. У вікні клієнта має з’явитися Latest Handshake, а також повинні зростати показники Transfer RX/TX.
Ілюстрації з документа
-
Ілюстрація WireGuard
-
Ілюстрація WireGuard
Перезапуск у Windows
У застосунку WireGuard:
- Натиснути Deactivate.
- Потім натиснути Activate.
Якщо тунель встановлено як сервіс, його можна перезапустити командою:
"C:\Program Files\WireGuard\wireguard.exe" /restarttunnelservice "<ім'я_тунелю>"
Перевірка роботи
Для перевірки роботи VPN можна пропінгувати IP-адресу всередині мережі датацентру.
Приклад:
ping 192.168.20.225
Якщо VPN працює коректно, має бути відповідь з обміном пакетами.
Чому обрали WireGuard
Коротка версія
- Безпека рівня “сьогодні” — сучасна криптографія: Curve25519, ChaCha20-Poly1305, BLAKE2s.
- Швидкість і стабільність — WireGuard працює в ядрі Linux, має низькі затримки та високу пропускну здатність.
- Простота — один UDP-порт, короткий конфіг, можливість використання QR-коду для телефону.
- Роумінг без розривів — автоматичне перемикання між Wi-Fi, 4G, 5G, NAT і CGNAT.
- Кросплатформеність — Windows, macOS, Linux, iOS, Android, MikroTik v7+.
- Енергоефективність — менше навантаження на CPU і батарею.
- Гнучкість доступу — підтримка full-tunnel і split-tunnel.
Детальніше для бізнесу
- Закриття RDP та адміністративних сервісів з Інтернету. Доступ відбувається лише через зашифрований тунель, що зменшує ризики брутфорсу та бекдорів.
- Продуктивність. У порівнянні з OpenVPN WireGuard має менші накладні витрати, що покращує роботу з файлами, термінальними сесіями та базами даних.
- Надійність у польових умовах. WireGuard добре працює при перемиканні мереж, використанні мобільного інтернету та готельних Wi-Fi.
- Легке адміністрування. Використовуються ключі замість паролів, статичні peer-конфіги та проста сегментація доступу.
- Масштабування. Підходить для site-to-site, віддаленої роботи співробітників і сервісних підключень.
Як впроваджуємо
Наш бік
- Піднімаємо WireGuard-шлюз.
- Генеруємо ключі.
- Визначаємо підмережі.
- Вмикаємо маршрути та firewall.
- Готуємо конфіги для ПК і телефонів.
- За потреби готуємо QR-коди для мобільних пристроїв.
Ваш бік
- Встановити застосунок або драйвер WireGuard для Windows, macOS, Linux, iOS або Android.
- Якщо використовується MikroTik — додати peer і маршрут до офісу або сервера.
Режими доступу
- Split-tunnel — доступ лише до внутрішніх ресурсів.
- Full-tunnel — весь трафік іде через офіс або сервер.
Вибір режиму залежить від вимог безпеки, комплаєнсу та конкретних задач користувача.
Коли WireGuard особливо вигідний
- Потрібно вимкнути публічний RDP, VNC або SSH і залишити безпечний доступ усередину мережі.
- Є мобільні співробітники або підрядники з різних країн чи мереж.
- Важливі швидкі термінальні сесії, робота з 1С, BAS, ERP, файловий обмін або резервні копії через Інтернет.
- Потрібне просте рішення з мінімумом конфігурацій і швидким онбордингом нових користувачів.
