Это жесть. Звезда в шоке. Народ, я много разных железок встречал, но NetBotz Rack Monitor 250 — самая дебильная из всех в плане установки SSL сертификата. Разработчикам железа и документации к нему нужно нарисовать большой минус в трудовую книжку. Со мной солидарны мои коллеги из других стран:
I'll start by saying that I am disappointed in APC/Schneider for the inexcusably poor documentation on this subject. Whoever 'wrote' and signed off the 3/2021 NetBotz 250 User Guide should hang their collective heads in shame. You are supposedly professionals developing premium product, so please put more effort into the documentation.
Наша задача — установить корпоративный сертификат. Всякие PCI DSS и прочие политики информационной безопасности диктуют свои правила эксплуатации. Я бы самоподписанный сертификат оставил, но по правилам не могу. Самоподписанный сертификат устанавливается просто, удаляем все сертификаты и железка генерирует собственный серт. Итак, будем ставить корпоративный SSL сертификат.
Подготовка к установке сертификата
Прежде чем устанавливать сертификат, нужно немного размяться. Нам понадобится специальная утилита под винду, которую в документации называют Security Wizard, но на самом деле она называется NMCSecurityWizardCLI. Достать утилиту можно на сайте производителя, однако есть две проблемы:
- Производитель закрыл доступ к сайту для России
- На сайте выложена утилита NMCSecurityWizardCLI версии 1.0.1, она нерабочая.
Первая проблема обходится с помощью VPN. Вторая проблема обходится использованием утилиты NMCSecurityWizardCLI версии 1.0.0, вот только достать её сложно, но можно. Я скачал и разместил её в своей "Сборке для системного администратора":
Качаем и распаковываем:
Все операции с утилитой будем выполнять в командной строке под администратором.
Утилиту подготовили, приступаем к генерации сертификата.
Генерация SSL сертификата
Повторю: используем NMCSecurityWizardCLI версии 1.0.0.
Для начала нужно сгенерировать SCR запрос и приватный ключ.
NMCSecurityWizardCLI.exe --csr -o psp-skud00 -n psp-skud00.ilo.psp.local -c RU -m "MOSCOW" -l "MOSCOW" -g "PSP" -u "IT" -e admin@psp.local -i https://psp-skud00.ilo.psp.local -d psp-skud00.ilo.psp.local -a 10.24.51.18 -k 2048
- -o — имя файла без расширения для запроса и ключа
- -n — CN
- -с — страна
- -m — регион
- -l — город
- -g — организация
- -u — отдел
- -e — email
- -i — HTTPS ссылка
- -d — доменное имя устройства, у меня домен четвёртого уровня
- -a — альтернативный атрибут, IP адрес
- -k — длина ключа, можно 1024 и 2048
Утилита генерирует два файла:
- CSR — запрос сертификата для центра сертификации
- P15 — ключ
Берём CSR и подписываем его в корпоративном центре сертификации. Открываем центр сертификации.
Request a certificate.
Advanced certificate request.
Вставляем содержимое CSR файла. Выбираем шаблон. Вот здесь я сделал ошибку, нужно использовать классический шаблон Web Server. Мой шаблон почему-то не подошёл.
Submit.
Выбираем Base 64 encoded и скачиваем подписанный сертификат.
Сохраняем его как CER файл. Имя такое же как у CSR файла.
Теперь нам нужно слепить ключ и сертификат в один PKCS#15 файл.
NMCSecurityWizardCLI.exe --import -o psp-skud00_p15cert -s psp-skud00.cer -p psp-skud00
- -o — имя генерируемого файла без расширения
- -s — имя сертификата с расширением
- -p — имя ключа без расширения
Получаем нужный нам файл:
- psp-skud00_p15cert.p15
Утилита генерирует ему такое же расширение как у ключа P15, поэтому имя нужно задавать отличное от имени ключа.
Загрузка SSL сертификата
Полученный файл загружаем в UI. Configuration → Network → Web → SSL Certificate.
Add or Replace, выбираем файл.
Apply. Файл загружается. Статус Loading certificate...
Ждём минуту и пытаемся войти по HTTPS.
Если сертификат подошёл, то он будет применён.
Перезагружаем интерфейс управления. Статус меняется на Valid certificate.
Примечания и грабли
Schneider Electric закрыла доступ к своему сайту для России. Понадобится VPN.
NMCSecurityWizardCLI версии 1.0.1 выдаёт ошибку, нужно использовать NMCSecurityWizardCLI версии 1.0.0.
Нужно использовать классический шаблон Web Server при подписывании сертификата.
Если сертификат по каки-то причинам системе не понравился, то она сгенерирует новый самоподписанный сертификат:
SSL Error: Invalid certificate.
SSL: Certificate generation started.
SSL: Certificate generation complete.
В этом случае нужно сделать перекур и заново сгенерировать сертификат, уже без ошибок.