solucionar solucion segura privada privacidad net google error err_cert_symantec_legacy err_cert_date_invalid err_cert_authority_invalid cómo conexión conexion chrome celular google-chrome ssl ssl-certificate

google chrome - solucion - Error de Chrome NET:: ERR_CERT_AUTHORITY_INVALID en el certificado de autofirmación en LocalHost



net::err_cert_symantec_legacy solucion (3)

Estoy intentando configurar un entorno de desarrollo en mi PC local. Como el sitio web de producción admite HTTPS (¿quién no lo hace en estos días?), Quiero tener esto también en el localhost. Pensé que sería fácil, pero no.

Tengo una instalación de XAMP y configuro todo para poder acceder al sitio web. Sin embargo, cada vez que voy a cualquier página del sitio localmente, recibo la advertencia de Chrome:

NET :: ERR_CERT_AUTHORITY_INVALID

Seguí el siguiente hilo para intentar resolverlo:

Logrando que Chrome acepte un certificado de autofirma local

También creé el certificado con la sección correcta de Nombre alternativo del sujeto (SAN), en base a esto:

https://deliciousbrains.com/https-locally-without-browser-privacy-errors/

Después de eso, generé el archivo CER o P7B y lo importé a Chrome. Reinicié tanto Apache como Chrome.

Puse el certificado en las autoridades de certificación raíz de confianza. De alguna manera, Chrome decidió, sin embargo, colocarlo en las Autoridades de Certificación de Raíz Intermedia ...

Estoy usando Chrome 61, tuve el mismo en 60.

Así que de alguna manera no puedo instalar un certificado autofirmado y sigo recibiendo esta advertencia que básicamente hace que el desarrollo en localhost sea imposible ...

Entiendo que esta auto-firma no es exactamente confiable, pero ¿debe haber una manera de desarrollarse sin conexión? ¿No tiene sentido que tengamos que crear sitios web en línea de ahora en adelante? ...

¿Algunas ideas?


Aquí están mis instrucciones usando la herramienta KeyStore Explorer.

Las 2 cosas que anteriormente faltaba cuando creé el certificado eran:

  • AKID (identificador de clave de autoridad): seleccione el mismo "CN =" que utilizó al crearlo.
  • Agregar en la opción "Restricciones básicas" (no seleccionar "es una CA")

Sin esas 2 cosas, Chrome emitirá advertencias / errores incluso cuando haya instalado el certificado autofirmado en su almacén MS-CAPI PKI Trust (como una "Autoridad de Raíz de Confianza").

Aquí están los pasos que he usado.

  1. Instrucciones utilizando KSE (KeyStore Explorer)
  2. Crear un JKS
  3. Creación de un certificado autofirmado
  4. Abrir KeyStore Explorer
  5. Archivo | Nuevo | JKS | DE ACUERDO
  6. Cree una contraseña para su archivo JKS
  7. Archivo | Guardar como ... | Ingresa tu contraseña
  8. Introduzca el nombre del archivo | DE ACUERDO
  9. Herramientas | Generar par de claves
  10. Seleccionar algoritmo y tamaño de clave (es decir, 2048) | DE ACUERDO
  11. Seleccione el período de validez (es decir, 5 años)
  12. Seleccionar nombre (icono de libro) | Introduzca en los campos de Nombre | DE ACUERDO
  13. Es decir, "CN = localhost ..."
  14. Agregar extensiones (muy importante), esto determina qué tipo de certificado será y cómo se puede usar. Este ejemplo será para un certificado de servidor estándar con SSL.
  15. Añadir en el elemento Uso de clave
  16. Agregar en la casilla de verificación Opciones de firma digital y cifrado clave
  17. Añadir en las opciones de EKU (Uso de clave extendida)
  18. Seleccione ambas opciones:
  19. Autenticación de cliente web TLS
  20. Autenticación del servidor web TLS
  21. Añadir en las SAN (nombre alternativo del sujeto)
  22. Agregue todos los nombres DNS y direcciones IP necesarios (si corresponde) para los cuales se usará este servidor. (repita para todos los valores deseados) (ej. 127.0.0.1 y localhost (o)
  23. Se verá algo así cuando esté hecho
  24. Cuando haya terminado, verá todos los campos con los OID (identificadores de objetos) listados | Ok | DE ACUERDO
  25. Añadir en el AKID (identificador de clave de autoridad)
  26. Añadir Extensiones "+"
  27. Añadir tipo de extensión | Identificador de clave de autoridad
  28. Seleccione el Emisor de certificados de autoridad de la CN que creó anteriormente (.eg "CN = localhost ...") | DE ACUERDO
  29. Agregue un "Restricciones básicas" (NO marque "El sujeto es una CA")
  30. Cuando hayas terminado, verás estos listados: pulsa "OK"
  31. Nota: las restricciones básicas y AKID (identificador de clave de autoridad) son necesarios para que el navegador Chrome valide el certificado autofirmado como un certificado de confianza.
  32. De lo contrario, verá mensajes de advertencia o de error incluso después de haber agregado este certificado, explícitamente, a sus certificados de Raíz de confianza MS-CAPI.
  33. Ingrese el alias del nombre del par de llaves que desea usar
  34. Ingrese la contraseña del par de llaves privado
  35. * Nota: esta contraseña DEBE ser la misma que la contraseña del almacén de claves del archivo JKS o Java puede fallar de manera silenciosa al intentar usar este certificado.
  36. Debería ver un mensaje que indica el éxito. | DE ACUERDO
  37. A continuación, guarde el archivo | Salvar

Arreglé mi mismo problema exactamente después de this .

El problema parecía estar en la forma en que se creó el certificado.

El código de abajo es del sitio anterior.

#!/usr/bin/env bash mkdir ~/ssl/ openssl genrsa -des3 -out ~/ssl/rootCA.key 2048 openssl req -x509 -new -nodes -key ~/ssl/rootCA.key -sha256 -days 1024 -out ~/ssl/rootCA.pem #!/usr/bin/env bash sudo openssl req -new -sha256 -nodes -out server.csr -newkey rsa:2048 -keyout server.key -config <( cat server.csr.cnf ) sudo openssl x509 -req -in server.csr -CA ~/ssl/rootCA.pem -CAkey ~/ssl/rootCA.key -CAcreateserial -out server.crt -days 500 -sha256 -extfile v3.ext

archivo server.csr.cnf

[req] default_bits = 2048 prompt = no default_md = sha256 distinguished_name = dn [dn] C=US ST=New York L=Rochester O=End Point OU=Testing Domain emailAddress=your-administrative-address@your-awesome-existing-domain.com CN = localhost

v3.ext archivo

authorityKeyIdentifier=keyid,issuer basicConstraints=CA:FALSE keyUsage = digitalSignature, nonRepudiation, keyEncipherment, dataEncipherment subjectAltName = @alt_names [alt_names] DNS.1 = localhost


Hay una gran utilidad GUI basada en java que uso para crear y manipular todo lo que se llama PKI llamado KeyStore Explorer. Mucho más fácil que todas las opciones de línea de comandos:

http://keystore-explorer.org/