SSL Toolkit Logo

SSL/TLS Hardening Configuration Generator

Generate secure SSL configurations for Nginx and Apache

Generating hardened configuration...

Server Type

Security Score

Recommendations


        

Additional Recommendations

About SSL Hardening Config Generator

Generates hardened SSL/TLS configuration files for Apache, Nginx, and other web servers. Applies security best practices with Mozilla SSL Configuration Generator guidelines.

How to Use

  1. 1Enter your domain name and select server type
  2. 2Click "Generate Config" to create hardened configuration
  3. 3Copy the configuration and apply to your server

Use Cases

  • •Initial server setup with secure defaults
  • •Security hardening for existing servers
  • •Meeting compliance requirements (PCI DSS, HIPAA)

Frequently Asked Questions

The generator creates configurations based on Mozilla's guidelines with modern cipher suites, strong key exchange, and appropriate TLS versions. It prioritizes security while maintaining compatibility.
Yes, you can modify the generated configuration after copying it. The tool provides a baseline that you can adjust based on your specific requirements and compatibility needs.
The configuration maintains compatibility with modern browsers while rejecting old, insecure clients. If you need to support legacy clients, you may need to adjust cipher suite settings.
Because 50 is the base and the three checks are additions. The design means a bare configuration scores 50 rather than 0, and a fully hardened one scores 100. The practical reading is that only 100 means everything measured here is in place, and anything in between tells you how many of the three you have. If you prefer a score that reads as a percentage, treat anything below 100 as incomplete and use the recommendation list to decide which of the three is missing.
Depends on what you are trying to protect against. HSTS stops the first-request downgrade and is the highest-value change, but only once every host you serve over HTTPS works, because the header is remembered for a long time and is easy to set before you are ready. TLS 1.3 removes the weakest protocols and is usually a configuration change rather than an architectural one. Forward secrecy is worth having but arrives with TLS 1.3 on every modern client, so it is rarely a separate task.
It can, and the risk is concentrated in specific places rather than general. Very old embedded devices, some printers, certain Java and Python runtimes that predate TLS 1.3, and several widely used monitoring and scanning tools either cannot speak it or mis-handle it. The safe pattern is to enable 1.3 alongside 1.2 rather than replacing, leave 1.2 in place, and watch real client data before you remove anything. A server that offers only 1.3 is the change most likely to lose you traffic.
It protects the confidentiality of past sessions if the server's private key is stolen later. Without ephemeral key exchange, anyone who obtains that key can decrypt traffic they recorded, retroactively, which is why long-lived keys are such a liability. It gets 10 points rather than 20 because on any modern connection it comes for free with TLS 1.3, so a server that has 1.3 has it and a server that has not will rarely have it independently. It is a check that confirms the first one rather than a separate decision.
No, and it would be misleading if it tried to fold that in. This page measures the transport configuration you control; certificate validity is a property of a document issued by someone else, and mixing the two produces a number nobody can act on. A server can have a perfect TLS configuration and an expired certificate, which is an outage, not a hardening gap. Use the SSL Checker to validate the certificate and this page to harden the server around it.

How the Score Is Built

The score is a small set of weighted checks, not a security rating. Knowing which three things it measures explains every result it can give you.

+20
HSTS present
The Strict-Transport-Security response header was found. Without it a browser's first request to any path on your site is still sent over plain HTTP.
+20
TLS 1.3 negotiated
The connection actually negotiated TLS 1.3. A lower version means the configuration still offers protocols that have known weaknesses.
+10
Forward secrecy
The negotiated cipher used ephemeral key exchange, so session keys cannot be recovered from a later compromise.

Every check starts from a base of 50 points, the three are added when they pass, and the total is capped at 100. The score therefore reads as 50 with nothing in place, 70 with one improvement, 80 with two, and 100 only when all three are present. A recommendation is recorded for each check that fails, so the list tells you what to change rather than only that something is missing.

Certificate validity and chain completeness are deliberately not part of this score. Use the SSL Checker for those, because a perfectly hardened TLS configuration on an expired certificate is still an outage.

Tips & Best Practices

  • •Apply hardening configurations systematically across all servers
  • •Test hardened configurations before deploying to production
  • •Document all hardening changes for compliance evidence
  • •Monitor hardened configurations for unauthorized modifications

Technical Details

Configuration: Complete hardened TLS configuration generation
Profiles: Modern, Intermediate, and Legacy security profiles
Servers: Nginx, Apache, HAProxy, and IIS specific configs
Output: Hardened configuration with installation instructions