Стендап Сьогодні 📢 Канал в Telegram @stendap_sogodni
🤖🚫 AI-free content. This post is 100% written by a human, as is everything on my blog. Enjoy!21.01.2023
Налаштування WireGuard на роутері для доступу ззовні
Сьогодні хотів налаштувати на роутері доступ ззовні по WireGuard. Власне, в мене вже такий є, проте працює з домашнього сервера. Оскільки сучасні роутери ASUS підтримують WireGuard, хотілося спростити систему та зробити все прямо на роутері.
Спочатку, я хотів назначити роутеру зовнішній домен. Це роутери ASUS теж вміють робити, вже досить давно. Але для цього потрібний акаунт на одному з переліку сервісів, одні з яких платні, а іншим я не довіряю. Виручило те, що окрім заданих сервісів, можна просто додати свій скрипт, який викликатиметься при зміні зовнішнього IP, а цей скрипт вже буде робити що завгодно. Наприклад, такий скрипт для CloudFlare вже існує. А CloudFlare - з недавніх пір мій улюблений DNS провайдер.
На жаль, після всього цього виявилось, що Київстар все одно не пропускає клієнтів ззовні, тож хоч по IP, хоч по домену, а напряму підключатись не вийде. На щастя, WireGuard цю проблему частково вирішує.
WireGuard - то дуже класний сучасний протокол VPN. Що мені в ньому подобається, це легкість встановлення. А налаштування для клієнтів достатньо компактні, щоб з них можна було зробити QR код — так дуже просто приєднати до свого VPN телефони. Минулого року я навіть зробив пакет скриптів, щоб все це автоматизувати.
А ще WireGuard вміє роумінг, тобто, поєднання декількох серверів у цілу сукупність віртуальних мереж зі спільною маршрутизацією. В мене є два сервери: один — вдома, інший — в інтернеті. Домашній сервер є клієнтом відкритого, та підключається до нього автоматично. Тепер, я можу будь-звідки підʼєднатись до відкритого серверу, та завдяки роумінгу відправляти запити не тільки до домашнього сервера WireGuard, але й взагалі до всіх домашніх систем.
Найскладніше в налаштуваннях WireGuard то побудова правильної таблиці маршрутів iptables
. Схема маршрутів залежить від того, що має робити система. Типові сучасні VPN дають клієнтам вихід в інтернет, тобто клієнти направлятимуть всі пакети до інтернету у канал VPN, а VPN передаватимете їх далі. Але мені для організації доступу до домашньої мережі зовсім таке не потрібно. Треба чітко розуміти, які пакети мають бути пропущені, які — перенаправлені, і так далі. Раджу гарний репозиторій з купою статей.