problema de conexión HTTPS en Chrome / Chromium / Opera

0

Estoy tratando de construir un servidor web liviano en un dispositivo integrado, y estoy tratando de agregarle HTTPS introduciendo mbedTLS.

Puedo usar Firefox o IE para hacer conexiones sin ningún problema.    Sin embargo, al usar Chrome / Chromium / Opera, crea muchas conexiones TCP al principio, y trata de hacer un protocolo de enlace SSL. La mayoría de las conexiones no enviaron ApplicationData después del protocolo de enlace SSL, el navegador envía FIN justo después de ChangeCipherSpec y Finish . Solo unas pocas conexiones enviarían ApplicationData después del protocolo de enlace SSL. Causa que muchos elementos en una página no se carguen, el servidor no recibió la solicitud GET para algunos elementos.

Cipher suite: RSA_WITH_AES128_GCM_SHA256
Certificate: Self-signed certificate with RSA1024/2048 key
keep-alive is not enabled

¿Por qué se crean tantas conexiones pero Chrome no las utiliza? ¿Y alguna idea para arreglarlo?

Gracias

Para StackzOfZtuff

Aquí está la captura de pantalla de la herramienta Chrome dev, muestra un error de certificado, que se debe a que el certificado está autofirmado.

ParaTom

ResultadodeSSLLabs:Losprincipalesproblemasson:(A)LalongituddelaclaveRSA1024esdébil(B)Emisióndecertificadoautofirmado(C)Elsecretohaciaadelantenoescompatible

ParaBaptiste

Intentédeshabilitarel"Protocolo QUIC", pero aún tengo el problema de que Chromes envía el mensaje FIN después del protocolo SSL.

pregunta Liang Changwei 10.11.2017 - 10:10
fuente

2 respuestas

1

Gracias por la ayuda de StackzOfZtuff, finalmente encontré el problema.

Al conectarse a un servidor con un certificado autofirmado, Chrome mostrará "Su conexión es privada", y podemos continuar haciendo clic en "Avanzado" y "Continuar con XXX". Sin embargo, incluso el sitio web está cargado, pero el chrome creará muchas conexiones SSL y desconectará algunas de ellas después de que termine el protocolo de enlace.

Al analizar el evento de Chrome mediante "chrome: // net-export" y "chrome: // net-internal", muestra que el socket está cerrado después del protocolo de SSL y se muestra un error "ERR_CERT_AUTHORITY_INVALID".

Primero intenté deshabilitar la verificación de SAN (nombre alternativo del sujeto) de Chrome (porque mi mbedTLS no admite la creación de un certificado con SAN ahora) e importar el certificado manualmente a Chrome, luego Chrome puede conectarse a mi httpd sin el mensaje de advertencia del certificado y Chrome ya no interrumpirán la conexión.

    
respondido por el Liang Changwei 18.11.2017 - 05:10
fuente
0

"Falta el nombre alternativo del sujeto"

Chrome requiere SAN y ya no es compatible con CommonName.

Consulte: ChromeStatus, Compatibilidad con la coincidencia de CommonName en Certificados (eliminado)

Agregue un nombre SAN a su certificado para solucionar este problema.

    
respondido por el StackzOfZtuff 13.11.2017 - 10:56
fuente

Lea otras preguntas en las etiquetas