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

Пользовательские сертификаты для Ingress-ресурсов

При установке Nova Container Platform вы можете указать цепочку сертификатов собственного центра сертификации, которая будет использована в ходе установки Nova Container Platform для инициализации центра сертификации nova-kubernetes-pki-ingress. Данный центр сертификации используется по умолчанию в платформе для всех Ingress-ресурсов.

1. Предварительные условия

  • Вы ознакомились с блоком конфигурации параметров собственного CA-сертификата.

  • Вы подготовили сертификат корневого центра сертификации в формате pem.

  • Вы подготовили сертификат промежуточного центра сертификации в формате pem со сроком действия не менее двух лет с текущей даты.

  • Вы подготовили зашифрованный приватный ключ промежуточного центра сертификации.

При подготовке сертификата промежуточного центра сертификации, рекомендуется ограничить возможность подписи этим сертификатом других промежуточных центров сертификации параметром pathlen с помощью стандартных расширений basicConstraints = critical, CA:true, pathlen:0.

2. Подготовительные действия

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

Пример

openssl rsa -in intermediateCA/private/intermediate.key.pem -aes256 -out intermediateCA/private/intermediate.key.pem.crypted

writing RSA key
Enter pass phrase:

На запрос Enter pass phrase: введите парольную фразу.

На этапе запуска установки Nova Container Platform вам будет необходимо указать парольную фразу для продолжения установки.

Пример

nova-ctl bootstrap --ssh-key key.pem --ssh-user nova-installer
Enter ingress CA key passphrase:

Сертификаты корневого и промежуточного центров сертификации, а также приватный ключ промежуточного центра сертификации передаются в виде строки с данными, закодированными в base64.

Закодируйте сертификаты и приватный ключ промежуточного центра сертификации в base64.

Пример

cat rootCA/certs/ca.cert.pem | base64 -w0
cat intermediateCA/certs/intermediate.cert.pem | base64 -w0
cat intermediateCA/private/intermediate.key.pem.crypted | base64 -w0

3. Пример файла конфигурации установки

Ниже представлен пример файла конфигурации установки Nova Container Platform с использованием собственного центра сертификации для выпуска сертификатов Ingress-ресурсов.

Пример

apiVersion: "config.nova-platform.io/v1alpha3"
kind: "Infrastructure"
metadata:
  name: "cluster"
spec:
  customerID: "5d4a2c84b6e22323"
  licenseKey: "a098f0aefdc022b643c2eb76c1cad0a8"
  version: "v1.1.0"
  infrastructureProvider:
    none: {}
  clusterNodes:
    master:
      - networkSpec:
          ip: "172.31.101.24"
          hostname: "master.nova.internal"
        state: "present"
    worker:
      - networkSpec:
          ip: "172.31.101.25"
          hostname: "worker.nova.internal"
        state: "present"
    infra:
      - networkSpec:
          ip: "172.31.101.26"
          hostname: "infra.nova.internal"
        state: "present"
    ingress:
      - networkSpec:
          ip: "172.31.101.27"
          hostname: "ingress.nova.internal"
        state: "present"
  clusterConfiguration:
    dnsBaseDomain: "apps.cls01.nova.internal"
    extraOptions:
      ingressTLSConfig:
        externalCA:
          tlsConfig:
            ca: "LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tC.." (1)
            cert: "LS0tLS1CRUdJTiBDRVJdGbUSUdmMyTnZkek.." (2)
            key: "LS0tLS1CRUdJTiBFTkNSWVBURUQgUFJJVkFU.." (3)
1 Сертификат корневого центра сертификации, закодированный в base64.
2 Сертификат промежуточного центра сертификации, закодированный в base64.
3 Зашифрованный приватный ключ промежуточного центра сертификации, закодированный в base64.