0 votos

Chrome en MacOS rechaza repentinamente los certificados autofirmados

Llevo un par de años utilizando felizmente certificados autofirmados para sitios alojados localmente que funcionan con apache2. Hoy un de esos certificados expiró - no hay problema, lo recreé y reemplacé el cert en mi llavero. Sin embargo, ahora Chrome me da un error cuando intento visitar el sitio:

Error de certificado
Hay problemas con la cadena de certificados del sitio (net::ERR_CERT_COMMON_NAME_INVALID).

Así que pensé que tal vez el certificado que había generado era dudoso. Pero no, todos mis otros certificados autofirmados (no caducados) también han dejado de funcionar. ¿Es una coincidencia? No lo sé.

Pensé que tal vez no le gustaba mi "nombre común" (que era com06 Por ejemplo https://com06/ ) así que probé con com06.dev . No hubo suerte.

¿Qué está pasando?

Los certificados generados con

openssl req -new -newkey rsa:2048 -sha256 -days 365 -nodes -x509 -keyout server.key -out server.crt

Añadido al llavero con

sudo security add-trusted-cert -d -r trustRoot -k /Library/Keychains/System.keychain server.crt
  • MacOS 10.11.6
  • Chrome v58.0.3029.33 beta (64 bits)

Los certificados autofirmados son aceptados por Safari, esto sólo es un problema con Chrome

Actualización

A partir de Chrome v58.0.3029.41 beta, me aparece este útil mensaje de error en las herramientas para desarrolladores:

Subject Alternative Name Missing
The certificate for this site does not contain a Subject Alternative 
Name extension containing a domain name or IP address.

1voto

Teddy Puntos 68

Puede desactivar temporalmente la aplicación de la SAN mediante la directiva EnableCommonNameFallbackForLocalAnchors, véase esta página para los detalles. Esto le permitirá volver a emitir sus certificados cuando el tiempo lo permita.

En OSX esto se puede lograr utilizando el siguiente comando:

defaults write com.google.Chrome EnableCommonNameFallbackForLocalAnchors -bool true

0voto

diachedelic Puntos 123

El problema era que faltaba el Nombre Alternativo del Sujeto (SAN), que no se rellenaba cuando generaba mis certificados autofirmados usando openssl. Sin embargo, esta excelente respuesta explica cómo generar certificados compatibles utilizando open ssl.

Para comprobar si su certificado contiene un SAN, utilice openssl x509 -in my.crt -text

AppleAyuda.com

AppleAyuda es una comunidad de usuarios de los productos de Apple en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X