"schannel: failed to receive handshake, SSL/TLS connection failed" error while using Git Clone, Pull, Push or Fetch
Platform Notice: Cloud - This article applies to Atlassian products on the cloud platform.
Summary
This knowledge base explains how to address the error message "schannel: failed to receive handshake, SSL/TLS connection failed" that occurs while using Git's clone, pull, push, or fetch commands locally.
10:34:44.724660 http.c:774 == Info: Connected to bitbucket.org (<ip>) port 443 (#0)
10:34:45.139844 http.c:774 == Info: schannel: failed to receive handshake, SSL/TLS connection failed
10:34:45.139844 http.c:774 == Info: Closing connection 0
10:34:45.139844 http.c:774 == Info: schannel: shutting down SSL/TLS connection with bitbucket.org port 443
10:34:45.140838 http.c:774 == Info: Send failure: Connection was reset
10:34:45.140838 http.c:774 == Info: schannel: failed to send close msg: Failed sending data to the peer (bytes written: -1)
fatal: unable to access 'https://bitbucket.org/<workspace>/<repo>.git/': schannel: failed to receive handshake, SSL/TLS connection failed
Diagnosis
- Try connecting to a different network, such as a VPN or a mobile hotspot, and check if the error persists. This will help determine if the error is related to your local network.
- Check if you have a proxy configured in your network and temporarily disable it to see if it's causing the error. A misconfigured proxy can sometimes interfere with Git's ability to verify SSL certificates, resulting in an error message.
Cause
The error message "schannel: failed to receive handshake, SSL/TLS connection failed" usually occurs when there is an issue with the SSL/TLS handshake process between the client and server during a secure connection establishment.
The SSL/TLS handshake is a process that establishes a secure connection between a client and a server over a network. During the handshake process, the client and server exchange cryptographic keys, agree on a common cipher suite and authenticate each other's identity.
There are several reasons why the handshake process may fail, leading to the error message you are seeing, but the main reasons this can happen are:
Firewall or network issues: If a firewall or network issue prevents the client and server from establishing a secure connection, the handshake may fail.
Client-side issues (proxy): If there is an issue with the client's SSL/TLS implementation or configuration, the handshake may fail.
Solution
If the steps suggested in the diagnosis resolve the issue, then the issue is most likely with your local network. Please contact your network team to identify if any recent changes can cause the SSL/TLS handshake to fail.