Вики IT-KB

Пошаговые руководства, шпаргалки, полезные ссылки...

Инструменты пользователя

Инструменты сайта


hewlett-packard:replacing-self-signed-ssl-certificate-to-domain-ca-signed-on-storage-hpe-msa-p2000-g3-1050-2050-2052-2060-2062

Замена само-подписанного SSL-сертификата на СХД HPE MSA P2000 G3/2050/2052/2060/2062

Одна из задач по настройке контроллеров управления СХД HP MSA P2000 G3 или HPE MSA 2050/2060 – замена SSL сертификата, используемого для защиты соединения со встроенным веб-сервером, не может быть выполнена через графический веб-интерфейс. Однако существует возможность замены сертификата через интерфейс командной строки, которая описана, например, в руководстве HPE MSA 1050/2050 CLI Reference Guide. В этой заметке мы рассмотрим пример замены SSL сертификата.


Получаем текущую информацию

Подключимся к контроллеру управления СХД по протоколу SSH и выполним команды получения информации о текущих установленных сертификатах на контроллерах А и B:

# show certificate a
# show certificate b

Из вывода этих команд мы видим, что в данный момент на контроллерах установлен само-подписанный SHA256-сертификат. Далее мы выполним ряд действий, которые помогут нам выполнить замену само-подписанного сертификата на сертификат, выпущенный доменным центром сертификации, используемым внутри локальной корпоративной сети.



Подготовка файлов сертификата

Создать запрос на сертификат к корпоративному ЦС с нужными нам параметрами можно с помощью утилиты openssl. В первую очередь сгенерируем для будущего сертификата закрытый ключ RSA:

openssl genrsa -out hpe-msa-2052.key 2048

В результате выполнения команды закрытый ключ сертификата будет записан в файл hpe-msa-2052.key.

Создадим конфигурационный файл hpe-msa-2052.cfg для последующей генерации бинарного запроса на сертификат с помощью утилиты openssl. В этом файле будут описаны параметры будущего сертификата с поддержкой альтернативных имён Subject Alternative Name. В качестве основного имени будем использовать общее FQDN-имя, используемое в DNS для обоих контроллеров СХД. В качестве альтернативных имён будем использовать краткое имя и IP-адресы обоих контроллеров.

hpe-msa-2052.cfg
[req]
distinguished_name = req_distinguished_name
req_extensions = v3_req  
 
[req_distinguished_name]
commonName = FQDN of server
commonName_default = KOM-MSA04.holding.com
countryName = Country Name (2 letter code)
countryName_default = RU
0.organizationName = Organization Name (eg, company)
0.organizationName_default = IT Ltd.
localityName = Locality Name (eg, city)
localityName_default = Syktyvkar
organizationalUnitName = Organizational Unit Name (eg, section)
organizationalUnitName_default = Branch KO
 
[v3_req]
subjectAltName = @alt_names
 
[alt_names]
DNS.1 = KOM-MSA04.holding.com
DNS.2 = KOM-MSA04
IP.1 = 10.0.0.2
IP.2 = 10.0.0.3

Сгенерируем бинарный файл запроса сертификата (hpe-msa-2052.req) на основе ранее сгенерированного закрытого ключа (hpe-msa-2052.key) и конфигурационного файла hpe-msa-2052.cfg:

openssl req -config hpe-msa-2052.cfg -new -key hpe-msa-2052.key -out hpe-msa-2052.req

В процессе генерации файла запроса, утилита openssl будет предлагать вводить значения параметров, для которых мы можем просто нажимать Enter, чтобы бралось уже описанное в конфигурационном файле значение.

Получившийся в результате бинарный файл запроса hpe-msa-2052.req отправляем администратору корпоративного ЦС и получаем от него в ответ файл готового сертификата в формате Base-64 - hpe-msa-2052.cert, который будет иметь примерно следующий вид:

hpe-msa-2052.cert
-----BEGIN CERTIFICATE-----
MIIExDCAAAhWxDyTyCtCSPAACAACA6ygAwIBAgITEwACFTANBgkqhkiG9w0BAQsF
...
...
vnOeY8QZAw5WlB5CwC3M4Rkf4q12Wfu3HS272M6drrCw9uwrWAIi5DsFywEh0l+j
YwMFd6k+ETtYPlkvdCPJNxo/mPZxOJA7
-----END CERTIFICATE-----

Если сертификат получен из ЦС в бинарном формате DER то сконвертировать в PEM-формат, понятный для MSA, можно так:

