Network error tls handshake failed

How to Fix the SSL/TLS Handshake Failed Error?

If you’re not having the right answer to what this SSL error means, then no worries, we’ve got your back. Read further and know what’s this SSL Handshake Failed Error, why it occurs, and how to fix the SSL/TLS Handshake Failed Error.

What Does SSL/TLS Handshake Failed Mean and What Causes It?

The SSL Handshake Failed error occurs when there’s a protocol mismatch. In other words, whenever the client and the server do not have mutual support for the same SSL/TLS version, it shows this SSL/TLS Handshake failed error message.

Once the user sends the secure connection request to the web browser, the browser is expected to send a public key to your computer, which is automatically verified against a list of CAs. And, the computer generates a key and encrypts it with the public key after receiving the certificate.

This SSL/TLS Handshake Failed Error occurs whenever the OS hasn’t granted the read access to the OS, ultimately preventing the complete authentication of the webserver, which indicates that the browser’s connection with the web server is not secure.

Some Reasons That Causes SSL/TLS Handshake Failed Error

Incorrect System Time The date and time of the client device are not correct. Client
Browser Error Configuration of a browser is causing the error Client
Main-in-the-middle The connection is manipulated or intercepted by a third-party. Client
Protocol Mismatch The server doesn’t support the protocol used by the client. Server
Cipher Suite Mismatch The server doesn’t support the cipher suite used by the client. Server
SNI-Enabled Server SNI-enabled servers can’t communicate with the client. Server
Incorrect Certificate
  • The name on the certificate doesn’t match with the hostname in the URL.
  • Incomplete or invalid certificate chain.
  • The SSL/TLS Certificate is expired or revoked.

Here’s the Client-Side Errors and its Solution

Whenever an SSL/TLS Handshake fails, it’s mostly due to certain things going on with the server, website, and the configuration of its installed SSL/TLS.

Presently the culprit is TLS configuration as support for SSL 3.0 is deprecated. However, there’s a distinct possibility that a client-side error can be the reason behind the SSL/TLS Handshake Failed error. And, some of the common ones are like incorrect system time or browser updates.

Let’s see some of the common causes of SSL Handshake fail error in detail.

1. Incorrect System Time

Not always happen, but sometimes the system clock differs from the actual time. Maybe you did it intentionally, accidental change of settings, or any other reason. It’s a fact that SSL/TLS certificates come with a specific validity period, so the date and time of the system is equally important.

So, the solution is to change the system time and date to correct one, if the system clock is not showing the right time and date. But again, there’s no need to change your system time if it’s correct, as it’s likely that the cause of the error is not the System time.

2. Browser Error

For instance, if you’re using Google Chrome, then try using Mozilla Firefox or any other such as Apple Safari if OS is Mac or else Microsoft Edge for Windows.

However, if you still face the SSL/TLS Handshake Failed error, even after changing the browser, then the issue is not regarding browser but, most probably, the plugin. To verify whether the error can be solved or not, it’s recommended to disable all your installed plugins and reset your browser settings to default.

3. Man-in-the-Middle

Nevertheless, sometimes issues occur with such devices, which causes the SSL Handshake Failure error. And, the reason could be a network firewall preventing the connection or else configuration on an edge device on the server-side network, which means there’s a possibility that this error could be from the client or server-side depending upon the scenario.

Lastly, if the issue is from the client-side, then you can take a chance of exposing yourself by tweaking the settings on your VPN or antivirus. Though, never drop your antivirus or firewall to connect with a website. And, if the server is causing the issue, then mostly configuration is creating an issue on an edge device.

Here’s the Server-Side Errors and Its Solution

Let’s look at some of the common server-side issues.

1. Protocol Mismatch

For instance:

TLS 1.2 came more than a decade ago, and small segments of websites still fail to support it. Earlier back in March 2018, the final version of TLS 1.3 was published as RFC 8446 by the IETF. And, sites were also advised for adding support for TLS 1.3 at their earliest.

So, if the SSL/TLS Handshake Failure error is due to protocol mismatch, it generally means the client and server do not have mutual support for the same TLS version.

For example:

  • The client supports TLS 1.0 and TLS 1.1, whereas the server supports TLS 1.2.

As shown in this example, the TLS protocol is not supported mutually. So, it’s likely that the server won’t support backward versions. Nevertheless, the server shouldn’t fix this as well. In this above example, the client must be recommended to upgrade their browser, or else it must be latest with the latest TLS version supported. Presently all we can suggest is that TLS 1.2 or TLS 1.3 must be used, or else support must be added for it.

