Установка собственного сертификата SSL на систему EMC VNXe3200

Необходимые условия:
1. Система хранения EMC VNXe3200
2. Собственный центр сертификации на базе Windows Server

На момент написания на систему хранения EMC VNXe3200 было установлено ПО версии 3.1.8.9340299.

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

В новых версиях браузеров Chrome (58 и выше) и Firefox сертификаты, у который нет SAN атрибута, считаются недействительными, т.к. поле Common Name теперь игнорируется. В системе VNXe3200 используется оболочка EMC Unisphere, которая использует устаревшую технологию Flash. Новые Chrome и Firefox фактически уже отказались от поддержки этой технологии, так что приходится пользоваться Internet Explorer. Хоть IE пока ещё и использует поле Common Name, лучше делать сертификат по всем современным правилам.


Для начала нам нужно убедится, что мы можем подключиться к нашей системе хранения по SSH. Для этого зайдём в раздел Settings - Service System. Система попросит нас ввести сервисный пароль. Вводим тот, который указали при первоначальной настройки системы. В поле Service Action видим опцию с настройкой SSH и убеждаемся в том, что доступ включен. Если это не так, то включаем эту функцию.



После того, как мы включили доступ по SSH, пытаемся подключиться. Тут опять некоторая особенность: логином для подключения будет пользователь service, а не admin, который используется для входа на EMC Unisphere.

Также для того, чтобы передавать файлы на VNXe и обратно, нам потребуется WinSCP.

Теперь надо создать конфигурацию для формирования запроса на сертификат. Открываем блокнот и пишем:

[req]
distinguished_name = req_distinguished_name
req_extensions = v3_req
prompt = no
[req_distinguished_name]
C = RU
ST = NN
L = Tomsk
O = GUP
OU = IT
CN = emc01.gup.com
[v3_req]
keyUsage = keyEncipherment, dataEncipherment
extendedKeyUsage = serverAuth
subjectAltName = @alt_names
[alt_names]
DNS.1 = emc01.gup.com
DNS.2 = d-a-emc.gup.com


Важными параметрами тут являются subjectAltName = @alt_names. Под переменными DNS.1, DNS.2 и т.д. мы вписываем все доменные имена, по которым мы будем заходить в систему управления EMC Unisphere. Я вписал значения A и CNAME записей из нашей внутренней зоны dns. Также не забываем заполнить поле CN - то самое Common Name.

Сохраняем это в файл emc_vnxe3200.req и при помощи WinSCP переносим его на систему хранения. в директорию /cores/service

Теперь через подключение SSH (Putty, например) переходим в эту же директорию.

cd /cores/service


Теперь нам необходимо создать запрос на сертификат. Воспользуемся командами openssl.

openssl req -new -newkey rsa:2048 -nodes -keyout emc_vnxe3200.pk -out emc_vnxe3200.csr -config emc_vnxe3200.req


OpenSSL сгенерирует файл запроса (emc_vnxe3200.csr)  и файл приватного ключа (emc_vnxe3200.pk) на основе конфигурации для запроса (emc_vnxe3200.req).


Перенесём файл emc_vnxe3200.csr через WinSCP к себе на компьютер и откроем его через текстовый редактор. Мы увидим такую картину:



Это запрос на сертификат.

Открываем в IE наш центр сертификации и выбираем действие запроса сертификата.


Нам потребуется создать расширенный запрос.


Выбираем "Выдать запрос, используя base-64 шифрованный файл PKCS #10, или выдать запрос обновления, используя base-64 шифрованный файл PKCS #7."

Теперь из файла emc_vnxe3200.csr копируем весь текст и вставляем его в поле для запроса в браузере.




Обязательно выбираем соответствующий шаблон -  в нашем случае это будет шаблон для веб-сервера.

Нажимаем Выдать. Если Центр сертификации настроен на автоматическую выдачу, то вы сразу получите сертификат, если нет, то возможно потребуется дополнительное одобрение в центре сертификации.

Далее, выбираем шифрование Base64, чтобы получить сертификат нужного формата. Если у вас используется топология PKI с промежуточными центрами сертификации, то желательно установить пункт "загрузить цепочку сертификатов", чтобы в одном файле была вся цепочка, включая и ваши корневые и промежуточные сертификаты. На выходе получим файл certnew.p7b.


Т.к. центр сертификации Windows выдаёт сертификат в формате PKCS #7, нам надо его переконвертировать в формат PEM понятный системе VNXe. Для этого воспользуемся всё той же утилитой openssl.
openssl pkcs7 -print_certs -in "C:\OpenSSL-Win32\bin\emc3\certnew.p7b" -out "C:\OpenSSL-Win32\bin\emc3\emc_vnxe3200.crt"

У меня openssl установлен в Windows, но эту же операцию можно проделать и на самой системе VNXe.

Копируем файл emc_vnxe3200.crt при помощи WinSCP в нашу директорию /cores/service

Теперь у нас в директории должно быть 4 файла:
emc_vnxe3200.crt - файл сертификата, которым мы только что сгенерировали
emc_vnxe3200.csr - файл запроса для генерации сертификата
emc_vnxe3200.pk - файл приватного ключа
emc_vnxe3200.req - файл конфигурации для формирования запроса на сертификат



Важное замечание: необходимо, чтобы левые части имён файлов сертификата и приватного ключа до точки были одинаковыми!

Теперь можно установить полученный сертификат в систему VNXe.

Для этого воспользуемся специальной командой:

svc_custom_cert emc_vnxe3200

Не указываем никаких расширений - только левая часть. Скрипт сам найдёт файл сертификата и приватного ключа.
После небольшой паузы мы получаем сообщение, что сертификаты корректно установлены.

Но это ещё не всё.

Теперь нам надо перезагрузить сервис управления EMC Unisphere. Делается следующей командой:

svc_restart_service restart MGMT


Надпись "Found ECOM on spa" говорит о том, что сервис перезапущен, но и это ещё не всё. Если мы попытаемся зайти на нашу систему через браузер, то увидим старый сертификат.

Чтобы система подхватила наш новый сертификат, нужно провернуть следующее действие:
Идём в серверную и выдёргиваем кабель из порта для управления системой. Ждём, когда произойдёт аварийное переключение на резервный интерфейс управления. И вставляем кабель. Теперь аналогичную операцию нужно повторить со вторым интерфейсом управления.

После всех этих манипуляций, пробуем зайти на нашу систему и видим наш правильный сертификат.

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

Отправить комментарий