Skip to main content

Інструкція користувача

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

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

Важливо

Ця конфігурація збільшує навантаження на VPN-канал та інтернет-канал, до якого Keenetic підключено як VPN-сервер.

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

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

    Примітка

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

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

    Примітка

    У випадку з 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 маршрутизаторами.

  1. На VPN-сервері змініть рівень безпеки інтерфейсу Wireguard0 та увімкніть для нього правило автоматичної трансляції адрес:

    interface Wireguard0 security-level private
    ip nat Wireguard0
    system configuration save
  2. У веб-інтерфейсі додайте дозвільні правила на інтерфейсах локальної мережі, щоб дозволити трафіку проходити через мережу за віддаленим маршрутизатором. Дозвіл на надсилання трафіку до локальної мережі VPN-клієнта:

    wireguard-nat-01-en.png

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

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

    wireguard-nat-02-en.png

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

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

    wireguard-nat-03-en.png

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

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

Примітка

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

Правила міжмережевого екрану та зазначені DNS-сервери також не заважатимуть конфігурації зі статті Налаштування WireGuard VPN між двома Keenetic маршрутизаторами.