2. Cipher Suite Mismatch

Nevertheless, Cipher Suites used by TLS 1.3 has been refined. Earlier, Cipher Suite has algorithms that handled:

  • Symmetric Session Key Encryption
  • Asymmetric Public Key Encryption
  • Signature Hashing
  • Key Generation

Different Organizations and Government Agencies have different types of encryption standards that suggest different kinds of cipher suites so clients can have different options while being able to find a mutually acceptable cipher. No doubt, it’s less likely that you get a site that only supports a single cipher suite.

Many times, it happens within a network, if you’re doing SSL bridging, where an edge device receives and decrypts HTTPS traffic and then re-encrypts it to send it to the application server. If the application server and edge device fail to share a mutually supported cipher suite, it will cause errors. Similar to Protocol versions, it’s also advisable for cipher suites, to never go backward but only moves forward.

Lastly, a protocol version or cipher suite is deprecated because there’s a vulnerability in that version. So, going back to the earlier version will only make your connection less secure.


OpenVPN Support Forum

Community Support Forum

TLS handshake failed — need help with debugging

TLS handshake failed — need help with debugging

Post by upsudemi » Tue Apr 23, 2019 2:06 pm

i am new to OpenVPN and also new to this Forum. I am trying to set up a OpenVPN Server with username and passwort authentification. and so far i managed to install and configure on my own. but now i need help. I have two questions:

1 ) I accidentally started a second OpenVPN tunnelling deamon instance called openvpn@server.sevice.service because of a simple typo . and i dont know how to stop, delete or kill it. any ideas? (see SERVICE OPENVPN STATUS at the bottom of this post)

2 ) I have trouble with the TLS Handshake. i always get
«TLS Error: TLS key negotiation failed to occur within 60 seconds (check your network connectivity) »
«TLS Error: TLS handshake failed»
Is there a problem with the inline ca-cert?

i would be very happy if someone with a little more experience could take a look at my configs and logs.
big thanks already

Server OS: OpenSUSE Leap 15.0
Client OS: Windows 10.0.17134

#local host

#port number
port 1194

#tcp or udp server with IPv4 only
proto udp4

#interface type, tun or tap
dev tun

ca ca.crt
cert server.crt
#secret key
key server.key

#diffie hellman parameters
dh dh.pem

#subnet to use for openvpn connections

#keepalive: send ping every 10 sec, tunnel down after 120 seconds no response
keepalive 10 120

#crypogrpfic cipher (must be in client.config as well.)
cipher AES-256-CBC

#lzo comression for the tunnel(must be in client.conf as well)

#drop privileges to user/group nobody
user nobody
group nobody

#makes the link more resistant to connection failures

#username and passwort authentication
#verify-client-cert none
#plugin /usr/lib64/openvpn/plugins/ login
#auth-user-pass-verify «/etc/openvpn/» via-file
#script-security 3
plugin /usr/lib64/openvpn/plugins/ openvpn

#openvpn status logfile
status openvpn-status.log

#openvpn server log
log openvpn-server.log

#log file verbosity
# 0 silent, exept fatal errors
# 4 reasonable for general usage
# 5 and 6 can help to debug connection problems
# extremly verbose
verb 5

#notify client when server retarts so it automaticcaly reconnects
explicit-exit-notify 1

# OpenVPN Konfiguration Client
# entspricht den Direktiven: tls-client und pull

# Protokoll UDP
dev tun

# OpenVPN Gateway
remote 1194 udp4

# don’t bind to specific port

# Check server certificate-type
# remote-cert-eku «TLS Web Server Authentication»

# Für OpenVPN 2.3 und zur Vermeidung Irreführender Warnmeldungen
# unter OpenVPN >= 2.4 (dort wird cipher ausgehandelt mit Server)
cipher AES-256-CBC

#lzo compression for the tunnel

# Don’t bind a local port

# Never give up trying to connect to theserver
# (useful for unreliable internet connections and laptops)
resolv-retry infinite

# Preserve state across restarts.

# HMAC-Algorithmus (Control-Channel) auf guten default für OpenVPN 2.3 festlegen
# Unter OpenVPN >= 2.4 wird er, unter Verwendung einer GCM-TLS-Cipher, ignoriert
auth SHA256

# Set output verbosity to n. 3 is recommended
verb 5

# Zum Debugging auskommentieren
mute 50

# Authentification with User and Passwort

