У більшості випадків підключити роутер до VPN не складно, але якщо ви хочете захистити цілу мережу і при цьому зберегти оптимальну швидкість з'єднання, найкращим рішенням буде скористатися VPN-тунелем
роутери Мікротік зарекомендували себе як надійні та дуже гнучкі рішення, але на жаль
Але поки що, на жаль, для налаштування WireGuard на роутері Mikrotik необхідно змінити прошивку.
Прошиваємо Mikrotik, встановлюємо та налаштовуємо OpenWrt
Для початку вам необхідно переконатися, що OpenWrt підтримує вашу модель. Переглянути відповідність моделі її маркетингової назви та зображення
Перейдіть на сайт openwrt.com
Для цього пристрою нам потрібно 2 файли:
Вам потрібно завантажити обидва файли: Встановлювати и модернізація.
1. Налаштування мережі, завантаження та налаштування PXE сервера
скачайте
Розпакуйте в окрему папку. У файлі config.ini додаєте параметр rfc951=1 секцію [dhcp]. Цей параметр є однаковим для всіх моделей Mikrotik.
Переходимо до налаштувань мережі: потрібно прописати статичну ip адресу на один із мережевих інтерфейсів вашого комп'ютера.
IP адреса: 192.168.1.10
Маска мережі: 255.255.255.0
запустіть Tiny PXE Server від імені Адміністратора та виберіть у полі DHCP-сервер сервер з адресою 192.168.1.10
На деяких версіях Windows цей інтерфейс може з'явитися лише після підключення Ethernet. Рекомендую підключити роутер і одразу комутувати роутер і ПК за допомогою патчкорду.
Натискаємо кнопку «…» (праворуч внизу) та вказуємо папку, в яку ви завантажили файли прошивки для Mikrotik.
Вибираєте файл, ім'я якого закінчується на initramfs-kernel.bin або elf
2. Завантаження роутера з сервера PXE
З'єднуємо дротом ПК і перший порт (wan, internet, poe in, ...) роутера. Після цього беремо зубочистку, встромляємо в отвір із написом «Reset».
Включаємо живлення роутера і чекаємо секунд 20, потім відпускаємо зубочистку.
Протягом наступної хвилини у вікні програми Tiny PXE Server мають з'явитися такі повідомлення:
Якщо повідомлення з'явилося, то ви в правильному напрямку!
Відновіть налаштування на мережному адаптері та встановіть отримання адреси динамічно (DHCP).
Підключайтеся до LAN портів роутера Mikrotik (2…5 у нашому випадку) за допомогою того ж патчкорду. Просто переключіть його з 1-го порту до 2-го порту. Відкрийте адресу
Увійдіть в адміністративний інтерфейс OpenWRT і перейдіть до розділу меню "System -> Backup/Flash Firmware"
У розділі "Flash new firmware image" натисніть кнопку "Виберіть файл (Browse)".
Вкажіть шлях до файлу, ім'я якого закінчується на "-squashfs-sysupgrade.bin".
Після цього натисніть кнопку "Flash Image".
У наступному вікні натисніть кнопку Proceed. Почнеться завантаження прошивки у роутер.
!!! НІ В ЯКОМУ РАЗІ НЕ ВІДКЛЮЧАЙТЕ ЖИВЛЕННЯ РОУТЕРА В ПРОЦЕСІ ПРОШИВКИ !!!
Після прошивки та перезавантаження роутера ви отримаєте Mikrotik із прошивкою OpenWRT.
Можливі проблеми та їх вирішення
У багатьох пристроях Mikrotik випуску 2019 використовується мікросхема пам'яті FLASH-NOR типу GD25Q15/Q16. Проблема в тому, що під час перепрошивки не зберігаються дані про модель пристрою.
Якщо ви побачили помилку «Завантажений зображення файлу не містить supported формат. Make sure that you choose generic image format for your platform.” то швидше за все проблема у flash.
Перевірити це легко: виконуєте у терміналі пристрою команду перевірки ID моделі
root@OpenWrt: cat /tmp/sysinfo/board_name
І якщо отримуєте відповідь unknown, то потрібно вручну вказати модель пристрою у вигляді rb-951-2nd
Щоб отримати модель пристрою, виконайте команду
root@OpenWrt: cat /tmp/sysinfo/model
MikroTik RouterBOARD RB951-2nd
Отримавши модель пристрою, встановлюємо його вручну:
echo 'rb-951-2nd' > /tmp/sysinfo/board_name
Після цього можете прошивати пристрій через web-інтерфейс або за допомогою команди «sysupgrade»
Створіть VPN сервер з WireGuard
Якщо ви вже маєте сервер з налаштованим WireGuard, то можете пропустити цей пункт.
Я будуть використовувати для налаштування персонального VPN сервера додаток
Налаштування WireGuard Client на OpenWRT
Підключіться до роутера за протоколом SSH:
ssh [email protected]
Встановіть WireGuard:
opkg update
opkg install wireguard
Підготуйте конфігурацію (скопіюйте код нижче у файл, замініть вказані значення на свої та запустіть у терміналі).
Якщо ви використовуєте MyVPN, то в конфігурації нижче необхідно змінити лише WG_SERV - IP сервера, WG_KEY — приватний ключ із файлу конфігурації wireguard та WG_PUB - Публічний ключ.
WG_IF="wg0"
WG_SERV="100.0.0.0" # ip адрес сервера
WG_PORT="51820" # порт wireguard
WG_ADDR="10.8.0.2/32" # диапазон адресов wireguard
WG_KEY="xxxxx" # приватный ключ
WG_PUB="xxxxx" # публичный ключ
# Configure firewall
uci rename firewall.@zone[0]="lan"
uci rename firewall.@zone[1]="wan"
uci rename firewall.@forwarding[0]="lan_wan"
uci del_list firewall.wan.network="${WG_IF}"
uci add_list firewall.wan.network="${WG_IF}"
uci commit firewall
/etc/init.d/firewall restart
# Configure network
uci -q delete network.${WG_IF}
uci set network.${WG_IF}="interface"
uci set network.${WG_IF}.proto="wireguard"
uci set network.${WG_IF}.private_key="${WG_KEY}"
uci add_list network.${WG_IF}.addresses="${WG_ADDR}"
# Add VPN peers
uci -q delete network.wgserver
uci set network.wgserver="wireguard_${WG_IF}"
uci set network.wgserver.public_key="${WG_PUB}"
uci set network.wgserver.preshared_key=""
uci set network.wgserver.endpoint_host="${WG_SERV}"
uci set network.wgserver.endpoint_port="${WG_PORT}"
uci set network.wgserver.route_allowed_ips="1"
uci set network.wgserver.persistent_keepalive="25"
uci add_list network.wgserver.allowed_ips="0.0.0.0/1"
uci add_list network.wgserver.allowed_ips="128.0.0.0/1"
uci add_list network.wgserver.allowed_ips="::/0"
uci commit network
/etc/init.d/network restart
На цьому налаштування WireGuard завершено! Тепер весь трафік на всіх підключених пристроїв захищений VPN з'єднанням.
Посилання
Джерело: habr.com