mTLS в регионе

Использование mTLS в KeyStack

mTLS (Mutual TLS) — это режим использования протокола TLS (Transport Layer Security), обеспечивающего шифрование, целостность данных и аутентификацию, при котором обе стороны соединения (клиент и сервер) проверяют друг друга с помощью сертификатов X.509. При работе протокола mTLS клиент также должен предоставить действительный сертификат, выданный доверенным центром сертификации (CA). Это обеспечивает двустороннюю аутентификацию, повышая безопасность соединения, т.к. данные передаются в зашифрованном виде. Данный протокол позволяет обеспечить безопасное взаимодействие между сервисами и защитить API.

Компоненты KeyStack, поддерживающие протокол mTLS

Сервис

internal mTLS

external mTLS

OpenStack:

  • neutron client

  • nova client

  • cinder client

  • glance client

  • keystone client

AdminUI

DRS

HA

Prometheus

Haproxy

Memcached

VictoriaMetrics

Настройка mTLS в регионе

На Портале администратора протокол mTLS включается для внутренних и внешних соединений для каждого региона отдельно.

Для перевода компонентов на протокол mTLS, выполните следующие действия:

Примечание

Перед включением mTLS рекомендуется сделать резервное копирование MariaDB и проверить что все сервисы работают штатно. Обновить уже существующий кластер на mTLS без нарушения кворума возможно только с полной остановкой кластера.

  1. Откройте веб-интерфейс GitLab.

  2. Убедитесь, что в файле <region_name>/globals.d/REGION.yml репозитория региона для параметров kolla_enable_tls_backend и rabbitmq_enable_tls установлено значение "yes".

  3. Установите следующие параметры в файле <region_name>/globals.d/REGION.yml:

    kolla_enable_mtls_internal: "yes"
    kolla_enable_mtls_external: "yes"
    
  4. Создайте новый пайплайн: Build > Pipelines > New Pipeline.

  5. Запустите пайплайн и задачу deploy в созданном пайплайне.

  6. Дождитесь завершения выполнения задачи.

Для отключения протокола mTLS, выполните следующие действия:

  1. Откройте веб-интерфейс GitLab.

  2. Установите следующие параметры в файле <region_name>/globals.d/REGION.yml:

    kolla_enable_mtls_external: "no"
    
  3. Создайте новый пайплайн: Build > Pipelines > New Pipeline.

  4. Запустите пайплайн и задачу deploy в созданном пайплайне.

  5. Дождитесь завершения выполнения задачи.

Если требуется отключение протокола mTLS kolla_enable_mtls_internal, свяжитесь со службой поддержки.

Проверка работоспособности mTLS для пользовательского интерфейса

Чтобы проверить работоспособность mTLS для пользовательского интерфейса, выполните действия, описанные в разделе Использование Horizon и AdminUI c 2FA.