Como solucionar problemas de handshake TLS [Atualizado]

Nesta postagem, você aprenderá o que é o erro TLS Handshake Failed e por que ele ocorre. Em seguida, você aprenderá como solucionar problemas de handshake de TLS.
How to troubleshoot TLS handshake issues [Updated]

Se você encontrou uma mensagem de erro dizendo “TLS Handshake Failed” e está confuso sobre o que fazer, você não está sozinho. A falha no handshake TLS é um erro comum. Embora possa ser uma experiência frustrante, existem maneiras de solucionar problemas de handshake de TLS e resolvê-los.

 

TLS handshake issues

 

 

Nesta postagem, você aprenderá o que é o erro TLS Handshake Failed e por que ele ocorre. Em seguida, você aprenderá como solucionar problemas de handshake de TLS.

 

Vamos começar!

 

Noções básicas sobre TLS/SSL

 

Você precisa tornar seu site seguro para estabelecer conexões seguras entre dois servidores. Para fazer isso, você precisará instalar um certificado Secure Sockets Layer (SSL) – criptografia SSL e protocolo de segurança – em seu site. Isso permitirá que seu site use HTTPS para garantir conexões seguras.

 

Infelizmente, às vezes as coisas não saem como planejado e você pode encontrar problemas ao estabelecer uma conexão entre o servidor do seu site e o navegador do visitante. O problema pode ocorrer como um erro ‘TLS Handshake Failed’ ou qualquer outro problema.

 

Transport Layer Security (TLS) e Secure Sockets Layer (SSL) são protocolos de segurança que fornecem criptografia e identificação de sites. Eles são usados ​​para autenticar transferências de dados entre servidores, aplicativos, sistemas como navegadores e usuários.

 

Simplificando, você precisa de certificados TLS/SSL para proteger seu site usando HTTPS.

 

Compreendendo o handshake TLS/SSL

 

Um handshake TLS é uma forma de comunicação e acordo entre dois servidores: o host do seu site e o servidor do cliente. É a primeira etapa no processo de estabelecimento de uma conexão HTTPS clara.

 

Para autenticar e estabelecer uma conexão, o servidor do seu site e o navegador do cliente devem apertar as mãos, ou seja,e, passe por uma série de verificações (o aperto de mão). Isso estabelece os parâmetros de conexão HTTPS.

 

O que isso significa?

 

O cliente (geralmente um navegador) normalmente envia uma solicitação para estabelecer uma conexão segura com o servidor do site. O servidor então envia uma chave pública (protocolo) para o seu dispositivo e garante a verificação dessa chave em uma lista pré-preparada de protocolos/certificados. O dispositivo então gera uma chave e usa a chave do servidor para criptografá-la.

 

Se esta comunicação não produzir um resultado positivo, i.e, se o handshake SSL falhar entre o servidor e o cliente, o HTTPS não gerará uma conexão segura, o que resultará em uma falha no handshake TLS/SSL. Este erro pode aparecer de duas formas;

 

  • HTTP/1.1 503 Serviço indisponível
  • Alerta fatal recebido: handshake_failure (Erro 525)
TLS error 525

 

Observação: você verá essas mensagens de erro após uma chamada de API em que ocorre uma falha de handshake TLS.

 

O que causa problemas de handshake TLS

 

Geralmente, o Erro 525 ou o Erro 503 geralmente significa que houve uma falha no handshake TLS. Algumas das causas da falha podem incluir:

 

No lado do servidor, as causas de erro incluem;

  • Incompatibilidade de protocolo: o servidor não suporta o protocolo usado pelo cliente.
  • Certificado incorreto: o nome do host da URL do cliente não corresponde ao nome do host no certificado armazenado no servidor, ou o certificado está incompleto ou inválido, ou o certificado está incorreto ou expirou
  • Incompatibilidade do conjunto de criptografia: o servidor não suporta o conjunto de criptografia usado pelo cliente.
  • Servidor habilitado para SNI: quando o SNI (Server Name Identification) de back-end está habilitado, mas o cliente-servidor não consegue se comunicar com os servidores SNI.

 

Do lado do cliente, as causas podem incluir;

 

  • Se a conexão estiver sendo interceptada por terceiros.
  • Se o dispositivo do cliente tiver data ou hora errada.
  • Se o cliente estiver enfrentando um erro na configuração do navegador.

Como solucionar problemas de handshake de TLS

 

Existem diversas causas potenciais para os “problemas de handshake de TLS.” Você pode usar as seguintes soluções para solucionar esses problemas;

 

Método nº 1: atualize a data e hora do seu sistema

 

Uma configuração incorreta de data ou hora é uma das principais causas de problemas de handshake TLS. Como a hora do sistema ajuda a testar se o certificado é válido ou expirou, uma incompatibilidade entre a hora ou data do seu dispositivo e a do servidor pode fazer com que os certificados pareçam expirados.

 

Corrija a hora e a data definindo-as como automáticas e, em seguida, visite o site novamente e veja se o problema de handshake TLS foi corrigido.

 

Método 2: corrija a configuração do seu navegador para corresponder ao suporte ao protocolo TLS mais recente

 

