Для улучшения работы сайта мы используем файлы cookies. Оставаясь на сайте, вы соглашаетесь с политикой обработки персональных данных.

Добавление TLS-сертификата

Этапы добавления TLS-сертификата:

  1. Добавление удостоверяющего центра в доверенные на целевом хосте или узлах кластера

  2. Перезагрузка целевого хоста или узлов кластера

  3. Заполнение config.yml

    Заполнение файла config.yml выполняется при подготовке управляющего хоста.

    После подготовки управляющего хоста выполняется запуск развертывания модуля zVirt DC Manager.

1. Требования к сертификату

Обязательные поля в сертификате:

  • CN (Common Name) — поле, содержащее доменное имя хоста, для которого выдается сертификат

  • SAN (Subject Alternative Name) — поле, содержащее все доменные имена, по которым пользователи и компоненты будут обращаться к сервисам zVirt DC Manager

Если используются разные внутреннее доменное имя (domain_int) и внешнее доменное имя (domain_ext) — необходимо в сертификате также указать внешнее доменное имя, например *.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 в доверенные:

  1. Добавьте цепочку сертификатов CA (CA chain) в доверенные сертификаты операционной системы:

    • на каждом узле кластера для режима установки High Availability

    • на целевом хосте для режима установки Single Instance

  2. Перезагрузите целевой хост или узлы кластера.

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

4. Заполнение config.yml

Ниже описаны только те поля в файле config.yml, которые заполняются для добавления TLS-сертификата. Описание других полей — в разделе Подготовка управляющего хоста.

Для добавления TLS-сертификата в config.yml должны быть заполнены поля:

  1. 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-----
  2. tls_cert — серверный сертификат

    Записывается в формате:

    tls_cert: |
      -----BEGIN CERTIFICATE-----
      ... server certificate ...
      -----END CERTIFICATE-----
  3. tls_key — приватный ключ сервера

    Записывается в формате:

    tls_key: |
      -----BEGIN PRIVATE KEY-----
      ... private key ...
      -----END PRIVATE KEY-----

5. Запуск развертывания модуля zVirt DC Manager

После выполнения действий, описанных выше, а также подготовки управляющего хоста выполняется стандартный запуск развертывания модуля zVirt DC Manager.