NGINX and TLS 1.3? You still can’t choose your preferred cipher (and you may never be able to)
Ayer estuve haciendo mejoras al servicio de distribución de contenido de LaOtraRed. Estos servidores basados en distintas variantes de Raspberry Pi no tienen aceleración AES, y como estos deben hacer la terminación TLS, quise hacer pruebas con ChaCha20 como cifrado.
Haciendo pruebas con cURL, en TLSv1.2 va bien (SSL connection using TLSv1.2 / ECDHE-ECDSA-CHACHA20-POLY1305
), pero si intento con TLS 1.3…
SSL connection using TLSv1.3 / TLS_AES_256_GCM_SHA384
No importa cómo ajuste ssl_ciphers
en Nginx, no funciona. Parece que, como en TLS 1.3 se manejan combinaciones de algoritmos en vez de códigos por combinación, la forma de especificar algoritmos tradicional excluye por defecto a los algoritmos de TLS 1.3 y en OpenSSL han puesto un parchecito creando otro parametro para especificar suites de cifrado para TLS 1.3. Uno que Nginx no quiere soportar.
Aún tengo pendiente probar la configuración mediante openssl.cnf
.