4.1.6 Ensure custom Diffie-Hellman parameters are used

Warning! Audit Deprecated

This audit has been deprecated and will be removed in a future update.

View Next Audit Version

Information

Custom Diffie-Hellman (DH) key exchange parameters should be used. DH Ephemeral (DHE) parameters with at least 2048 bits should be generated.

Rationale:

Backward-compatible Perfect Forward Secrecy (PFS) ciphers (e.g. DHE-RSA-AES128-SHA256) should use strong and unique parameters. By default, NGINX will generate 1024-bit RSA keys for PFS ciphers; stronger alternatives should be used instead to provide better protection for data protected by encryption.

Solution

Generate strong DHE (Ephemeral Diffie-Hellman) parameters using the following commands:

mkdir /etc/nginx/ssl
openssl dhparam -out /etc/nginx/ssl/dhparam.pem 2048
chmod 400 /etc/nginx/ssl/dhparam.pem

Alter the server configuration to use the new parameters:

http {
server {
ssl_dhparam /etc/nginx/ssl/dhparam.pem;
}
}

See Also

https://workbench.cisecurity.org/files/4212