Los procedimientos para solucionar problemas dependen del tipo de certificados SSL que se usen.
Soluciona problemas de certificados administrados por Google
Existen dos tipos de estado para los certificados administrados por Google:
- Estado administrado
- Estado de los dominios
Estado administrado
Para verificar el estado del certificado, ejecuta el siguiente comando:
gcloud compute ssl-certificates describe CERTIFICATE_NAME \ --global \ --format="get(name,managed.status)"
Los valores del estado administrado son los siguientes:
Estado administrado | Explicación |
---|---|
PROVISIONING |
Se creó el certificado administrado por Google, y Google Cloud está trabajando con la autoridad certificadora para firmarlo. Aprovisionar un certificado administrado por Google puede demorar hasta 60 minutos desde el momento en que tu cambio de configuración del balanceador de cargas y tu DNS se propagaron a través de la Internet. Si actualizaste la configuración de tu DNS hace poco, los cambios pueden tardar bastante tiempo en propagarse por completo. A veces, la propagación puede demorar hasta 72 horas en todo el mundo, aunque suele tardar algunas horas. Para obtener más información sobre la propagación de DNS, consulta Propagación de cambios. Si el certificado permanece en el estado |
ACTIVE |
El certificado SSL administrado por Google se obtiene de la autoridad certificada. Puede tomar unos 30 minutos adicionales que el certificado esté disponible para que lo use un balanceador de cargas. |
PROVISIONING_FAILED |
Es posible que veas PROVISIONING_FAILED de forma breve, incluso si el estado del certificado es, en realidad, ACTIVE .
Vuelve a comprobar el estado. Si el estado sigue siendo PROVISIONING_FAILED , se creó el certificado administrado por Google, pero la autoridad certificada no puede firmarlo. Verifica que completaste todos los pasos en Usa certificados SSL administrados por Google. Google Cloud reintenta el aprovisionamiento hasta que lo logra o hasta que el estado cambia a PROVISIONING_FAILED_PERMANENTLY .
|
PROVISIONING_FAILED_PERMANENTLY |
Se creó el certificado administrado por Google, pero la autoridad certificada no puede firmarlo debido a un problema de configuración del balanceador de cargas o del DNS. En este estado, Google Cloud no vuelve a intentar el aprovisionamiento. Crea un certificado SSL de reemplazo administrado por Google y asegúrate de que el reemplazo esté asociado con el proxy de destino del balanceador de cargas. Verifica o completa todos los pasos en Usa certificados SSL administrados por Google. Luego, puedes borrar el certificado que falló en el aprovisionamiento de forma permanente. |
RENEWAL_FAILED |
No se pudo completar la renovación del certificado administrado por Google debido a un problema con el balanceador de cargas o la configuración de DNS. Si alguno de los dominios o subdominios de un certificado administrado no dirige a la dirección IP del balanceador de cargas mediante un registro A/AAAA, el proceso de renovación falla. El certificado existente seguirá entregando, pero vencerá pronto. Verifica la configuración. Si el estado sigue siendo Para obtener más información sobre la renovación de certificados, consulta Renovación de certificados SSL administrados por Google. |
Estado de los dominios
Para verificar el estado del dominio, ejecuta el siguiente comando:
gcloud compute ssl-certificates describe CERTIFICATE_NAME \ --global \ --format="get(managed.domainStatus)"
Los valores del estado del dominio se describen en esta tabla.
Estado de los dominios | Explicación |
---|---|
PROVISIONING |
El certificado administrado por Google se crea para el dominio. Google Cloud está trabajando con la autoridad certificadora para firmar el certificado. |
ACTIVE |
El dominio se validó correctamente para aprovisionar el certificado. Si el certificado SSL es para varios dominios, solo se puede aprovisionar una vez que todos los dominios tengan un estado ACTIVE y el estado administrado del certificado también sea ACTIVE .
|
FAILED_NOT_VISIBLE |
No se completó el aprovisionamiento de certificados para el dominio. Cualquiera de los siguientes puede ser el problema:
PROVISIONING , Google Cloud seguirá reintentando el aprovisionamiento, incluso si el estado del dominio es FAILED_NOT_VISIBLE .
|
FAILED_CAA_CHECKING |
Se produjo un error en el aprovisionamiento del certificado debido a un problema de configuración con el registro de CAA del dominio Asegúrate de haber seguido el procedimiento correcto. |
FAILED_CAA_FORBIDDEN |
Se produjo un error en el aprovisionamiento del certificado porque el registro de CAA del dominio no especifica una AC que Google Cloud deba usar. Asegúrate de haber seguido el procedimiento correcto. |
FAILED_RATE_LIMITED |
Se produjo un error en el aprovisionamiento del certificado porque una autoridad certificada tiene un límite de frecuencia de solicitudes de firma de certificados. Puedes aprovisionar un certificado nuevo, cambiar al certificado nuevo y borrar el certificado anterior, o puedes comunicarte con el equipo de asistencia deGoogle Cloud . |
Renovación del certificado administrado
Para asegurarte de que tus certificados no fallen en el paso de validación del dominio del proceso de renovación, revisa los requisitos de tus registros DNS A y AAAA.
Validación de dominio multiperspectiva
Google Cloud renueva periódicamente tus certificados administrados por Google y los solicita a las autoridades certificadoras (AC). Las AC con las que trabajaGoogle Cloud para renovar tus certificados usan un método de validación de dominios de múltiples perspectivas conocido como corroboración de emisión desde múltiples perspectivas (MPIC). Como parte de este proceso, las autoridades certificadoras verifican el control del dominio mediante la verificación de la configuración de DNS del dominio y, en algunos casos, intentan comunicarse con el servidor detrás de la dirección IP del dominio. Estas verificaciones se realizan desde varios puntos de vista en Internet. Si falla el proceso de validación, no se renovarán los certificados administrados por Google. Como resultado, tu equilibrador de carga entrega un certificado vencido a los clientes, lo que hace que los usuarios del navegador encuentren errores de certificado y que los clientes de la API experimenten fallas de conexión.
Para evitar fallas de validación de dominio multiperspectiva para registros DNS configurados de forma incorrecta, ten en cuenta lo siguiente:
- Tus registros A de DNS (IPv4) y registros AAAA de DNS (IPv6) para tus dominios y cualquier subdominio deben apuntar solo a la dirección IP (o direcciones) asociadas con la regla o las reglas de reenvío del balanceador de cargas. La existencia de otras direcciones en el registro puede hacer que falle la validación.
- La AC, que realiza la validación de los registros DNS, consulta los registros DNS desde varias ubicaciones. Asegúrate de que tu proveedor de DNS responda de manera coherente a todas las solicitudes de validación de dominios globales.
- El uso de GeoDNS (que muestra diferentes direcciones IP según la ubicación de la solicitud) o de políticas de DNS basadas en la ubicación puede generar respuestas incoherentes y hacer que falle la validación. Si tu proveedor de DNS usa GeoDNS, inhabilita esta función o asegúrate de que todas las regiones muestren la misma dirección IP del balanceador de cargas.
- Debes especificar de forma explícita las direcciones IP de tu balanceador de cargas en la configuración de DNS. Las capas intermedias, como una CDN, pueden causar un comportamiento impredecible. Se debe poder acceder directamente a la dirección IP sin redireccionamientos, firewalls ni CDN en la ruta de solicitud. Para obtener más información, consulta la sección Balanceadores de cargas detrás de una CDN en este documento.
- Te recomendamos que uses un verificador de propagación global de DNS de tu elección para verificar que todos los registros DNS relevantes se resuelvan de forma correcta y coherente en todo el mundo.
Verifica los cambios de configuración
Después de configurar los registros DNS, puedes verificar que sean correctos. Para ello, crea un certificado nuevo y conéctalo al balanceador de cargas junto con el certificado existente. Este paso fuerza una verificación inmediata del aprovisionamiento de certificados con la AC, lo que te permite verificar los cambios de configuración en cuestión de minutos. Sin esto, las renovaciones automáticas del certificado existente pueden tardar días o semanas, lo que genera incertidumbre sobre la configuración.
Si el estado del certificado se convierte en ACTIVE
, significa que se emitió el certificado, lo que confirma que la configuración de DNS es correcta. En este punto, te recomendamos que quites el certificado anterior para evitar tener dos certificados separados para el mismo dominio. Este proceso no interrumpe el tráfico a tu balanceador de cargas.
El nuevo certificado funciona como una herramienta de validación. Su creación confirma que la validación de dominios multiperspectiva con MPIC funciona correctamente para tu configuración.
Balanceadores de cargas detrás de una CDN
En el caso de los balanceadores de cargas que tienen CDN habilitada, es posible que algunos proveedores de CDN de terceros en la ruta de solicitud impidan que las solicitudes de validación se realicen correctamente. Esto puede ocurrir si el proveedor de CDN programa el tráfico HTTP(S) de forma activa con proxy.
En esos casos, te recomendamos migrar tus certificados al Administrador de certificados y usar el método de autorización de DNS para aprovisionar certificados administrados por Google. El último enfoque no requiere que la AC se comunique con tu balanceador de cargas.
Soluciona problemas de certificados SSL autoadministrados
En esta guía, se describe cómo solucionar problemas de configuración para certificados SSL autoadministrados.
El certificado no se puede analizar
Google Cloud requiere certificados en formato PEM. Si el certificado tiene formato PEM, verifica lo siguiente:
Puedes validar el certificado mediante el siguiente comando de OpenSSL y reemplazar CERTIFICATE_FILE
por la ruta al archivo del certificado:
openssl x509 -in CERTIFICATE_FILE -text -noout
Si OpenSSL no puede analizar tu certificado, haz lo siguiente:
- Comunícate con una CA para obtener ayuda.
- Crea una clave privada y un certificado nuevos.
Falta el nombre común o el nombre alternativo de la entidad
Google Cloud requiere que el certificado tenga uno de los siguientes atributos: nombre común (CN
) o nombre alternativo de entidad (SAN
). Consulta la sección Crea una CSR para obtener más información.
Si ninguno de estos atributos está presente, Google Cloud muestra un mensaje de error como el siguiente cuando intentas crear un certificado autoadministrado:
ERROR: (gcloud.compute.ssl-certificates.create) Could not fetch resource:
- The SSL certificate is missing a Common Name(CN) or Subject Alternative
Name(SAN).
La clave privada no se puede analizar
Google Cloud requiere claves privadas con formato PEM que cumplan con los criterios de clave privada.
Puedes validar la clave privada mediante el siguiente comando de OpenSSL, en el que debes reemplazar PRIVATE_KEY_FILE
por la ruta a la clave privada:
openssl rsa -in PRIVATE_KEY_FILE -check
Las siguientes respuestas indican un problema con tu clave privada:
unable to load Private Key
Expecting: ANY PRIVATE KEY
RSA key error: n does not equal p q
RSA key error: d e not congruent to 1
RSA key error: dmp1 not congruent to d
RSA key error: dmq1 not congruent to d
RSA key error: iqmp not inverse of q
Para solucionar el problema, debes crear una clave privada y un certificado nuevos.
Claves privadas con frases de contraseña
Si OpenSSL solicita una frase de contraseña, deberás quitar la frase de contraseña de la clave privada para poder usarla con Google Cloud. Puedes usar el siguiente comando de OpenSSL:
openssl rsa -in PRIVATE_KEY_FILE \ -out REPLACEMENT_PRIVATE_KEY_FILE
Reemplaza los marcadores de posición por valores válidos:
PRIVATE_KEY_FILE
: Es la ruta a la clave privada protegida por una frase de contraseñaREPLACEMENT_PRIVATE_KEY_FILE
: la ruta de acceso en la que deseas guardar una copia de la clave privada como texto sin formato.
Vencimiento de certificados intermedios
Si un certificado intermedio vence antes que el certificado del servidor (de entidad final), esto podría indicar que la AC no sigue las prácticas recomendadas.
Cuando un certificado intermedio caduca, es posible que el certificado de entidad final usado enGoogle Cloud no sea válido. Esto depende del cliente SSL, de la siguiente manera:
- Algunos clientes SSL solo miran la hora de vencimiento del certificado de entidad final e ignoran los certificados intermedios vencidos.
- Algunos clientes SSL tratan una cadena con certificados intermedios vencidos como no válida y muestran una advertencia.
Para solucionar este problema, sigue estos pasos:
- Espere a que la CA cambie a un nuevo certificado intermedio.
- Solicítales un nuevo certificado.
- Vuelve a subir el certificado nuevo con las claves nuevas.
La CA también puede permitir la firma cruzada para certificados intermedios. Consulta con la AC para confirmar.
El exponente público de RSA es demasiado grande.
El siguiente mensaje de error aparece cuando el exponente público de RSA es mayor que 65537. Asegúrate de usar 65537
, como se especifica en RFC 4871.
ERROR: (gcloud.compute.ssl-certificates.create) Could not fetch resource:
- The RSA public exponent is too large.
Quita el certificado SSL del proxy de destino
En los siguientes pasos, se demuestra cómo quitar un solo certificado SSL adjunto al proxy https de destino:
Exporta el proxy de destino https a un archivo temporal.
gcloud compute target-https-proxies export TARGET_PROXY_NAME > /tmp/proxy
Edita el archivo
/tmp/proxy
y quita las siguientes líneas:sslCertificates: - https://www.googleapis.com/compute/v1/projects/...
Importa el archivo
/tmp/proxy
:gcloud compute target-https-proxies import TARGET_PROXY_NAME \ --source=/tmp/proxy
Borra el certificado SSL (opcional).
gcloud compute ssl-certificates delete SSL_CERT_NAME
Reemplaza lo siguiente:
TARGET_PROXY_NAME
: el nombre del proxy HTTPS de destino.SSL_CERT_NAME
: es el nombre del certificado SSL.