Las extensiones de TKG requieren certificados TLS. Puede instalar cert-manager para cumplir con este requisito previo o puede utilizar sus propios certificados autofirmados. También se admiten certificados de una entidad de certificación (CA).
Acerca del uso de sus propios certificados TLS con extensiones de TKG
La instalación de cert-manager está documentada como parte del proceso de implementación de cada extensión de TKG. Si lo desea, puede utilizar sus propios certificados TLS.
Nota: En esta tarea, se asume que utilizará un host de Linux con OpenSSL instalado.
Generar un certificado de entidad de certificación
En un entorno de producción, debe obtener un certificado de una CA. En un entorno de prueba o desarrollo, puede generar su propio certificado autofirmado. Para generar un certificado de CA, siga estas instrucciones.
- Genere una clave privada de un certificado de CA.
openssl genrsa -out ca.key 4096
- Genere el certificado de CA.
Utilice el siguiente comando como plantilla. Actualice los valores en la opción
-subj
en función de su entorno. Si utiliza un FQDN para conectar el host de las extensiones de TKG, debe especificar este FQDN como el atributo de nombre común (CN).openssl req -x509 -new -nodes -sha512 -days 3650 \ -subj "/C=US/ST=PA/L=PA/O=example/OU=Personal/CN=tkg-extensions.system.tanzu" \ -key ca.key \ -out ca.crt
Generar un certificado de servidor
Por lo general, el certificado contiene un archivo .crt y un archivo .key, por ejemplo,
tls.crt
y
tls.key
.
- Genere una clave privada.
openssl genrsa -out tls.key 4096
- Genere una solicitud de firma del certificado (CSR).
Utilice el siguiente comando como plantilla. Actualice los valores en la opción
-subj
en función de su entorno. Si utiliza un FQDN para conectar el host de las extensiones de TKG, debe especificar este FQDN como el atributo de nombre común (CN) y utilizar el FQDN en los nombres de archivo de la CSR y la clave.openssl req -sha512 -new \ -subj "/C=US/ST=PA/L=PA/O=example/OU=Personal/CN=tkg-extensions.system.tanzu" \ -key tls.key \ -out tls.csr
- Genere un archivo de extensión x509 v3.
Utilice el siguiente comando como plantilla. Cree este archivo de modo que pueda generar un certificado para el host de las extensiones de TKG que cumpla con los requisitos de extensión de nombre alternativo del firmante (SAN) y de extensión x509 v3.
cat > v3.ext <<-EOF authorityKeyIdentifier=keyid,issuer basicConstraints=CA:FALSE keyUsage = digitalSignature, nonRepudiation, keyEncipherment, dataEncipherment extendedKeyUsage = serverAuth subjectAltName = @alt_names [alt_names] DNS.1=tkg-extensions.system.tanzu EOF
- Utilice el archivo de extensión x509 v3 a fin de generar un certificado para el host de extensiones de TKG
openssl x509 -req -sha512 -days 3650 \ -extfile v3.ext \ -CA ca.crt -CAkey ca.key -CAcreateserial \ -in tls.csr \ -out tls.crt
- Copie el contenido de los archivos
ca.crt
,tls.crt
ytls.key
en el archivoTKG-EXTENSION-data-values.yaml
usando el siguiente formato.ingress: tlsCertificate: tls.crt: | -----BEGIN ...
- Continúe con la implementación de una extensión de TKG compatible del modo en que se documenta.