]> TLD Linux GIT Repositories - packages/apache.git/commitdiff
- more up to date cipher settings
authorMarcin Krol <hawk@tld-linux.org>
Sun, 13 Sep 2026 18:21:15 +0000 (20:21 +0200)
committerMarcin Krol <hawk@tld-linux.org>
Sun, 13 Sep 2026 18:21:15 +0000 (20:21 +0200)
apache-mod_ssl.conf

index c2d27c87a4cccf0c94eff94a868d14584935f4fb..30c24061386520f6d5492c8e0b2e21fdaf58dded 100644 (file)
@@ -64,30 +64,22 @@ SSLSessionCacheTimeout  300
 #   This directive can be used to control the SSL protocol flavors mod_ssl
 #   should use when establishing its server environment. Clients then can only
 #   connect with one of the provided protocols.
-SSLProtocol all -SSLv3 -TLSv1 -TLSv1.1
+SSLProtocol -all +TLSv1.2 +TLSv1.3
 
 #   SSL Cipher Suite:
 #   List the ciphers that the client is permitted to negotiate.
 #   See the mod_ssl documentation for a complete list.
 
-# High security: no weak ciphers, at least 256 bit
-# (except TLS_AES_128_GCM_SHA256 which is required by TLSv1.3)
-#SSLCipherSuite HIGH:!aNULL:!AES128:!ARIA128:!CAMELLIA128:!RSA:!SHA:!SHA256:!SHA384
+# TLS 1.2 - only 256-bit AEAD ciphers with forward-secret ECDHE/DHE key exchange.
+# TLS 1.3 - only 256-bit AES-GCM and ChaCha20-Poly1305.
+# 128-bit AES is not allowed.
+#SSLCipherSuite ECDHE+AESGCM:ECDHE+CHACHA20:DHE+AESGCM:DHE+CHACHA20:!AES128
+#SSLCipherSuite TLSv1.3 TLS_AES_256_GCM_SHA384:TLS_CHACHA20_POLY1305_SHA256
 
-# If you don't care about TLSv1.3 requirements and don't want any 128 bit
-# cipher you can disable TLS_AES_128_GCM_SHA256 by uncommenting line below
-#SSLCipherSuite TLSv1.3 TLS_CHACHA20_POLY1305_SHA256:TLS_AES_256_GCM_SHA384
-
-# Strong security: no weak ciphers, at least 128 bit
-# Recommended setting if you are not paranoid
-SSLCipherSuite HIGH:!aNULL:!RSA:!SHA:!SHA256:!SHA384
-
-# Medium security: includes some weak ciphers, at least 256 bit
-# (except TLS_AES_128_GCM_SHA256 which is required by TLSv1.3)
-#SSLCipherSuite HIGH:!aNULL:!AES128:!ARIA128:!CAMELLIA128:!RSA
-
-# Low security: includes some weak ciphers, at least 128 bit
-#SSLCipherSuite HIGH:!aNULL:!RSA
+# TLS 1.2 - only AEAD ciphers with forward-secret ECDHE/DHE key exchange.
+# TLS 1.3 - 256-bit ciphers plus AES-128-GCM for maximum compatibility.
+SSLCipherSuite ECDHE+AESGCM:ECDHE+CHACHA20:DHE+AESGCM:DHE+CHACHA20
+SSLCipherSuite TLSv1.3 TLS_AES_256_GCM_SHA384:TLS_CHACHA20_POLY1305_SHA256:TLS_AES_128_GCM_SHA256
 
 SSLHonorCipherOrder on
 SSLCompression off
@@ -98,8 +90,10 @@ SSLSessionTickets off
 #   When finished, uncomment line below
 #SSLOpenSSLConfCmd DHParameters /etc/httpd/ssl/dhparams.pem
 
-SSLOpenSSLConfCmd ECDHParameters secp384r1
-SSLOpenSSLConfCmd Curves secp521r1:secp384r1
+# TLS 1.3/1.2 key exchange groups.
+# Prefer hybrid post-quantum X25519 + ML-KEM-768.
+# Fall back to X25519 and P-256 for compatibility.
+SSLOpenSSLConfCmd Groups X25519MLKEM768:X25519:P-256
 
 Header always set Strict-Transport-Security max-age=31556952;includeSubDomains
 Header always set X-Frame-Options SAMEORIGIN