C:\Tools\OpenSSL>openssl x509 -in hpe-msa-2052.cer -inform d -out hpe-msa-2052.cert

Помимо самого сертификата для СХД нам потребуется сертификат корневого ЦС и сертификаты всех промежуточных ЦС (если таковые имеются).

Собираем в один файл сертификат для СХД, а также сертификаты корневого ЦС и всех промежуточных ЦС в следующем формате:

hpe-msa-2052-bundle.cer
-----BEGIN CERTIFICATE-----
… Base-64 cодержимое сертификата для СХД …
-----END CERTIFICATE-----
-----BEGIN CERTIFICATE-----
… Base-64 cодержимое cертификатf промежуточного ЦС (если используются) …
-----END CERTIFICATE-----
-----BEGIN CERTIFICATE-----
… Base-64 cодержимое cертификата коневого ЦС …
-----END CERTIFICATE-----

Сохраняем файл с именем, например, hpe-msa-2052-bundle.cer. Этот файл, совместно с файлом закрытого ключа hpe-msa-2052.key, мы и будем использовать для установки на контроллеры управления СХД.



Включение поддержки протокола FTP

Выполнить передачу файлов сертификата на контроллеры СХД мы сможем через протокол FTP. Для этого, сначала потребуется включить данный протокол включен на контроллере, так как в конфигурации по умолчанию он выключен. Снова подключимся к контроллеру управления СХД по протоколу SSH и проверим состояние всех протоколов командой:

# show protocols

Как видим, протокол FTP выключен. Чтобы включить его, выполним команду:

# set protocols ftp enabled



Установка файлов сертификата на СХД

Открываем командную строку (cmd.exe на Windows) и командой cd меняем рабочий каталог на каталог с файлами сертификата hpe-msa-2052-bundle.cer и закрытого ключа hpe-msa-2052.key. В нашем случае это каталог C:\Tools\OpenSSL.

cd /d C:\Tools\OpenSSL

Начинаем ftp-сессию:

ftp KOM-MSA04

При запросе вводим имя пользователя и пароль:

Когда FTP-подключение будет установлено, выполняем команду отправки файла сертификата hpe-msa-2052-bundle.cer:

put hpe-msa-2052-bundle.cer cert-file

После успешной отправки файла сертификата, выполняем команду отправки файла закрытого ключа hpe-msa-2052.key:

put hpe-msa-2052.key cert-key-file

Предупреждение вида «Warning: The uploaded SSL certificate's Common Name (CN) does not match the system hostname. Ensure that the CN matches the fully-qualified domain name.» в нашем случае можно проигнорировать, так как мы используем SAN-сертификат, в который уже включены все необходимые имена.

Завершаем FTP-сессию командой quit

Обратите внимание на то, что таким образом заменяется сертификат только одного из контроллеров СХД. То есть процедуру потребуется выполнить два раза, подключаясь по FTP на IP каждого отдельно взятого контроллера.

После установки нового сертификата перезагружаем каждый из контроллеров СХД по очереди командами вида:

# restart mc a
# restart mc b

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

После перезагрузки контроллеров управления последующие подключения к веб-оболочке управления СХД будут уже использовать новый установленный нами сертификат.



Выключение поддержки протокола FTP

После того, как сертификат передан на контроллеры управления, протокол FTP нам больше не понадобится и, в целях безопасности, лучше его отключить:

# set protocols ftp disabled



Откат на само-подписанный сертификат

Если в ходе замены сертификата возникли какие-то проблемы и веб-оболочка контроллеров управления перестала адекватно работать с новым сертификатом, то может потребоваться возврат к само-подписанному сертификату, который генерирует сам контроллер управления. Чтобы сгенерировать само-подписанный сертификат, и заодно удалить нами установленный сертификат, можно выполнить команду:

# create certificate restore

Проверено на следующих конфигурациях:

Модель СХД Версия firmware
HP MSA P2000 G3 TS252P005 (Bundle 21.10.2016)
HPE MSA 2052 VL270P005 (Bundle 18.08.2020)
HPE MSA 2062 IN100P003

Автор первичной редакции:
Алексей Максимов
Время публикации: 06.09.2020 13:43

Обсуждение

Ваш комментарий:
 
hewlett-packard/replacing-self-signed-ssl-certificate-to-domain-ca-signed-on-storage-hpe-msa-p2000-g3-1050-2050-2052-2060-2062.txt · Последнее изменение: 28.09.2021 14:53 — Алексей Максимов

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki