Como corrigir o erro “SSL Handshake Failed”
Publicados: 2021-07-04Configurar um certificado SSL (Secure Sockets Layer) para o seu site nunca foi tão fácil. Você pode gerar certificados gratuitamente e muitos provedores de hospedagem até mesmo os configuram para você. No entanto, se você não configurar seu certificado adequadamente, poderá encontrar erros como “Falha no handshake SSL”.
O erro “SSL handshake failed” aparece quando o navegador e o servidor não conseguem estabelecer uma conexão segura. Este artigo explicará o que é um handshake SSL e o que fazer se você não conseguir estabelecê-lo.
Vamos lá!
O que é um handshake SSL?
Como você deve saber, um certificado SSL valida a “identidade” do seu site. Ele faz isso usando uma chave criptográfica que seu navegador verifica para ter certeza de que o certificado é válido. Depois de estabelecer uma conexão, seu navegador pode descriptografar o conteúdo que o servidor o envia.
Este processo é denominado “aperto de mão”. Veja como funciona em mais detalhes:
- Você visita um site com um certificado SSL e seu navegador envia uma solicitação de dados.
- O servidor envia ao navegador uma chave pública criptografada.
- Seu navegador verifica essa chave e envia sua chave criptografada de volta ao servidor.
- O servidor descriptografa a chave e envia o conteúdo criptografado de volta ao navegador.
- Seu navegador descriptografa o conteúdo (concluindo assim o aperto de mão).
Tudo isso acontece em segundos. Os certificados SSL e o protocolo HTTPS permitem que seu site transmita dados com segurança, sem afetar negativamente o desempenho. Isso torna um certificado SSL vital para qualquer site. No entanto, como qualquer elemento do seu site, ele pode ocasionalmente criar problemas únicos.
O que causa o erro “SSL Handshake Failed”
O erro “SSL handshake failed” informa exatamente qual é o problema. Ele aparece quando o navegador não consegue estabelecer uma conexão com um site que tenha um certificado SSL:

Neste exemplo de um site que usa Cloudflare, você pode ver que o erro “SSL handshake failed” corresponde ao código “525”. Portanto, o erro pode resultar de problemas do lado do servidor e do cliente.
As causas mais comuns do erro “falha de handshake SSL” incluem:
- Seu dispositivo local tem data ou hora errada
- O navegador não suporta o protocolo SSL mais recente
- Seu certificado SSL é inválido
- Há um problema com a configuração de identificação do nome do servidor (SNI)
- Há um problema com sua rede de distribuição de conteúdo (CDN), como Cloudflare
Essa lista inclui dois problemas locais, dois relacionados ao servidor do seu site e um específico a um serviço de terceiros. Nas próximas seções, exploraremos como lidar com cada um deles.
Como corrigir o erro “SSL Handshake Failed” (5 maneiras)
Aqui, vamos começar mostrando como corrigir os problemas do lado do cliente que podem causar o erro “falha de handshake SSL”. Essas soluções são muito simples. No caso de não funcionarem, no entanto, seguiremos para soluções mais técnicas que você pode tentar.
1. Atualize a data e hora do seu dispositivo local
Quando seu navegador tenta estabelecer um handshake SSL, ele verifica o certificado em relação à data e hora do seu computador. Ele faz isso para verificar se o certificado SSL ainda é válido.
Se a data e a hora do seu dispositivo local estiverem desligadas, isso pode levar a erros durante o processo de verificação (ou seja, nenhum handshake). Felizmente, esse é um problema de solução simples.
Em um dispositivo Windows, abra o menu Iniciar e digite as configurações de Data e Hora . Selecione a opção que aparece e uma nova janela aparecerá. Ative a configuração Definir hora automaticamente e verifique se o fuso horário está correto:

Verifique se sua data está correta e tente recarregar o site.
Veja como corrigir data e hora em outros sistemas operacionais (SOs):
- Mac OS
- iOS
- Android
Se fixar a data e a hora em seu dispositivo local não resolver, você pode passar para a próxima correção.
2. Verifique se o seu navegador é compatível com o protocolo TLS mais recente
Em alguns casos, você pode encontrar o erro “Falha no handshake SSL” devido a problemas com seu navegador. O problema mais comum é que seu navegador não oferece suporte ao protocolo TLS (Transport Layer Security) que seu certificado usa.
Para simplificar, SSL e TLS são protocolos de autenticação e seu certificado pode usar qualquer um deles. Os navegadores modernos oferecem suporte a ambos os protocolos, mas as versões mais antigas talvez não.
A maneira mais fácil de determinar se o seu navegador está causando o problema é usar outro. Se o erro “SSL handshake failed” não aparecer em outros navegadores, o original pode ser o problema.

