Error map
SSL routines: wrong version number OpenSSL: error:1408F10B:SSL routines:ssl3_get_record:wrong version number
SSL / TLS · layer 2, Network
Centre: this error. First ring: errors it is linked with (12). Outer ring: what those are linked with. Colours show the layer of a request each error belongs to. Click any dot to re-centre the map on it; hover to follow its connections. The centre dot opens the error page.
Directly related (12)
cURL error 35: OpenSSL SSL_connect: SSL_ERROR_SYSCALL in connection to host:443
The TLS handshake failed — protocol/cipher mismatch, a proxy interfering, or the server closed the connection.
ERR_SSL_PROTOCOL_ERROR (This site can't provide a secure connection)
The browser couldn’t negotiate TLS — the server sent an invalid response, often plain HTTP on the HTTPS port.
OpenSSL: error:num=20:unable to get local issuer certificate / SSL: CERTIFICATE_VERIFY_FAILED
The client could not build a chain from the server's certificate to a CA it trusts — the issuer is missing locally or the server…
OpenSSL: error:0A00018E:SSL routines::ca md too weak / error:140AB18F:SSL routines:SSL_CTX_use_certificate:ee key too small
OpenSSL's security level rejected a certificate signed with a weak hash (MD5/SHA-1) or with a small key (RSA < 2048).
SMTP: [SSL: WRONG_VERSION_NUMBER] wrong version number — SMTP over SSL on a STARTTLS port
Your client tried to start TLS immediately on a port where the server speaks plain SMTP first (or the reverse), so the handshake…
OpenSSL: error:14094410 / SSL alert number 70 — tlsv1 alert protocol version
The server rejected the TLS version your client offered, because it requires a newer (or older) protocol.
OpenSSL/Nginx/Apache: error:0909006C:PEM routines:get_name:no start line / unable to load Private Key
The server or tool cannot read the private key file — wrong format, encrypted with a passphrase, wrong path, or a certificate pas…
gRPC: rpc error: code = Unavailable desc = connection error: desc = "transport: authentication handshake failed: x509: certificate signed by unknown authority"
A gRPC client could not complete TLS to the server — untrusted certificate, name mismatch, or plaintext/TLS mismatch.
MySQL: ERROR 2026 (HY000): SSL connection error: SSL is required but the server doesn't support it
The client demanded SSL/TLS (`--ssl-mode=REQUIRED`) but the MySQL server has TLS disabled or no certificates configured.
Firefox: Secure Connection Failed — SSL received a record that exceeded the maximum permissible length. Error code: SSL_ERROR_RX_RECORD_TOO_LONG
Firefox sent a TLS handshake but received plain HTTP back — you used `https://` on a port that serves HTTP.
OpenSSL: verify error:num=10:certificate has expired — notAfter=Jan 1 00:00:00 2025 GMT
OpenSSL's verification found a certificate in the chain whose validity period has ended.
OpenSSL: Error outputting keys and certificates — Mac verify error: invalid password?
A `.p12`/`.pfx` file could not be opened because the password is wrong, or its encryption is unsupported by your OpenSSL version.
Two steps away (32)
SSL: CERTIFICATE_VERIFY_FAILED / unable to get local issuer certificate
The client couldn’t verify the server’s TLS certificate chain, so it refused the HTTPS connection.
fatal: unable to access 'https://…': SSL certificate problem: unable to get local issuer certificate
Git doesn’t trust the HTTPS server’s certificate — corporate proxy, self-hosted Git with an internal CA, or outdated CA bundle.
javax.net.ssl.SSLHandshakeException: PKIX path building failed: unable to find valid certification path to requested target
Java doesn’t trust the server’s certificate chain (self-signed, corporate proxy CA, or missing intermediate).
Cloudflare Error 525: SSL Handshake Failed
Cloudflare couldn’t complete a TLS handshake with your origin (SSL mode Full / Full strict).
QuotaExceededError: Failed to execute 'setItem' on 'Storage': Setting the value exceeded the quota
localStorage/sessionStorage is full (about 5 MB per origin) or storage is disabled.
NotAllowedError: play() failed because the user didn't interact with the document first.
The browser blocked media autoplay with sound until the user interacts with the page.
Error: error:0308010C:digital envelope routines::unsupported
An old build tool (webpack 4, old react-scripts) uses a hash algorithm that OpenSSL 3 in Node 17+ disables.
OpenSSL: unable to load certificate / PEM routines:get_name:no start line (key values mismatch)
OpenSSL (or Nginx/Apache) couldn’t read the certificate or key — wrong file format, wrong file, or the key doesn’t match the cert…
Dart: HandshakeException: Handshake error in client (OS Error: CERTIFICATE_VERIFY_FAILED: unable to get local issuer certificate)
The app refused the server's TLS certificate because it is self-signed, expired, missing intermediates, or the device clock/CA st…
OpenSSL: error:14094410:SSL routines:ssl3_read_bytes:sslv3 alert handshake failure (SSL alert number 40)
The server aborted the handshake with alert 40 — no acceptable parameters (cipher, signature algorithm, client certificate or SNI…
Nginx: [emerg] SSL_CTX_use_PrivateKey_file("/etc/ssl/server.key") failed (SSL: error:0B080074:x509 certificate routines:X509_check_private_key:key values mismatch)
The private key does not belong to the certificate configured in the server.
Nginx: [emerg] SSL_CTX_set_tmp_dh("/etc/ssl/dhparam.pem") failed (SSL: error:1401E0A8:SSL routines:... dh key too small)
The Diffie-Hellman parameters file is too weak (e.g. 512 or 768 bit) for the current OpenSSL security level.
SMTP: 421 4.7.0 Our system has detected an unusual rate of unsolicited mail originating from your IP address. Mail sent from your IP address has been temporarily rate limited
The receiving server (often Gmail or Outlook) is temporarily throttling your mail because the volume or reputation of your sendin…
SMTP: 450 4.7.1 <user@example.com>: Recipient address rejected: Greylisted, see http://postgrey.schweikert.ch/help/example.com.html
The recipient server deliberately rejected the first delivery attempt from an unknown sender (greylisting) and expects a legitima…
SMTP: 451 4.3.0 Error: queue file write error / 451 Requested action aborted: local error in processing
The server hit an internal problem (disk, database, content filter, DNS) while handling your message and asked you to retry later.
Chrome: This site can’t provide a secure connection — uses an unsupported protocol. ERR_SSL_VERSION_OR_CIPHER_MISMATCH
The browser and the server could not agree on a TLS version or cipher — the server is too old or misconfigured, or the browser is.
Chrome: Connection not secure — ERR_SSL_OBSOLETE_VERSION (old TLS 1.0/1.1)
The server only supports an outdated TLS version that current browsers no longer allow.
Java: javax.net.ssl.SSLHandshakeException: Received fatal alert: handshake_failure
The server rejected the Java client's TLS offer — no shared protocol/cipher, SNI issue or a required client certificate.
Apache: AH02240: Server should be SSL-aware but has no certificate configured / SSLCertificateFile: file '/etc/ssl/x.crt' does not exist or is empty
Apache cannot find the certificate or key file named in its configuration, or `SSLEngine on` is set without any certificate.
Java keytool: java.io.IOException: Keystore was tampered with, or password was incorrect
keytool or the JVM could not open the keystore — wrong password, wrong file type, or damaged file.
Windows/IIS: A specified logon session does not exist / The certificate does not have a private key associated with it
IIS cannot bind an HTTPS site because the imported certificate has no private key attached.
Go: x509: certificate signed by unknown authority
The Go TLS client does not trust the CA that signed the server's certificate.
Go: x509: certificate is valid for www.example.com, not api.example.com
The server's certificate does not list the hostname you connected to (SAN mismatch), or it has expired.
OpenSSL: SSL alert number 112 — tlsv1 unrecognized name
The server did not recognise the hostname sent in SNI and rejected the handshake (or an alert/warning is logged).
Go: sql: no rows in result set
`QueryRow(...).Scan(...)` found no row for the query.
Go: sql: database is closed
The `*sql.DB` handle was closed (or the connection died) before the query ran.
Let's Encrypt: Fetching http://example.com/.well-known/acme-challenge/token: Timeout during connect (likely firewall problem)
The ACME validation server could not reach your server on port 80 within the timeout.
Firefox: Peer's Certificate has expired. Error code: SEC_ERROR_EXPIRED_CERTIFICATE
Firefox found an expired certificate in the chain presented by the server.
Firefox: Websites prove their identity via certificates — the certificate is only valid for other names. Error code: SSL_ERROR_BAD_CERT_DOMAIN
The certificate does not include the hostname you typed.
Nginx: [emerg] no "ssl_certificate" is defined for the "listen ... ssl" directive in /etc/nginx/sites-enabled/default:3
A server block listens with `ssl` but has no `ssl_certificate` and `ssl_certificate_key`.
NET::ERR_CERT_DATE_INVALID (certificate expired)
The site’s certificate has expired (or isn’t valid yet) — or the device clock is wrong.
Certbot: Failed to renew certificate example.com with error — The following certs could not be renewed: /etc/letsencrypt/live/example.com/fullchain.pem (failure)
`certbot renew` failed for one or more certificates, so they will expire if you don't fix it.
Map another error
Popular: 500403400ORA-009331064Critical errorFileNotFoundException assemblyTypeError