# verhindert Speicherung der Passwörter im Speicher — Passwörter müssen dann regelmäßig neu eingegeben werden



OpenVPN Support Forum

Community Support Forum

TLS Error: TLS handshake failed

TLS Error: TLS handshake failed

Post by Steeven » Mon May 28, 2018 3:31 pm

I try to connect to a Windows 2012 R2 Server hosted in VMWare from a Windows 10 Client. The firewalls are configured with the UDP and TCP ports number 1194 open and when I connect with OpenVPN I have the following messages : TLS Error: TLS key negotiation failed to occur within 60 seconds (check your network connectivity); TLS Error: TLS handshake failed

Could you help me please?

Re: TLS Error: TLS handshake failed

Post by bbuckm » Mon May 28, 2018 4:09 pm

Re: Doesn’t have a valide IP configuration

Post by Steeven » Wed May 30, 2018 3:05 pm

I find the reason of the previous error. The problem come from the TAP-WINDOWS Adapter (version 9) who doesn’t have a valid IP configuration. Instead of the re install, deactivation or reboot server, the issue is not resolved

If someone has an idea? Thanks

Re: TLS Error: TLS handshake failed

Post by TinCanTech » Wed May 30, 2018 3:26 pm

We have no information to work with .

Re: Doesn’t have a valide IP configuration

Post by bbuckm » Wed May 30, 2018 5:04 pm

Re: TLS Error: TLS handshake failed

Post by Steeven » Mon Jun 04, 2018 1:49 pm

the issue is solved
the problem came from the firewall on the gateway who blocked the UDP protocol. I just need to declare the 1194 port with UDP protocol into the gateway config panel (in a local network) or declare the public IP of the OpenVPN server with the same port for UDP protocol.


How to Fix the SSL/TLS Handshake Failed Error?

Secure Sockets Layer (SSL): It is an internet security protocol based on encryption. It was developed in the year 1996 by Netscape to ensure privacy, authentication, and data integrity. It is the predecessor to TLS encryption. It provides a secure channel between two devices or machines communicating over the Internet or even an internal network. SSL is also used to secure communication between web browsers and web servers. This can be seen when a site’s address has HTTPS, where the ‘S’ stands for ‘secure’. It is also a transparent protocol and requires little to no interaction from the end user in establishing a secure session. Some examples of services protected by SSL are online payments, webmail servers, and system logins.

Transport Layer Security (TLS): It can be described as a more secure and updated version of SSL. It is a cryptographic protocol that allows end-to-end security of data exchanged between different applications over the Internet. It was specifically based on SSL 3.0 and was developed in the year 1999 by the Internet Engineering Task Force (IETF). As SSL has not been updated since the year 1996, TLS has been considered the industry standard for over 20 years. TLS is implemented on top of TCP to encrypt Application Layer protocols like HTTP, FTP, SMTP, and IMAP. It can also be implemented on UDP, DCCP, and SCTP. The main use of TLS is to encrypt the communication between web applications and servers. For example, web browsers loading a website.

An SSL/ TLS handshake error occurs when the client and server can’t establish communication over the SSL/TLS protocol (usually due to a protocol mismatch).

Some common fixes to the SSL/TLS handshake failed error:

1. Correcting System Time: It is one of the easiest and most obvious fixes. If the system date and time on your device are incorrect, it can cause an SSL/TLS handshake failed error. This error happens because the correct date and time are essential for SSL certificates; as they have finite lifespans and have an expiration date.

2. Using a different Browser: Sometimes, the browser in use can cause the SSL/TLS handshake failure. It may be due to a browser misconfiguration or a browser plugin, which can cause problems in connecting to legitimate websites. As finding out the exact misconfiguration can be time-consuming, you can simply try another browser. If you still face the SSL/TLS handshake failure even after changing the browser, the issue usually lies with the browser plugins. To verify whether this is the case, disable all installed plugins and check again.

3. Add website to allowlist: It may be possible that your firewall is intercepting your request for inspection, causing an SSL/TLS handshake failure. To fix this, add the website to your allowlist. For Google Chrome,

  • Open the admin console homepage and go to DevicesChrome.
  • SettingsUsers & browsers.
  • Leave the top organizational unit selected (which it should be by default). This applies the setting to all users and enrolled browsers.
  • Scroll down to URL Blocking and enter the website you want to access, under Blocked URL Exceptions.
  • Hit Save.

4. Update browser to the latest SSL protocol: To check if your browser is using the latest SSL protocol:


Читайте также:  Error c4996 scanf this function or variable may be unsafe