5.2.2.1. Корневые сертификаты
Центр сертификации (CA) — это доверенный источник, выпускающий корневые сертификаты, которые используются для подписи всех остальных сертификатов внутри кластера Kubernetes.
Сертификаты CA играют ключевую роль в установлении доверия между компонентами, обеспечивая аутентификацию, шифрование и целостность коммуникаций.
В этом разделе описывается процесс получения корневых (root) сертификатов, которые используются для подписи остальных сертификатов в кластере Kubernetes.
- Init
- Join
Создание корневых сертификатов
● Обязателен к применению
Создание корневых сертификатов
● Обязателен к применению
- Kubernetes ЦА
- FrontProxy ЦА
- ETCD ЦА
Kubernetes CA
Обратите внимание: данный блок описывает только процесс создания корневых сертификатов Kubernetes CA
.
- HardWay
- Kubeadm
Рабочая директория
mkdir -p /etc/kubernetes/openssl
mkdir -p /etc/kubernetes/pki
Конфигурация
cat <<EOF > /etc/kubernetes/openssl/ca.conf
[req]
distinguished_name = req_distinguished_name
x509_extensions = v3_ca
prompt = no
[req_distinguished_name]
CN = kubernetes
[v3_ca]
keyUsage = critical, keyCertSign, keyEncipherment, digitalSignature
basicConstraints = critical,CA:TRUE
EOF
Генерация приватного ключа
openssl genrsa \
-out /etc/kubernetes/pki/ca.key 2048
Генерация публичного ключа
openssl req \
-x509 \
-new \
-nodes \
-key /etc/kubernetes/pki/ca.key \
-sha256 \
-days 3650 \
-out /etc/kubernetes/pki/ca.crt \
-config /etc/kubernetes/openssl/ca.conf
Проверка готовности сертификата
Данный раздел зависит от следующих разделов:
/etc/kubernetes/openssl/cert-report.sh /etc/kubernetes/pki/ca.crt
CERTIFICATE AUTHORITY EXPIRES RESIDUAL TIME EXTERNALLY MANAGED
ca Oct 20, 2034 22:04 UTC 9y no
Генерация сертификатов
kubeadm init phase certs ca \
--config=/var/run/kubeadm/kubeadm.yaml
После выполнения команд получаем следующий вывод.
#### Create Kubernetes CA
[certs] Generating "ca" certificate and key
FrontProxy CA
Обратите внимание: данный блок описывает только процесс создания корневых сертификатов Front Proxy CA
.
- HardWay
- Kubeadm
Рабочая директория
mkdir -p /etc/kubernetes/openssl
mkdir -p /etc/kubernetes/pki
Конфигурация
cat <<EOF > /etc/kubernetes/openssl/front-proxy-ca.conf
[req]
distinguished_name = req_distinguished_name
x509_extensions = v3_ca
prompt = no
[req_distinguished_name]
CN = front-proxy-ca
[v3_ca]
keyUsage = critical, keyCertSign, keyEncipherment, digitalSignature
basicConstraints = critical,CA:TRUE
EOF
Генерация приватного ключа
openssl genrsa \
-out /etc/kubernetes/pki/front-proxy-ca.key 2048
Генерация публичног о ключа
openssl req \
-x509 \
-new \
-nodes \
-key /etc/kubernetes/pki/front-proxy-ca.key \
-sha256 \
-days 3650 \
-out /etc/kubernetes/pki/front-proxy-ca.crt \
-config /etc/kubernetes/openssl/front-proxy-ca.conf
Проверка готовности сертификата
Данный раздел зависит от следующих разделов:
/etc/kubernetes/openssl/cert-report.sh /etc/kubernetes/pki/front-proxy-ca.crt
CERTIFICATE AUTHORITY EXPIRES RESIDUAL TIME EXTERNALLY MANAGED
front-proxy-ca Oct 20, 2034 22:04 UTC 9y no
Генерация сертификатов
kubeadm init phase certs front-proxy-ca \
--config=/var/run/kubeadm/kubeadm.yaml
После выполнения команд получаем следующий вывод.
#### Create Front Proxy CA
[certs] Generating "front-proxy-ca" certificate and key
ETCD CA
Обратите внимание: данный блок описывает только процесс создания корневых сертификатов ETCD CA
.
- HardWay
- Kubeadm
Рабочая директория
mkdir -p /etc/kubernetes/openssl
mkdir -p /etc/kubernetes/pki/etcd
Конфигурация
cat <<EOF > /etc/kubernetes/openssl/etcd-ca.conf
[req]
distinguished_name = req_distinguished_name
x509_extensions = v3_ca
prompt = no
[req_distinguished_name]
CN = "etcd-ca"
[v3_ca]
keyUsage = critical, keyCertSign, keyEncipherment, digitalSignature
basicConstraints = critical,CA:TRUE
EOF
Генерация приватного ключа
openssl genrsa \
-out /etc/kubernetes/pki/etcd/ca.key 2048
Генерация публичного ключа
openssl req \
-x509 \
-new \
-nodes \
-key /etc/kubernetes/pki/etcd/ca.key \
-sha256 \
-days 3650 \
-out /etc/kubernetes/pki/etcd/ca.crt \
-config /etc/kubernetes/openssl/etcd-ca.conf
Проверка готовности сертификата
Данный раздел зависит от следующих разделов:
/etc/kubernetes/openssl/cert-report.sh /etc/kubernetes/pki/etcd/ca.crt
CERTIFICATE AUTHORITY EXPIRES RESIDUAL TIME EXTERNALLY MANAGED
etcd-ca Oct 20, 2034 22:04 UTC 9y no