Мы получили настоящий, подписанный SSL-сертификат для управления нашим Микротиком через HTTPS.
Нам нужны три файла:
— сертификат, подписанным неким провайдером сертификатов — файл «my.crt»;
— приватный ключ — файл «my.key»;
— промежуточные сертификаты (корневой и этого провайдера) вместе в одном файле — файл «im.crt»;
Загружаем эти файлы на Микротик через меню Files.
По моему опыту лучше начать с импорта промежуточного сертификата, иначе может случиться, что система выдаст в логи сообщение о неправильной подписи сертификата. Впрочем, возможно, это не помешает и уладится после загрузки промежуточных сертификатов.
В разделе System — Certificates нажимаем кнопку Import и в выпадающем меню «Only File», выбираем файла «im.crt» и нажимаем кнопку «Import». В моём случае появилось два сертификата, т.к. у нас в файле их два. Вероятно, можно импортировать их и по-отдельности, но я не пробовал, просто взял тот файл, который я использовал для Апача.
Затем так же загружаем файл с подписанным сертификатом «my.crt». Он должен появиться в списке сертификатов и перед ним буквы L (crl) и T (trusted).
Теперь надо добавить наш приватный ключ — делаем это так же через Import, после чего возле уже появившегося после предыдущего шага сертификата появится буква K (private-key).
Теперь осталось указать веб-серверу Микротика использовать наш сертификат — в разделе IP — Services — www-ssl меню Certificate. Без этого HTTPS может не работать и выдавать ошибку «ERR_SSL_VERSION_OR_CIPHER_MISMATCH».
Убедитесь, что у вас есть другой вход, например, ssh или простой HTTP, т.к. ошибка с сертификатами может привести к тому, что вы не сможете зайти через HTTPS. Также можно подстраховаться и нажать кнопку «Safe Mode», главное потом, если всё нормально, не забыть отжать эту кнопку, иначе роутер перезагрузится и ваши изменения пропадут.
Включите, если она ещё не включена, службу www-ssl в разделе IP — Services и проверьте подключение через HTTPS. Если всё нормально, то можно отключить простой HTTP.
Дополнение про обновление сертификата
Обновить только подписанный сертификат у меня не получилось — импортировал новый и пропала связь по HTTPS. Далее пришлось всё делать через SSH, а файлы сертификатов загружать на Микротик через SFTP.
Проще удалить все сертификаты и добавить заново:
certificate remove 0
certificate remove 1
certificate remove 2
certificate import file-name=im.crt
certificate import file-name=my.crt
certificate import file-name=my.key
В результате в выводе команды «certificate pr detail» у меня получилось два промежуточных сертификата и один приватный, причём приватный должен иметь отметки «KL T» (K — private-key, L — crl, T — trusted). В этом же выводе смотрим имя сертификата 'name=«my.crt_0»'
Затем надо проверить привязан ли сертификат к службе www-ssl:
ip service print detail where name=www-ssl
"номер_службы" name="www-ssl" port=443 address="" certificate=*A
У меня не привязан, т.к. имя сертификата изменилось
Указываем новое имя:
ip service set "номер_службы" certificate=my.crt_0
Проверяем:
ip service pr detail where name=www-ssl
0 name="www-ssl" port=443 address="" certificate=my.crt_0
Проверяем HTTPS — работает.