¿Cómo obtengo un certificado de clave TLS?
Escenario
Si su ingreso necesita usar HTTPS, debe configurar un secreto del tipo IngressTLS o kubernetes.io/tls al crear un ingreso.
Cree un certificado de clave de IngressTLS, como se muestra en Figura 1.
El archivo de certificado que se va a cargar debe coincidir con el archivo de clave privada. De lo contrario, el archivo de certificado no será válido.
Solución
Por lo general, debe obtener un certificado válido del proveedor del certificado. Si desea usarlo en el entorno de prueba, puede crear un certificado y una clave privada realizando los siguientes pasos.
Los certificados de creación automática solo se aplican a los escenarios de prueba. Dichos certificados no son válidos y afectarán al acceso al navegador. Suba manualmente uno válido para garantizar conexiones seguras.
- Genere un tls.key.
openssl genrsa -out tls.key 2048
El comando generará un tls.key privado en el directorio donde se ejecuta el comando.
- Genere un certificado usando la tls.key privada.
openssl req -new -x509 -key tls.key -out tls.crt -subj /C=CN/ST=Beijing/O=Devops/CN=example.com -days 3650
La clave generada debe tener el siguiente formato:
----BEGIN RSA PRIVATE KEY----- ........................................................... -----END RSA PRIVATE KEY-----
El certificado generado debe tener el siguiente formato:
-----BEGIN CERTIFICATE----- ................................................................ -----END CERTIFICATE-----
- Importe el certificado.
Cuando cree un secreto de TLS, importe el archivo de certificado y clave privada a la ubicación correspondiente.
Verificación
El uso de un navegador para acceder a la entrada es exitoso. Sin embargo, el certificado y el secreto no son emitidos por CA y la barra de direcciones muestra que la conexión a nginx no es segura.