OpenSSL S Client SSL Debugging Checklist

halfbrain_logo512adminJune 18, 2026
4 lượt xem

OpenSSL S Client SSL Debugging Checklist

openssl s_client helps system admins inspect TLS and SSL connections from the terminal. It is useful when browsers show certificate warnings, Nginx SSL setup fails, CDN behavior is confusing or certificate chains are incomplete.

Core principle

SSL is a connection negotiation. The client connects to a hostname, receives a certificate, checks the chain and verifies that the certificate matches the requested name.

Checklist

  1. Check the HTTPS endpoint with curl first.
  2. Use openssl s_client with the correct server name.
  3. Check certificate subject and issuer.
  4. Check certificate expiration.
  5. Check whether the certificate chain is complete.
  6. Check whether SNI is required.
  7. Compare origin SSL with CDN SSL if used.
  8. Check Nginx SSL config if certificate is wrong.
  9. Reload Nginx only after config test passes.
  10. Document certificate source and renewal method.

Reusable lesson

This applies to Nginx SSL, Certbot, Cloudflare origin certificates, API endpoints, webhooks, admin dashboards and monitoring checks.

Checklist Type Troubleshooting
Level Intermediate
Risk Level Medium Risk
Estimated Time 30–60 minutes

When to Use This Checklist

Use this checklist when debugging SSL warnings, certificate mismatch, incomplete chain, HTTPS failure or CDN origin SSL issues.

Required Tools

Terminal access, openssl, domain name, Nginx config, certificate files, CDN access if used

Before You Start

Always include the correct server name when testing SNI-based HTTPS websites.

Structured Checklist Steps

  1. Check HTTPS with curl.
  2. Run openssl s_client.
  3. Check subject.
  4. Check issuer.
  5. Check expiration.
  6. Check chain.
  7. Check SNI.
  8. Compare CDN and origin.
  9. Validate Nginx.
  10. Document renewal method.

Rollback Plan

If SSL config changes break HTTPS, restore the previous Nginx SSL block, run nginx -t and reload only after validation passes.

Common Mistakes

  • Testing without SNI.
  • Confusing CDN certificate with origin certificate.
  • Ignoring certificate chain.
  • Reloading Nginx without config test.
  • No renewal documentation.

Related Commands

curl -I https://example.com
openssl s_client -connect example.com:443 -servername example.com
echo | openssl s_client -connect example.com:443 -servername example.com 2>/dev/null | openssl x509 -noout -dates -issuer -subject
sudo nginx -t
sudo systemctl reload nginx

Share:

Disclaimer: The guides, checklists, commands, and examples on HalfBrain.net are provided for educational and operational reference only. Server environments, hosting providers, software versions, security settings, and WordPress configurations can vary, so you should always review commands before running them on your own system. We do our best to keep the content accurate and useful, but we cannot guarantee that every command, configuration, or recommendation will fit every environment. Always back up your website, database, and server configuration before making changes. HalfBrain.net is not responsible for data loss, downtime, security incidents, misconfiguration, or other issues that may result from applying the information on this website. Use the material at your own discretion.

Leave a Reply

Your email address will not be published. Required fields are marked *