Partilhar via


Solucionar problemas de erros SSL (Secure Sockets Layer) que ocorrem durante o processo de login

Observação

  • Este artigo é apenas para Windows.
  • Erros de autenticação consistentes geralmente ocorrem devido a configurações incorretas, enquanto falhas intermitentes geralmente ocorrem devido a uma queda de conexão, baixo desempenho ou problemas de tempo limite.
  • Recomendamos que você ative as extensões de arquivo no Explorador de Arquivos do Windows.

Sintomas

Você pode encontrar alguns dos seguintes erros ao usar TLS/SSL:

Pipes nomeados

Uma conexão com o servidor foi estabelecida com êxito, mas ocorreu um erro durante o processo de logon. (provedor: Provedor SSL, erro: 0 - Nenhum processo na outra extremidade do pipe) Microsoft SQL Server, Erro: 233.

TCP

Uma conexão com o servidor foi estabelecida com êxito, mas ocorreu um erro durante o processo de logon. (provedor: Provedor SSL, erro: 0 - A conexão foi fechada à força pelo host remoto 10054) Microsoft SQL Server, Erro: 233.

Resolução

Para solucionar esses erros de SSL, siga estas etapas:

  1. Atualize seu certificado expirado ou incorreto.
  2. Habilite os protocolos TLS.
  3. Certifique-se de que haja conjuntos de criptografia correspondentes no cliente e no servidor.

Para obter mais informações sobre essas etapas, consulte Erros de SSL são relatados após a atualização para o TLS 1.2.

Se essa resolução não funcionar, use as etapas na seção a seguir para coletar logs mais detalhados para obter informações sobre a causa raiz desses erros.

Captura avançada de dados SSL

Capturar configurações do Windows usando SQLCHECK

Execute o SQLCHECK em máquinas cliente, máquinas de servidor e quaisquer outros sistemas relacionados, como um servidor Web ou uma máquina intermediária de servidor vinculado do SQL Server.

  1. Baixe a versão mais recente do SQLCHECK e descompacte-a em uma pasta, como C:\MSDATA.
  2. Clique duas vezes no arquivo executável no Explorador de Arquivos do Windows. Um relatório será gravado na pasta onde SQLCheck.exe está localizado.

Configurar o rastreamento de diagnóstico interno (BID) do driver

  1. Baixe a versão mais recente do SQLTRACE e extraia-a para uma pasta, como C:\MSDATA.

    Haverá dois arquivos, SQLTrace.ps1 e SQLTrace.ini. O arquivo INI é usado para configurar o que capturar.

  2. Abra SQLTrace.ini no Bloco de Notas e vá para a seção BID Trace .

  3. Certifique-se de que BIDTrace=yes está definido.

  4. Verifique se está em conformidade com o driver que BIDProviderList seu aplicativo está usando.

    Os drivers internos System.Data.SqlClient .NET são habilitados automaticamente. Se esses não forem os drivers que seu aplicativo está usando, comente essa linha usando o caractere e remova o # comentário de um dos outros, como a seção ODBC ou a seção OLEDB . Se você não tiver certeza, pergunte ao administrador do banco de dados (DBA) ou ao desenvolvedor do aplicativo ou use o quarto BIDProviderList, que contém todos os drivers atualmente em uso.

  5. Salve o arquivo.

Configurar o rastreamento de rede

A seção de rede é configurada automaticamente com Network=yes e NETSH=yes. Essas configurações não devem ser alteradas sem um bom motivo.

Se você estiver rastreando uma conexão local, verifique se o aplicativo usa TCP/IP em vez de Memória Compartilhada ou Pipes Nomeados. Instale e use o WireShark para a captura de rede, pois ele suporta capturas de LoopBack. O WireShark também captura muito bem o tráfego VPN.

Configurar o rastreamento de autenticação

A seção Autenticação é configurada automaticamente com Auth=yes e muitas outras configurações.

Você também pode precisar definir FlushTickets=yes na seção MISC . Ele liberará tíquetes Kerberos para todos os usuários e serviços na máquina.

Habilitar rastreamentos BID

Depois que todas as alterações no arquivo SQLTrace.ini forem salvas, os rastreamentos BID deverão ser ativados antes que o rastreamento possa começar.

  1. Abra o PowerShell como administrador.

  2. Altere o diretório para a pasta que contém SQLTrace.ps1.

    CD C:\MSDATA
    
  3. Inicialize o registro de rastreamento BID.

    .\SQLTrace.ps1 -setup
    
  4. Reinicie o serviço ou aplicativo que você deseja rastrear. Caso contrário, o aplicativo não será rastreado.

Coletar os dados de rastreamento

Observação

Certifique-se de que as etapas anteriores foram concluídas em todas as máquinas antes de continuar.

  1. Abra o PowerShell em todos os computadores que estão sendo rastreados como administrador. Conclua as etapas iniciais em todas as máquinas antes de reproduzir o problema.

  2. Altere o diretório para a pasta que contém SQLTrace.ps1.

    CD C:\MSDATA
    
  3. Inicie a coleta de rastreamento.

    .\SQLTrace.ps1 -start
    
  4. Reproduza o problema quando o prompt de comando for exibido.

  5. Pare o rastreamento.

    .\SQLTrace.ps1 -stop
    

Uma pasta de saída é gerada no diretório atual e você pode usá-la para análise posterior.

O rastreamento pode levar um ou dois minutos para parar completamente, pois o download dos logs de eventos pode demorar um pouco.

Você pode iniciar e parar o rastreamento várias vezes sem refazer as etapas de configuração. Cada vez que é tirada, uma nova pasta é criada com um carimbo de data/hora como parte do nome da pasta. Esse tempo corresponde ao momento em que o rastreamento é iniciado.

Aviso de isenção de responsabilidade para informações de terceiros

Os produtos de terceiros mencionados neste artigo são produzidos por empresas independentes da Microsoft. A Microsoft não oferece nenhuma garantia, implícita ou não, do desempenho ou da confiabilidade desses produtos.