Доступ в Інтернет через WireGuard VPN тунель

Які налаштування потрібно зробити, щоб клієнти, підключені через WireGuard VPN, мали доступ до Інтернету?

NOTE: Важливо! Така конфігурація збільшує навантаження на VPN-канал та Інтернет-канал, до якого Keenetic підключений як VPN-сервер.

1. В налаштуваннях клієнта необхідно вказати дозволені IP-адреси 0.0.0.0/0. Якщо клієнтом є маршрутизатор Keenetic, у параметрах інтерфейсу має бути увімкнений чекбокс «Використовувати для доступу до Інтернету».

2. Також, на клієнтському боці конфігурації потрібно вказати сервер DNS ( до прикладу адресу публічного DNS  серверу Google - 8.8.8.8).

TIP: Клієнтами серверу WireGuard VPN можуть бути маршрутизатор Keenetic, мобільні пристрої на базі Android та iOS, або комп'ютери на базі Windows, Linux, macOS.

3. На стороні сервера, який буде використовуватися для доступу до Інтернету, необхідні такі налаштування.

TIP: У випадку WireGuard не має значення, хто є сервером у цій схемі, тобто хто приймає з’єднання та ініціює його. Але зазвичай це сервер, який очікує на підключення.

Ви повинні призначити інтерфейсу WireGuard рівень приватної безпеки. Для цього вам потрібно ввести наступну команду в інтерфейсі командного рядка (CLI) маршрутизатора (в нашому прикладі для інтерфейсу  Wireguard0):

interface Wireguard0 security-level private


Також для цього інтерфейсу необхідно увімкнути трансляцію мережевих адрес (NAT). Щоб це зробити, дайте наступну команду:

ip nat Wireguard0


Це необхідні і достатні умови. Налаштування серверу необхідно зберегти командою:

system configuration save


4. Майте на увазі, що зміна рівня безпеки інтерфейсу тунелю з публічного на приватний призводить до зміни правил передачі трафіку до цього інтерфейсу з інших локальних мереж маршрутизатора і назад. Ви можете знайти параметри, необхідні для вирішення цієї ситуації, у примітці до статті  Сегменти мережі.

Щоб трафік від хостів, підключених до тунелю, надсилався до локального сегмента, необхідно додати правило дозволу на інтерфейсі тунелю у вхідному напрямку. У цьому правилі діапазон адрес у сегменті локальної мережі має бути вказаний як Адреса призначення
Підійде правило, яке дозволяє весь вхідний трафік, яке ми налаштували на інтерфейсі тунелю в статті Налаштування WireGuard VPN між двома маршрутизаторами Keenetic. Після зміни рівня безпеки інтерфейсу, налаштованого цією інструкцією, правило брандмауера залишиться та продовжить виконувати іншу функцію.

Окрім налаштування статичної маршрутизації, вам також потрібно буде додати дозволяючі правила міжмережевого екрану для кожного локального сегмента. У цих правилах адреси призначення повинні вміщувати діапазони IP хостів у віддалених мережах за тунелем, до яких потрібен доступ з цього локального сегмента.

Приклад

Розглянемо приклад, коли клієнти, підключені до маршрутизатора Keenetic, який діє як VPN-клієнт, отримають доступ до Інтернету через цей VPN-тунель. Іншими словами, від VPN-клієнта весь трафік спрямовуватиметься до тунелю WireGuard як для доступу до віддаленої мережі, так і для доступу до Інтернету.
Візьмемо за основу схему, наведену в статті  Налаштування WireGuard VPN між двома маршрутизаторами Keenetic.

a) На боці  VPN сервера, змініть рівень безпеки інтерфейсу Wireguard0 і увімкніть для нього NAT:

interface Wireguard0 security-level private
ip nat Wireguard0
system configuration save


b) У веб конфігураторі, додайте правила дозволу на інтерфейси Домашня мережа, надсилання трафіку в локальну мережу клієнта VPN:

wg-fw-s-en.png

А на стороні клієнта VPN додайте правило дозволу для домашньої мережі, щоб дозволити трафік до локальної мережі сервера VPN.

в) Для клієнта VPN необхідно виправити конфігурацію інтерфейсу WireGuard. До дозволених мереж необхідно додати адресний простір 0.0.0.0/0. У конфігурації самого інтерфейсу ввімкніть опцію «Використовувати для доступу до Інтернету» та вкажіть сервер(и) DNS. У нашому прикладі ми вказали загальнодоступний DNS-сервер Google (8.8.8.8), але ви також можете використовувати локальні адреси, доступні в тунелі, наприклад адресу сервера VPN (172.16.82.1).


wg-cl1-nat-en.png

Збережіть налаштування.

d) Інтерфейс WireGuard з’явиться на VPN-клієнті в меню «Інтернет» на сторінці «Пріоритети підключень». Перетягніть його вгору списку, щоб зробити його основним підключенням.

wg-pr-en.png

Після цього всі клієнти, підключені безпосередньо до маршрутизатора Keenetic, отримають доступ до Інтернету через VPN-тунель. Якщо потрібно налаштувати доступ лише для деяких пристроїв, у цьому випадку рекомендуємо створити індивідуальний профіль і прив’язати до нього конкретні пристрої. Як це зробити, показано в інструкції «Пріоритети підключення».

Налаштування завершено.

TIP: Примітка: Щоб вимкнути налаштовану функцію, все, що вам потрібно зробити, це ввести команди на сервері VPN  interface Wireguard0 security-level public та no ip nat Wireguard0, по тому зберегти зміни командою system configuration save. На клієнті VPN, для інтерфейсу WireGuard вимкніть опцію "Використовувати для доступу в Інтернет"  та видаліть мережу 0.0.0.0/0 з Доступних IP.
Правила брандмауера та вказані DNS-сервери не заважатимуть конфігурації зі статті Налаштування WireGuard VPN між двома маршрутизаторами Keenetic.

 

Чи була ця стаття корисною?

64 з 85 вважають статтю корисною