Browser Warns "Site Uses Outdated Security" – Real Fixes
Your browser warns a site uses outdated security. This usually means the website's TLS or SSL setup is broken. Here's the real fix for the three most common causes.
1. Your Server Still Uses TLS 1.0 or 1.1
This is by far the most common reason you see the "site uses outdated security settings" warning. If you're running a website on a server that hasn't had its TLS stack updated in a few years, your browser (Chrome, Firefox, Edge) will block the connection with this message.
What's happening: Back in 2018 and 2020, all major browsers killed support for TLS 1.0 and TLS 1.1. These old versions have known security holes. Your site is still trying to use them, so the browser screams "outdated security."
Here's how to fix it. These steps assume you have admin access to your web server.
For Apache or Nginx (Linux servers)
- SSH into your server.
- Open the SSL configuration file. For Apache, it's usually
/etc/apache2/sites-available/default-ssl.conf. For Nginx, it's/etc/nginx/nginx.confor a site-specific file under/etc/nginx/sites-enabled/. - Find the line that says
SSLProtocolorssl_protocols. Right now it probably says something likeSSLProtocol all -TLSv1 -TLSv1.1orssl_protocols TLSv1 TLSv1.1 TLSv1.2. - Change it to only allow TLS 1.2 and TLS 1.3. Use this:
SSLProtocol TLSv1.2 TLSv1.3for Apache, orssl_protocols TLSv1.2 TLSv1.3;for Nginx. - Save the file and restart your web server. For Apache:
sudo systemctl restart apache2. For Nginx:sudo systemctl restart nginx. - After you restart, open a browser and visit your site again. The warning should be gone. If you still see it, move to the next fix.
For IIS (Windows Server)
- Open IIS Manager. Press Windows + R, type
inetmgr, hit Enter. - Select your server name in the left panel.
- Double-click "SSL Settings" in the middle pane.
- Check the box "Require SSL" if it's not already. Under "Client certificates," select "Ignore" unless you need client certs.
- Now you need to edit the registry to disable old TLS versions. Press Windows + R, type
regedit, hit Enter. - Navigate to
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols. - Right-click "Protocols" and create a new Key called
TLS 1.0. Inside that, create two more keys:ClientandServer. In both, create a DWORD (32-bit) namedEnabledand set its value to0. Do the same forTLS 1.1. - Make sure
TLS 1.2andTLS 1.3haveEnabledset to1(or just create the keys if they don't exist). - Reboot the server. After reboot, test the site.
2. Your SSL Certificate Chain Is Incomplete
Sometimes the server's TLS version is fine (1.2 or 1.3), but the browser still shows the warning. The next culprit is a missing intermediate certificate. This happens a lot when someone copies the main certificate but forgets the intermediate files.
What it looks like: Visitors see the warning. You check the certificate details in your browser (click the padlock in the address bar), and it says "Certificate is not trusted" or "Missing intermediate." The error code might be SEC_ERROR_UNKNOWN_ISSUER in Firefox.
How to fix the certificate chain
- Buying a certificate? Great. Your provider (Let's Encrypt, DigiCert, GoDaddy, etc.) will give you more than one file. You get your certificate file (like
yourdomain.crt) and a certificate authority bundle (likeca-bundle.crtorintermediate.crt). - Combine them into one file. Open your terminal or command prompt.
- If you have a bundle file, just append it to your certificate:
cat yourdomain.crt ca-bundle.crt > combined.crt. - Upload
combined.crtto your server. Replace the oldyourdomain.crtfile. - For Apache, update the
SSLCertificateFileline to point tocombined.crt. Also setSSLCertificateChainFileto theca-bundle.crt(some newer Apache versions ignore this and just use the combined file). - For Nginx, update
ssl_certificateto point tocombined.crt. Make suressl_trusted_certificatepoints to the same combined file. - Restart the web server.
- After restart, test with a browser. The warning should be gone. If you still see it, check the certificate chain at SSL Labs – it's a free tool. It shows you exactly which intermediate is missing.
3. Your Server Uses Deprecated Cipher Suites
Even if you have TLS 1.2 enabled and a proper certificate chain, you can still get the warning. This happens when your server only offers old, weak cipher suites. Chrome and Edge have been blocking weak ciphers since 2022.
What you'll see: The same warning. But checking the certificate shows it's valid. The TLS version is fine. The problem is the encryption method — the cipher suite — is too old.
How to check and fix cipher suites
- Go to SSL Labs and test your site. Look at the "Cipher Suites" section. If you see suites like
TLS_RSA_WITH_AES_128_CBC_SHAorTLS_DHE_RSA_WITH_AES_128_CBC_SHA(those are weak), you need to remove them. - For Nginx, open your config file. Add or edit the
ssl_ciphersline. Use this safe list:ssl_ciphers HIGH:!aNULL:!eNULL:!MD5:!DES:!RC4:!3DES:!CBC;. This gives you only strong ciphers. - For Apache, edit the same SSL config file. Add or edit:
SSLCipherSuite HIGH:!aNULL:!eNULL:!MD5:!DES:!RC4:!3DES:!CBC. - For IIS, you can't easily edit cipher suites in the GUI. Use the free tool IIS Crypto. Download it, run it on the server. Select the "Best Practices" template. It disables weak ciphers and enables only strong ones. Then reboot.
- After changes, test again at SSL Labs. You should see only strong ciphers like
TLS_AES_256_GCM_SHA384andTLS_CHACHA20_POLY1305_SHA256. The browser warning should be gone.
Quick-Reference Summary Table
| Symptom | Most Likely Cause | Fix |
|---|---|---|
| Browser warning on all visitors | TLS 1.0 or 1.1 still enabled | Disable old TLS, keep only 1.2 and 1.3 |
| Certificate shows "not trusted" | Missing intermediate certificate | Combine cert with CA bundle, upload |
| Certificate valid, TLS 1.2 enabled, still warning | Weak cipher suites in use | Remove weak ciphers, use only strong ones |
Was this solution helpful?