Validate Apache SSL/TLS configuration for security issues
The Apache Config Validator analyzes your Apache SSL/TLS VirtualHost configuration for security misconfigurations, weak protocol support, and missing best practices. It checks SSLEngine directives, certificate paths, cipher suites, protocol versions, and security headers to help you maintain a hardened TLS deployment on your Apache web server.
SSLProtocol -all +TLSv1.2 +TLSv1.3, keep your cipher list with the weak components dropped, and set SSLCompression off. Reload rather than restart so existing connections drain, then check the negotiated protocol from a second machine — your own browser will keep using a session that is still alive and hide the change.SSLCertificateFile, concatenated leaf first and then each intermediate in order. Older naming, with SSLCertificateChainFile pointing at the intermediates, is deprecated and will eventually be removed. Either way the root should not be included — clients already have it, and the most common incomplete-chain fault is a file containing only the leaf.SSLProtocol setting contains the exposure and keeps the public host modern. Better still, put the internal client behind a TLS-terminating proxy that speaks 1.3 to the world and 1.0 only inwards.Apache's TLS configuration is spread across mod_ssl and httpd directives, and the mistakes that matter are few and well defined. Paste the relevant block and each is checked, with the replacement text given for every finding.
SSLProtocol all is the single most damaging line in an Apache TLS config, because it enables every protocol the binary supports — including SSLv2 and SSLv3 on most builds. It reads as permissive rather than broken, which is why it survives in production for years. The fix is explicit: SSLProtocol -all +TLSv1.2 +TLSv1.3.
Weak components are identified individually so you can drop only what is actually weak, rather than replacing a working list with one you have not tested.
SSLEngine on without an SSLCertificateFile or without an SSLCertificateKeyFile will not start on Apache 2.4.8 or later. Both cases are caught, because the error message when you get it wrong is famously unhelpful.
SSLCompression on is reported as an issue. Compressing inside TLS has repeatedly turned into a practical attack surface for well-known attacks against compression side channels.
Config: Apache SSL/TLS directive validation and analysis
Directives: SSLProtocol, SSLCipherSuite, SSLCertificateFile, SSLSessionCache
Syntax: Configuration syntax and best practices checking
Output: Configuration issues with specific fix recommendations