
В большинстве случаев подключить роутер к VPN не сложно, но если вы хотите защитить целую сеть и при этом сохранить оптимальную скорость соединения, то наилучшим решением будет воспользоваться VPN-туннелем WireGuard.
Роутеры Mikrotik зарекомендовали себя как надежные и очень гибкие решешния, но к сожалению поддержки WireGurd на RouterOS все еще нет и не известно когда появится и в каком исполнении. Недавно стало известно о том, что разработчики VPN-туннеля WireGuard предложили набор патчей, которые сделают их ПО для организации VPN-туннелей частью ядра Linux, надеемся это поспособствует внедрению в RouterOS.
Но а пока, к сожалению, для настройки WireGuard на роутере Mikrotik необходимо сменить прошивку.
Прошиваем Mikrotik, устанавливаем и настраиваем OpenWrt
Для начала вам необходимо убедиться в том, что OpenWrt поддерживает вашу модель. Посмотреть соответствие модели ее маркетинговому названию и изображению можно на сайте mikrotik.com.
Перейдите на сайт openwrt.com в раздел загрузки прошивок.
Для данного устройства нам нужно 2 файла:
Вам нужно скачать оба файла: Install и Upgrade.

1. Настройка сети, загрузка и настройка PXE сервера
Скачайте Tiny PXE Server для 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. Рекомендую подключить роутер и сразу коммутировать роутер и ПК с помощью патчкорда.

Нажимаем кнопку «…» (справа внизу) и указываем папку, в которую вы скачали файлы прошивки для Mikrotik.
Выбираете файл, имя которого заканчивается на «initramfs-kernel.bin или elf»

2. Загрузка роутера с PXE сервера
Соединяем проводом ПК и первый порт (wan,internet,poe in,…) роутера. После этого берем зубочистку, втыкаем в отверстие с надписью «Reset».

Включаем питание роутера и ждем секунд 20, потом отпускаем зубочистку.
В течение следующей минуты в окне программы Tiny PXE Server должны появиться следующие сообщения:

Если сообщение появилось, значит вы в правильном направлении!
Восстановите настройки на сетевом адаптере и установите получение адреса динамически (по DHCP).
Подключайтесь к LAN портам роутера Mikrotik (2…5 в нашем случае) с помощью того же патчкорда. Просто переключите его из 1-го порта во 2-й порт. Откройте адрес 192.168.1.1 в браузере.

Войдите в административный интерес OpenWRT и перейдите в раздел меню «System -> Backup/Flash Firmware»

В подразделе «Flash new firmware image» нажмите на кнопку «Выберите файл (Browse)».

Укажите путь к файлу, имя которого заканчивается на «-squashfs-sysupgrade.bin».
habrastorage.org/webt/rx/gy/kp/rxgykpenqhyfre51yaotebuset0.png
После этого нажмите кнопку «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.» то скорее всего проблема в 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 сервера приложение MyVPN.RUN о котом я уже публиковал обзор.
Настройка WireGuard Client на OpenWRT
Подключитесь к роутеру по протоколу SSH
ssh root@192.168.1.1
Подготовьте конфигурацию (скопируйте код ниже в файл, замените указаные значения на свои и запустите в терминале)
Если вы используете 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 соединением.
Ссылки
Источник #1
Доработанная инструкция на MyVPN (дополнительно доступна инструкция настройки L2TP, PPTP на стандартной прошивке Mikrotik)
OpenWrt WireGuard Client
ссылка на оригинал статьи https://habr.com/ru/post/487450/
Добавить комментарий