Para corrigir esse problema no Windows, abra o menu Iniciar e digite Opções da Internet . Selecione a opção que aparece e vá para a guia Avançado . Role a lista de configurações até encontrar as opções que correspondem às configurações de SSL e TLS:

Idealmente, você deve desmarcar a caixa para SSL 3 e 2 (se você vir essas opções). Você só precisa marcar as caixas para TLS 1, 1.1 e 1.2.
Em seguida, salve as alterações nas opções de Internet e tente acessar novamente o site. Observe que, se você estiver usando macOS ou iOS, o TLS 1.2 deve estar habilitado por padrão.
3. Verifique se o seu certificado SSL é válido
Os certificados SSL têm datas de expiração. Essa é uma função integrada que força você a renovar o certificado em algum momento e validar a propriedade do seu domínio.
Se o seu certificado SSL expirar, seu navegador não será capaz de estabelecer um handshake. Dependendo de quem é o seu provedor de certificado SSL, você provavelmente receberá notificações bem antes de expirar para que possa renová-lo.
Mesmo assim, não custa verificar se você não tem certeza sobre a data de validade do seu certificado. Você pode usar uma ferramenta como o Teste de servidor SSL para fazer isso:

O serviço retornará muitas informações sobre o certificado SSL do seu site. Se o certificado expirou, você verá quando sua validade acabou:

Nesse caso, você precisará reemitir e instalar o certificado SSL em seu site. Dependendo de quem é o seu provedor de hospedagem, eles podem ajudar nesse processo.
4. Verifique a configuração da identificação do nome do servidor (SNI) do seu servidor
Se estiver usando um servidor compartilhado para hospedar seu site, você pode ter problemas com vários certificados SSL. Os provedores de hospedagem usam a configuração de identificação de nome de servidor (SNI) adequada para garantir que, quando os visitantes tentarem acessar seu site, eles obtenham o certificado SSL correto (e não de outra propriedade).
De modo geral, a maioria dos provedores de hospedagem de boa reputação não apresenta problemas com a configuração SNI. Além disso, se você não estiver usando um servidor compartilhado, pode passar para a próxima correção.
Se você deseja ter 100% de certeza de que seu provedor de hospedagem não está apresentando problemas com a configuração SNI, entre em contato com o suporte para obter ajuda. Em um servidor compartilhado, você não poderá acessar essa configuração diretamente. Se esse for o problema, você pode querer considerar a atualização para um plano de hospedagem mais robusto.
5. Pause o Cloudflare para testar seu certificado SSL
Se você estiver usando o Cloudflare, o erro “SSL handshake failed” pode ser devido a um problema com a conexão ao seu site. A maneira mais fácil de testar isso é desativá-lo temporariamente.
Felizmente, o Cloudflare oferece um recurso de “pausa” que você pode usar para desabilitar o serviço a qualquer momento. Depois de fazer isso, recomendamos limpar o cache do navegador antes de tentar acessar o site novamente.
Se o erro de handshake SSL desaparecer, você vai querer entrar em contato com a Cloudflare para ver qual pode ser o problema. Enquanto você espera por uma resposta, mantenha o CDN desativado para que outros usuários também possam acessar o seu site. Por outro lado, se o erro SSL persistir, isso significa que provavelmente se deve a um erro na configuração do seu servidor (veja acima).
Conclusão
O erro “falha de handshake SSL” é relativamente fácil de corrigir, contanto que você esteja ciente de quais são suas causas potenciais. O erro pode ser devido a um problema com as configurações do seu dispositivo local, a configuração do seu servidor ou seu CDN.
Aqui está o que você pode precisar fazer para corrigir o erro “Falha no handshake SSL”:
- Atualize a data e a hora do seu dispositivo local.
- Certifique-se de que seu navegador seja compatível com o protocolo TLS mais recente.
- Verifique se o seu certificado SSL é válido.
- Verifique a configuração SNI do seu servidor.
- Pause o Cloudflare para testar seu certificado SSL.
Você tem alguma dúvida sobre como corrigir o erro “Falha no handshake SSL”? Vamos falar sobre eles na seção de comentários abaixo!
Imagem em destaque via vladwel / shutterstock.com
