# CA key openssl genrsa -out ca.key 2048 # CA csr openssl req -new -key ca.key -subj "/CN=KUBERNETES-CA" -out ca.csr # CA crt (self-signed) openssl x509 -req -in ca.csr -signkey ca.key -out ca.crt # admin key openssl genrsa -out admin.key 2048 # admin csr (в subj нужно писать реальное имя аутентификации, и, например, добавить группу) openssl req -new -key admin.key -subj "/CN=kube-admin/O=system:masters" -out admin.csr # admin crt (ca signed) openssl x509 -req -in admin.csr -CA ca.crt -CAkey ca.key -out admin.crt # для системных компонентов к имени нужно добавить "SYSTEM:", например openssl req -new -key kube-scheduler.key -subj "/CN=system:kube-scheduler" -out kube-scheduler.csr openssl req -new -key kube-controller-manager.key -subj "/CN=system:kube-controller-manager" -out kube-controller-manager.csr # наконец, kube-proxy openssl req -new -key kube-proxy.key -subj "/CN=kube-proxy" -out kube-scheduler.csr # далее по аналогии # Использовать сертификат в запросе можно так: curl https://kube-apiserver:6443/api/v1/pods \ --key admin.key --cert admin.crt --cacert ca.crt