Om Perfect Forward Secrecy te activeren voor de Apache webserver 2.4 en hoger is het nodig om de configuratie zo aan te passen dat de juiste cipher suites worden aangeboden.
Apache configuratie
Onderstaande aanpassingen worden gemaakt in de configuratie van de website waarvoor het SSL protocol staat ingeschakeld. Deze configuratie bestanden staan normaal in /etc/apache2/sites-enabled/. Met onderstaande regels geven we aan dat er geen gebruik van SSLv2 en SSLv3 wordt gemaakt, en dat de webbrowser de aangeboden ciphers moet accepteren.
<VirtualHost *:443>
...
SSLProtocol all -SSLv2 -SSLv3
SSLHonorCipherOrder on
...
</VirtualHost>
Nu kun je via de SSLCipherSuite parameter aangegeven welke ciphersuites we willen gebruiken. Gebruik de onderstaande cipherssuites als basis, RC4 laten we weg vanwege de kwetsbaarheden die hierin zijn gevonden.
ECDHE-ECDSA-AES128-GCM-SHA256
ECDHE-ECDSA-AES256-GCM-SHA384
ECDHE-ECDSA-AES128-SHA
ECDHE-ECDSA-AES256-SHA
ECDHE-ECDSA-AES128-SHA256
ECDHE-ECDSA-AES256-SHA384
ECDHE-RSA-AES128-GCM-SHA256
ECDHE-RSA-AES256-GCM-SHA384
ECDHE-RSA-AES128-SHA
ECDHE-RSA-AES256-SHA
ECDHE-RSA-AES128-SHA256
ECDHE-RSA-AES256-SHA384
DHE-RSA-AES128-GCM-SHA256
DHE-RSA-AES256-GCM-SHA384
DHE-RSA-AES128-SHA
DHE-RSA-AES256-SHA
DHE-RSA-AES128-SHA256
DHE-RSA-AES256-SHA256
EDH-RSA-DES-CBC3-SHA
De notatie in de Apache configuratie bevat tussen elke ciphersuite een dubbele punt;
SSLCipherSuite ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-EC...
Apache webserver testen
Na het opnemen van deze configuratieregels in de website configuratie wordt deze getest door het uitvoeren van onderstaand commando:
apachectl configtest
Apache webserver herstarten
En wanneer er geen fouten worden gemeld kan de Apache webserver worden herstart met onderstaand commando:
apachectl graceful