Seu navegador é o intermediário e pode afetar a forma como seu dispositivo se comunica com o servidor. Qualquer configuração incorreta do navegador pode causar problemas de TLS.

 

Para verificar se o seu navegador é o problema, tente usar outro navegador para acessar o site e veja se você está enfrentando o mesmo problema. Se o problema estiver ocorrendo em todos os sites, é um problema de sistema.

 

Talvez haja uma extensão de navegador ou software de segurança no seu dispositivo que esteja interceptando as conexões TLS e causando o handshake TLS problemático. Em vários casos, um vírus ou malware no sistema estava envolvido.

 

Para corrigir esse problema:

 

  1. Talvez seja necessário desativar o software de segurança ou as extensões do navegador no seu dispositivo ou
  2. Reinicie seu navegador.

Método nº 3: verificar e alterar protocolos TLS [no Windows]

 

Problemas relacionados ao navegador também podem ser causados ​​por incompatibilidade de protocolo.

 

Por exemplo, se o navegador estiver configurado apenas para um valor TLS específico, por exemplo.g, TLS 1.0 ou TLS 1.1, mas o servidor suporta apenas TLS 1.2, então a comunicação entre os dois não terá um protocolo com suporte mútuo. Isso inevitavelmente leva a uma falha no handshake TLS.

 

Para verificar esse problema no seu navegador (Google Chrome):

  1. Abra o navegador Chrome
  2. Vá para Configurações > Avançado
  3. Role para baixo em Sistemas > Abra as configurações de proxy do seu computador
    Fix TLS issues

  4. No novo pop-up do Windows, selecione a guia Avançado.
  5. Na aba avançado, na seção Segurança, veja se a caixa ao lado de Usar TLS 1.2 está selecionado> marque se não estiver marcado.
    Fix TLS issues in chrome

  6. Veja se as caixas para SSL 2.0 e SSL 3.0 estão marcados> então desmarque-os se estiver. Faça o mesmo para TLS 1.0 e TLS 1.1
  7. Clique em OK e verifique se esse processo resolveu o erro de handshake.

 

Observação: se você estiver usando Mac Os ou Apple Safari, eles não oferecem uma opção para desativar ou ativar protocolos TLS/SSL porque o TLS 1.2 é, por padrão, ativado automaticamente.

Método nº 4: verifique a configuração do seu servidor [para oferecer suporte ao SNI]

 

A configuração da indicação de nome do servidor (SNI) é uma das principais causas de problemas de TLS. Para que o servidor funcione corretamente, o SNI permite hospedar com segurança vários certificados/protocolos TLS para um endereço IP.

 

Em um servidor, cada site possui seu próprio certificado. Portanto, se o servidor não estiver habilitado para SNI, há uma grande probabilidade de falha no handshake TLS porque o servidor pode não reconhecer o certificado atual.

 

Para verificar se o site requer SNI, você pode usar o teste de servidor SSL da Qualys. você só precisará inserir o nome de domínio do seu site, clicar em Enviar e aguardar o teste gerar resultados.

 

Na página de resultados, localize a mensagem “Este site funciona apenas em navegadores com suporte SNI”:

 

verify SNI


Método 5: verificar e garantir que os conjuntos de criptografia correspondam

 

Uma incompatibilidade de conjuntos de criptografia também é uma das principais causas de problemas de handshake de TLS, especialmente falhas de handshake de TLS. Os conjuntos de criptografia são apenas um conjunto de algoritmos, incluindo aqueles para criptografia em massa, troca de chaves e código de autenticação de mensagens, que são usados ​​para proteger conexões de rede TLS/SSL.

 

Se os conjuntos de criptografia do servidor não corresponderem ou não forem compatíveis com os da Cloudflare, há uma probabilidade maior de ocorrer um erro “Falha no handshake de TLD”.

 

Para verificar a configuração dos Cipher Suites, você usará novamente o teste de servidor TLS da Qualys. Novamente, basta inserir seu domínio, clicar em Enviar e aguardar o relatório.

 

Na página de resultados, verifique a seção Cipher Suites para localizar as informações da Cipher.

 

Esteja atento a status como aqueles escritos como ‘Fraco’.’ Você pode então corrigi-los comparando-os com o suporte do seu navegador.

 

check and ensure that cipher suites match

 

 

Finalmente

 

Acreditamos que essas dicas foram fáceis de seguir e que você conseguiu resolver o problema de handshake de TLS que encontrou. TLS é um tópico extremamente vasto e pode haver outras soluções disponíveis.

 

Se você achou isso útil, talvez goste de nossa lista de e-mail. Compartilhamos muitas dicas, truques, solução de problemas, guias de procedimentos, comparações de produtos e muitos outros artigos centrados na ajuda todos os dias. Curto, elaborado, doce e prático!

 

Além disso, leia

 

> Corrigido: possível erro de banco de dados de atualização do Windows detectado
> O que é o Windows Service Host SuperFetch e como corrigi-lo
> Corrigido: o Google Chrome está aguardando problema de cache no Windows 10
> Resolvido: Ethernet não tem uma configuração IP válida no Windows 10