This server supports weak Diffie-Hellman (DH) key exchange parameters.

Cette erreur est retournée par SSLLabs.com lorsque vous utilisez une taille de 1024 bits pour Diffie-Hellman (DH) dans la suite cryptographique.
Depuis la publication de la faille "Logjam Attack" , il est recommandé d'utiliser une version plus sécurisées de DH : ECDHE (Elliptic curve Diffie-Hellman).

 


 

Résoudre : "This server supports weak Diffie-Hellman (DH) key exchange parameters."

Il suffit d'indiquer au client que le serveur ne souhaite pas utiliser l'algorithme d'exchange de clef DH (Diffie-Hellman). Pour cela, il faut l'indiquer dans la suite cryptographique.

 

Désactiver le DH key exchange parameters sur Apache 2 :

Trouver la directive "SSLCipherSuite" pour éditer la suite cryptographique du serveur :

grep -R "SSLCipherSuite" /etc/apache2

Ensuite, il est nécessaire de remplacer votre configuration par celle ci-dessous pour désactiver le Diffie Hellmann key exchange parameters :

# On active les méthodes de chiffrement sécurisées (HIGH) et on désactive DH (!DH)
SSLCipherSuite HIGH:!aNULL:!MD5:!ADH:!RC4:!DH

# La directive SSLHonorCipherOrder permet de forcer le navigateur à utiliser les préférences de chiffrement du serveur
SSLHonorCipherOrder on

Redémarrer Apache 2 pour que la désactivation du cipher DH soit prise en compte :

service apache2 restart

 


 

Désactiver le DH Cipher sur Nginx :

Trouver la directive "ssl_ciphers" dans la configuration Nginx :

grep -R "ssl_ciphers" /etc/nginx

Remplacer la valeur de la directive pour permettre la désactivation de DH :

# On active les méthodes de chiffrement sécurisées (HIGH) et on désactive DH (!DH)
ssl_ciphers "HIGH:!aNULL:!MD5:!ADH:!RC4:!DH";

# La directive ssl_prefer_server_ciphers permet de forcer le navigateur à utiliser les préférences de chiffrement du serveur
ssl_prefer_server_ciphers on;

Redémarrer Nginx pour desactiver le support de Diffie-Hellman :

service nginx restart