Добавление TLS-сертификата
Этапы добавления TLS-сертификата:
-
Добавление удостоверяющего центра в доверенные на целевом хосте или узлах кластера
-
Перезагрузка целевого хоста или узлов кластера
-
Заполнение файла config.yml выполняется при подготовке управляющего хоста.
После подготовки управляющего хоста выполняется запуск развертывания модуля zVirt DC Manager.
1. Требования к сертификату
Обязательные поля в сертификате:
-
CN (Common Name) — поле, содержащее доменное имя хоста, для которого выдается сертификат
-
SAN (Subject Alternative Name) — поле, содержащее все доменные имена, по которым пользователи и компоненты будут обращаться к сервисам zVirt DC Manager
|
Если используются разные внутреннее доменное имя и внешнее доменное имя (domain_int и domain_ext в файле hosts) — необходимо в сертификате также указать внешнее доменное имя, например *.orionsoft.ru. |
Пример
DNS:*.dcmanager.sample.box (1)
DNS:*.nexus.dcmanager.sample.box (2)
DNS:*.orionsoft.ru (3)
Где:
| 1 | — поле CN |
| 2 | — поле SAN |
| 3 | — поле SAN с внешним доменным именем |
2. Формат сертификата
Требования к формату сертификата:
-
Все значения сертификатов и ключей должны быть в формате PEM. PEM — текстовый формат со строками BEGIN и END:
Строки BEGIN и END — часть PEM-содержимого, убирать их нельзя.
-----BEGIN----- ... (1) -----END-----1 — содержимое сертификата или ключа -
Приватный ключ должен быть без пароля
При наличии пароля автоматический запуск сервисов может завершиться ошибкой.
3. Добавление удостоверяющего центра в доверенные на целевых хостах
Перед заменой сертификата zVirt DC Manager необходимо, чтобы операционная система на целевом хосте или, если zVirt DC Manager устанавливается в режиме High Availability, на всех узлах кластера доверяла удостоверяющему центру (далее — CA), который подписал TLS-сертификат.
|
CA нужно добавить в доверенные до запуска развертывания модуля zVirt DC Manager. В противном случае сервисы, которые обращаются по HTTPS как к внутренним, так и к внешним ресурсам, могут выдавать ошибку x509: unknown authority. |
Чтобы добавить CA в доверенные:
-
Добавьте цепочку сертификатов CA (CA chain) в доверенные сертификаты операционной системы:
-
на каждом узле кластера для режима установки High Availability
-
на целевом хосте для режима установки Single Instance
-
-
Перезагрузите целевой хост или узлы кластера.
Перезагрузка рекомендуется, чтобы гарантировать применение новых доверенных CA и сбросить долгоживущие соединения и кеш-состояния сервисов и среды запуска контейнеров. На разных операционных системах и версиях компонентов применение новых настроек может отличаться, перезагрузка делает результат предсказуемым.
4. Заполнение config.yml
|
Ниже описаны только те поля в файле config.yml, которые заполняются для добавления TLS-сертификата. Описание других полей — в разделе Подготовка управляющего хоста. |
Для добавления TLS-сертификата в config.yml должны быть заполнены поля:
-
tls_ca_cert — цепочка сертификатов (CA chain)
Важен порядок заполнения поля.
Если существует только корневой сертификат (Root CA), то указывается только он.
Если есть корневой (Root CA) и промежуточный (Intermediate CA) сертификаты, то они указываются в одной переменной подряд, в следующей последовательности: сначала Intermediate CA, затем Root CA. Например:
tls_ca_cert: | -----BEGIN CERTIFICATE----- ... intermediate CA cert ... -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- ... root CA cert ... -----END CERTIFICATE-----Обычно встречается один Intermediate CA. Если Intermediate CA несколько — они записываются по цепочке. Например:
tls_ca_cert: | -----BEGIN CERTIFICATE----- ... Intermediate-2 ... -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- ... Intermediate-1 ... -----END CERTIFICATE----- -----BEGIN CERTIFICATE----- ... Root CA cert ... -----END CERTIFICATE----- -
tls_cert — серверный сертификат
Записывается в формате:
tls_cert: | -----BEGIN CERTIFICATE----- ... server certificate ... -----END CERTIFICATE----- -
tls_key — приватный ключ сервера
Записывается в формате:
tls_key: | -----BEGIN PRIVATE KEY----- ... private key ... -----END PRIVATE KEY-----
5. Запуск развертывания модуля zVirt DC Manager
После выполнения действий, описанных выше, а также подготовки управляющего хоста выполняется стандартный запуск развертывания модуля zVirt DC Manager.