Comment activer TLS 1.2 dans Nginx?

17

Comment activer TLS 1.1 et 1.2 pour les connexions SSL sur mon serveur Ubuntu 12.04? J'utilise la version suivante de nginx et de la bibliothèque openssl.

$ ./nginx -v
nginx version: nginx/1.2.3

$ openssl version -a
OpenSSL 1.0.1 14 Mar 2012
built on: Tue Jun  4 07:26:06 UTC 2013
platform: debian-amd64
options:  bn(64,64) rc4(16x,int) des(idx,cisc,16,int) blowfish(idx) 
compiler: cc -fPIC -DOPENSSL_PIC -DZLIB -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -m64 -DL_ENDIAN -DTERMIO -g -O2 -fstack-protector --param=ssp-buffer-size=4 -Wformat -Wformat-security -Werror=format-security -D_FORTIFY_SOURCE=2 -Wl,-Bsymbolic-functions -Wl,-z,relro -Wa,--noexecstack -Wall -DOPENSSL_NO_TLS1_2_CLIENT -DOPENSSL_MAX_TLS1_2_CIPHER_LENGTH=50 -DMD32_REG_T=int -DOPENSSL_IA32_SSE2 -DOPENSSL_BN_ASM_MONT -DOPENSSL_BN_ASM_MONT5 -DOPENSSL_BN_ASM_GF2m -DSHA1_ASM -DSHA256_ASM -DSHA512_ASM -DMD5_ASM -DAES_ASM -DVPAES_ASM -DBSAES_ASM -DWHIRLPOOL_ASM -DGHASH_ASM
OPENSSLDIR: "/usr/lib/ssl"
codefx
la source
Tu as encore trouvé quelque chose?
BigSack
Avez-vous résolu cela? La version nginx que vous utilisez est très ancienne. Vous pouvez trouver la configuration SSL dans cet article Ars Technica utile.
Paul

Réponses:

14

Vous devez d'abord activer SSL / TLS dans votre nginx.conf:

server {
    listen 443 ssl;
    listen [::]:443 ssl;
    server_name example.org;

    ssl_certificate /etc/ssl/example.org.crt;
    ssl_certificate_key /etc/ssl/private/example.org.key;

Les deux listenlignes activent SSL à votre connexion IPv4 et IPv6. Si vous n'avez pas d'IPv6, vous pouvez laisser de côté la deuxième listenligne.

Je suppose que votre certificat de serveur est en place /etc/ssl. Si vous utilisez un autre chemin, vous modifieriez les deux dernières lignes.

ssl_protocols TLSv1.2 TLSv1.1 TLSv1;

Cela permet différentes versions de TLS. Tous les navigateurs actuels peuvent utiliser TLS1.2. Pour les navigateurs plus anciens, j'ai écrit un petit guide pour activer les paramètres sécurisés .

ssl_ciphers ECDHE-RSA-AES256-GCM-SHA384:ECDHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-GCM-SHA384:DHE-RSA-AES128-GCM-SHA256:ECDHE-RSA-AES256-SHA384:ECDHE-RSA-AES256-SHA:DHE-RSA-AES256-SHA;
ssl_prefer_server_ciphers on;

La première ligne définit les chiffres que votre nignx doit utiliser. La deuxième ligne préfère les suites de chiffrement côté serveur (et non côté client). Vous pouvez donc utiliser des chiffrements forts (er).

Si vous avez terminé, votre nginx devrait utiliser TLS1.2. Si vous le souhaitez, vous pouvez ajouter votre site à un temple de la renommée TLS1.2 et être fier. ;)

Cependant, il existe plusieurs méthodes pour améliorer les paramètres. Je suis ce guide allemand pour la configuration sécurisée de nginx .

qbi
la source
Ubuntu 12 désactive TLS 1.1 et TLS 1.2 pour des raisons d'interopérabilité. Je pense qu'ils ont récemment activé TLS 1.1, mais je pense que TLS 1.2 fait toujours défaut. Voir OpenSSL downlevel version is 1.0.0, and does not support TLS 1.2 .
1

De nombreux avis de sécurité ont été traités dans les versions ultérieures de nginx. Si vous êtes toujours (6 mois périmé?) Dans cette situation, envisagez sérieusement la mise à niveau; Les paramètres TLS n'auront aucune importance si le serveur Web lui-même n'est pas sécurisé. Voir http://nginx.org/en/security_advisories.html pour plus de détails.

Si, pour une raison quelconque, vous DEVEZ exécuter cette version de nginx, les informations disponibles sur l'activation de suites de chiffrement fortes avec nginx (ou Apache) ici vous aideront probablement: https://community.qualys.com/blogs/securitylabs/2013/08/ 05 / configuration-apache-nginx-et-openssl-for-forward-secret

Luno
la source
0

Comment activer TLS 1.1 et 1.2 pour les connexions SSL sur mon serveur Ubuntu 12.04?

Je pense qu'il y a trois choix.

Tout d'abord, ne faites rien et utilisez la version d'Ubuntu 12 d'OpenSSL. Je crois que TLS 1.1 est maintenant pris en charge, mais vous n'aurez toujours pas TLS 1.2.

Deuxièmement, créez et entretenez votre propre PPA . Il y a des instructions pour le faire sur Override Distro Package avec Custom Package? Pour être complet, il n'y a pas d' archives de packages personnels pour Ubuntu et OpenSSL qui offrent les protocoles complets.

La troisième est la mise à niveau vers une version ultérieure d'Ubuntu, comme Ubuntu 14. J'essaie de déterminer si Ubuntu 14 les permet toutes pour le moment. Voir les protocoles Ubuntu 14, OpenSSL et TLS? .

Communauté
la source