Подключаем SSL-сертификат на Mikrotik RouterOS: защищенная работа с WebFig и корректная работа HotSpot

09 февраль 2019 43 145 2
Если вы хоть раз использовали самоподписные сертификаты на Mikrotik (пункт #5), тогда точно сталкивались с тем, что современные браузеры откажутся принимать такой сертификат, выдавая ошибку.

В сети предприятия, такой сертификат все же лучше, чем его отсутствие. Сегодня мы поговорим о том, как установить полноценный сертификат для WebFig и/или HotSpot.

Для того, чтобы браузеры «не ругались» на сертификат, он должен быть валидным, необходимо соблюсти ряд условий:
  • SSL-сертификат должен выдать авторитетный центр сертификации (Comodo, RapidSSL, GeoTrust, Thawt и т.д.).
  • Сертификат не должен быть истекшим или отозванным;
  • Для целевого IP прописана DNS-запись;
Да, все перечисленные центры выдают только платные сертификаты. Из бесплатных вариантов стоит обратить внимание на Let’s Encrypt.
Если Вы хотите научиться настраивать MikroTik, предлагаем пройти онлайн обучение. Более подробную информацию Вы можете найти в конце данной публикации.

О том, как и где оформить сертификат SSL в интернете информации предостаточно. Со своей стороны могу порекомендовать Ukrnames, как один из самых дешевых вариантов. В своем примере я буду рассматривать Wildcard-сертификат, выданный COMODO. Сертификаты Wildcard выдаются на субдомены и являются выгодным решением тогда, когда необходимо обеспечить защиту нескольких сайтов на разных субдоменах одного домена.

Импорт SSL-сертификата в Mikrotik RouterOS

Предположим, сертификат у вас уже имеется. Первым делом копируем файл сертификата (с расширением *.cer) и приватный ключ (с расширением *.key) в память Mikrotik.

Далее идем в System – Certificates, выполняем импорт файлов. Сначала импортируем файл *.cer, при этом у сертификата появится признак «CRL» и «trusted».


Затем импортируем *.key, после чего на сертификате добавится статус «private key».

То же самое можно выполнить при помощи командной строки:
/certificate import file-name=[имяфайла].cer
/certificate import file-name=[имяфайла].key

Обратите внимание, для некоторых сертификатов/ключей может потребоваться Passphrase – пароль (кодовое слово), который служит для защиты ключа.

Также в вашем распоряжении может присутствовать файл *.ca-bundle, это цепочка корневых сертификатов. CA Bundle позволяет передать браузеру, запросившему сертификат, корректную информацию о том, кто выдал сертификат. Для современных браузеров в этом нет необходимости, т.к. они уже содержат корневые сертификаты ведущих центров сертификации. Цепочка CA Bundle без проблем загружается в Certificates аналогичным образом, поэтому при желании, в целях максимальной совместимости, вы можете выполнить эту процедуру.

Следующий момент обязательно нужно знать всем, чье устройство оборудовано маленьким объемом памяти в 16 МБ. Как правило, это подавляющее большинство устройств Mikrotik, за редким исключением.

В SSL существует такое понятие как CRL.

CRL является сокращением от английского Certificate Revocation List, иными словами, список отозванных сертификатов. CRL содержит список сертификатов, срок которых не истек и которые, при этом, были отозваны центром сертификации. Причиной отзыва сертификата может быть компрометация ключа, неверные данные компании, закрытие ресурса, смена владельца и т.д. Сам CRL регулярно публикуется центром сертификации и защищен цифровой подписью, поэтому исключает возможность его изменения третьими лицами.

Перед тем, как пустить пользователя на сайт, браузер запрашивает CRL и сверяет полученный сертификат. Альтернативой CRLу служит OSCP (с запросом в CA/Certificate Authority), но сейчас не об этом.

Так вот, по-умолчанию RouterOS загружает CRL на диск. Увидеть его в разделе Files вы не сможете, после перезагрузки он не пропадет, зато гарантированно вся доступная память будет занята, а в логах самого маршрутизатора вы увидите красное сообщение «CRL size exceeds free memory».

Возможны 3 варианта решения данной проблемы:
  • приобрести устройство с 128+ МБ памяти;
  • настроит выгрузку CRL в оперативную память;
  • отключить загрузку CRL;
Для того, чтобы выгружать CRL в оперативную память, нажмите «Settings», далее в поле «CRL storage» выберите «ram» вместо «system».

С данной опцией также следует быть осторожным, т.к. она приводит к более интенсивной загрузке оперативной памяти, что может сказаться на производительности устройств с 32-64 МБ RAM.

Исходя из моих наблюдений, CRL отнимает по меньшей мере 20+ МБ. Опять же, эта цифра зависит от центра сертификации, чем крупнее центр, тем больше он выдает сертификатов, и тем больше отозванных сертификатов будет в списке (и наоборот).

Переключаем RoterOS WebFig на HTTPS

Чтобы подключить SSL для web-конфигуратора, заходим в IP – Services, включаем сервис www-ssl, выбираем сертификат из выпадающего списка.

Казалось бы, все, но нет. Сертификат у нас выдан на субдомен, поэтому IP-адрес маршрутизатора необходимо сопоставить с соответствующим доменом.

Заходим в IP – DNS, нажимаем «Static». В появившемся окошке добавляем соответствие IP-Домен, работает это точно так же как и HOSTS в Windows, с тем отличием, что данный параметр применяется ко всем клиентам, у которых маршрутизатор указан в качестве DNS-сервиса.

У меня в списке указаны 2 субдомена, это hotspot-root.zet.com.ua и hotspot.zet.com.ua. Первая запись используется для HotSpot, вторая – для доступа из локальной сети к WebFig, а точнее к странице статистики (Graphing). В данном случае сертификат Wildcard оказался как нельзя кстати.

Важно также понимать, что наличие статической DNS-записи на локальном DNS маршрутизаторе еще не гарантирует, что клиент будет его использовать, особенно если клиент – смартфон или планшет.

Для того, чтобы исключить использование стороннего DNS, можно прибегнуть к DST-NAT. Все, что нам требуется – перенаправить все запросы из локальной сети, идущие на 53-й порт на аналогичный порт самого маршрутизатора.

Настройка HTTPS / SSL для Mikrotik HotSpot

Одна из проблем, с которыми сталкиваются пользователи, пытающиеся настроить корректную работу HotSpot на Mirkotik – перехват обращений по защищенному протоколу HTTPS.

Бывают случаи, когда смартфон (планшет, ноутбук) не определяет Captive Portal и не открывает стартовую страницу. Что делает пользователь? Как правило, открывает браузер и вбивает любой известный ему сайт, или же запускает приложение. В случае с HTTP, произойдет корректная переадресация на Captive Portal. Если сайт использует HTTPS – страницу входа пользователь не увидит.

Что будет при наличии SSL-сертификата? При попытке открыть любой URL с HTTPS, браузер выдаст ошибку о невозможности проверки подлинности и дополнительно уведомит пользователя о том, что для использования данной сети необходимо авторизоваться на странице входа (со ссылкой или кнопкой). В Mozilla Firefox это уведомление отображается в виде всплывающей панели в верхней части браузера.

Для того, чтобы подключить HTTPS к HotSpot, заходим в IP – HotSpot, находим вкладку «Server Profiles», в ней выбираем профиль нашего сервера, затем во вкладке «Login» задаем параметры:
  • HTTPS;
  • SSL Certificate;

У меня активны 2 опции – HTTPS и Trial, т.к. пользователи входят в сеть с авторизацией по кнопке с предварительным показом стартовой странички. Напротив параметра SSL Certificate выбираем наш сертификат. Применяем настройки.

На этом собственно, настройка завершена. Как видите, ничего сложного нет, вся процедура занимает несколько минут, главное – наличие подходящего сертификата.

Видеокурс «Настройка оборудования MikroTik» (аналог MTCNA)

Учитесь работать с MikroTik? Рекомендую видеокурс «Настройка оборудования MikroTik». В курсе разобраны все темы из официальной учебной программы MTCNA и много дополнительного материала. Курс сочетает теоретическую часть и практику – настройку маршрутизатора по техническому заданию. Консультации по заданиям курса ведет его автор Дмитрий Скоромнов. Подойдет и для первого знакомства с оборудованием MikroTik, и для систематизации знаний опытным специалистам.

Ключевые слова:

Mikrotik RouterOS HTTPS SSL шифрование HotSpot

Комментарии:

Добавить
  • bowtiesmilelaughingblushsmileyrelaxedsmirk
    heart_eyeskissing_heartkissing_closed_eyesflushedrelievedsatisfiedgrin
    winkstuck_out_tongue_winking_eyestuck_out_tongue_closed_eyesgrinningkissingstuck_out_tonguesleeping
    worriedfrowninganguishedopen_mouthgrimacingconfusedhushed
    expressionlessunamusedsweat_smilesweatdisappointed_relievedwearypensive
    disappointedconfoundedfearfulcold_sweatperseverecrysob
    joyastonishedscreamtired_faceangryragetriumph
    sleepyyummasksunglassesdizzy_faceimpsmiling_imp
    neutral_faceno_mouthinnocent
  1. DmitryAVET
    DmitryAVET Создатель 6 декабря 2021 21:23
    + 0 -
    С Apple довольно часто проблемы, им то привязка MAC не нравится, то ещё что-то. Возможно Apple принудительно использует свои DNS или еще что-то.
  2. Юрий
    Юрий Гости 30 ноября 2021 16:04
    + 0 -
    Добрый день.
    Поставил сертификат на hotspot, но macbook все равно не хочет нормально подключаться.
    Страничка авторизации появляется. Но когда нажимаешь на ссылку "trial", выскакивает ошибка "Возникла проблема. Не удалось загрузить веб-страницу". Android и iOS телефоны подключаются нормально.
    Подскажите, пожалуйста, можно ли как-то решить проблему с macbook?

Честный отзыв о курсе по основам сетевых технологий Дмитрия Скоромнова

Несмотря на относительно большой объем материалов по Mikrotik в этом блоге, он не перекрывает и десятой части основных возможностей применения...

Базовая защита от DoS-атак и SYN-флуда на устройствах Mikrotik RouterBOARD под

В процессе повышения навыков работы с Mikrotik и RouterOS в частности, очень важно иметь в своем распоряжении дополнительное устройство RouterBOARD...

Начиная с RouterOS 6.43, Winbox будет использовать безопасное соединение с

Тем, кто пользуются устройствами Mikrotik RouterBOARD на уровне более продвинутых пользователей, хорошо известна утилита под названием Winbox. По...

Последствия неправильной настройки Mikrotik и критического бага в RouterOS

В Mikrotik уже неоднократно напоминали о необходимости своевременно обновления. К сожалению, большинство владельцев пропускают данную информацию мимо...

Есть ли смысл переходить с http на https и как это правильно сделать?

Компания Google недвусмысленно дала всем понять, что пора переходить на защищенное соединение по протоколу HTTPS. Для того чтобы простимуллировать...

Создание и настройка HotSpot на оборудовании Mikrotik под управлением RouterOS

Жизнь современного активного человека немыслима без смартфона и постоянного доступа к сети Интернет. Всё это приводит к необходимости создания...

авторизация на сайте

Забыли пароль?