
В повечето случаи свързването на рутер към VPN не е сложно, но ако искате да защитите цяла мрежа и в същото време да запазите оптимална скорост на свързване, най-доброто решение е да използвате VPN тунел. .
Рутери Mikrotik са доказали, че са надеждни и много гъвкави решения, но за съжаление все още я няма и не се знае кога и в каква форма ще се появи. Наблюдавахме новини от разработчиците на VPN тунела WireGuard, които предложиха , да направят софтуера си за организация на VPN тунели част от ядрото на Linux, надяваме се това да помогне за внедряването в RouterOS.
Но засега, за съжаление, за настройка на WireGuard на рутера Mikrotik е необходимо да смените фърмуера.
Променяме Mikrotik, инсталираме и настройваме OpenWrt.
Първоначално трябва да се уверите, че OpenWrt поддържа вашия модел. Можете да проверите съответствието на модела с неговото търговско наименование и изображение .
Посетете сайта openwrt.com .
За това устройство ни трябват 2 файла:
Трябва да изтеглите и двата файла: Инсталирайте и Актуализация.

1. Настройка на мрежата, зареждане и настройка на PXE сървър.
Свалете за последната версия на Windows.
Разархивирайте в отделна папка. В файла config.ini добавете параметъра rfc951=1 секция [dhcp]. Този параметър е същият за всички модели Mikrotik.

Преминаваме към настройките на мрежата: трябва да зададете статичен IP адрес на един от мрежовите интерфейси на компютъра си.

IP адрес: 192.168.1.10
Маска на мрежата: 255.255.255.0

Стартирайте Tiny PXE Server от името на администратора и изберете в полето DHCP Server сървър с адрес 192.168.1.10
В някои версии на Windows този интерфейс може да се появи само след свързване на Ethernet. Препоръчително е да свържете рутера и веднага да свържете рутера и ПК с помощта на 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. Проблемът е, че при преинсталиране не се запазват данните за модела на устройството.
Ако видите грешка «The uploaded image file does not contain a supported format. Make sure that you choose the generic image format for your platform.», вероятно проблемът е във флаш паметта.
Лесно е да проверите това: изпълнете в терминала на устройството командата за проверка на 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След това можете да флашнете устройството чрез уеб интерфейса или с помощта на командата «sysupgrade»
Създайте VPN сървър с WireGuard
Ако вече имате сървър с настроен WireGuard, можете да пропуснете тази точка.
Ще използвам приложението относно което вече съм .
Настройка на WireGuard Client на OpenWRT
Свържете се с маршрутизатора чрез SSH протокол:
ssh root@192.168.1.1Инсталирайте 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" # публичен ключ
# Конфигуриране на защитна стена
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
# Конфигуриране на мрежата
uci -q delete network.${WG_IF}
uci set network.${WG_IF}="интерфейс"
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}"
# Добавяне на VPN партньори
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 връзка.
Връзки
(допълнително е налична инструкция за настройка на L2TP, PPTP на стандартния фърмуер на Mikrotik)
Източник: habr.com
