Como posso resolver um erro de conexão SSL ERRO 2026 ao me conectar a uma instância de banco de dados do Amazon RDS para MySQL ou Aurora?
Estou tentando me conectar à minha instância ou cluster de banco de dados do Amazon Relational Database Service (Amazon RDS) usando o Secure Sockets Layer (SSL). Recebi o seguinte erro: “ERRO 2026 (HY000): Erro de conexão SSL" Como posso resolver o ERRO 2026 do Amazon RDS para MySQL, Amazon Aurora para MySQL ou Amazon Aurora Serverless?
Breve descrição
Há três tipos diferentes de mensagens de erro para ERRO 2026:
- ERRO 2026 (HY000): Erro de conexão SSL: Falha na validação do certificado SSL
- ERRO 2026 (HY000): Erro de conexão SSL: O servidor não oferece suporte a SSL
- ERRO 2026 (HY000): Erro de conexão SSL: ASN: confirmação incorreta de outra assinatura
Consulte as etapas de solução de problemas a seguir para cada mensagem de erro.
Resolução
ERRO 2026 (HY000): Erro de conexão SSL: Falha na validação do certificado SSL
Para solucionar esse erro, primeiro valide se você está usando o endpoint do cluster ou o endpoint da instância de banco de dados. Para saber como o Amazon RDS oferece suporte ao SSL, consulte Usar SSL com uma instância de banco de dados MySQL ou Usar SSL com clusters de banco de dados do Aurora MySQL.
Se você usar um cliente que ofereça suporte a Nomes Alternativos do Assunto (SAN), poderá usar somente o endpoint do cluster. Se o seu cliente não oferecer suporte a SAN, você deverá usar o endpoint da instância primária de banco de dados.
Observação: o cliente de linha de comando padrão do MySQL não oferece suporte a SAN.
Se você receber esse erro ao tentar se conectar ao endpoint do cluster, tente se conectar ao endpoint da instância de banco de dados primária na string de conexão. Por exemplo, você pode se conectar ao endpoint do cluster. No exemplo a seguir, o endpoint do cluster é abcdefg-clust.cluster-xxxx.us-east-1.rds.amazonaws.com. O endpoint da instância de banco de dados é abcdefg-inst.xxxx.us-east-1.rds.amazonaws.com.
Conecte-se usando o endpoint do cluster
[ec2-user@ip-192-0-2-0 ~]$ mysql -h abcdefg-clust.cluster-xxxx.us-east-1.rds.amazonaws.com --ssl-ca rds-combined-ca-bundle.pem --ssl-mode=VERIFY_IDENTITY -u test -p test Enter password: ERROR 2026 (HY000): SSL connection error: SSL certificate validation failure
Conecte-se usando o endpoint da instância de banco de dados
[ec2-user@ip-192-0-2-0 ~]$ mysql -h abcdefg-inst.xxxx.us-east-1.rds.amazonaws.com --ssl-ca rds-combined-ca-bundle.pem --ssl-mode=VERIFY_IDENTITY -u test -p test Enter password: Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 26
ERRO 2026 (HY000): Erro de conexão SSL: O servidor não oferece suporte a SSL
Você pode receber esse erro se a versão do servidor ou do mecanismo que você usa não oferecer suporte a SSL. Para resolver esse erro, migre para um mecanismo que ofereça suporte a conexões SSL.
ERRO 2026 (HY000): Erro de conexão SSL: SSL_CTX_set_default_verify_paths falhou ou ERRO 2026 (HY000): Erro de conexão SSL: ASN: confirmação incorreta de outra assinatura
Você pode receber esse erro se o identificador do certificado (nome do arquivo do certificado) não estiver correto. Você também pode receber esse erro se o identificador do certificado não for suportado pelo cliente MySQL, como ocorre, por exemplo, com o Aurora Serverless. Se você usa clusters do Aurora Serverless e usa o cliente MySQL para se conectar ao Aurora Serverless, deverá usar os comandos do MySQL compatíveis com o MySQL 8.0.
Certifique-se de usar o nome correto do identificador do certificado e o caminho correto para o certificado para se conectar com êxito. Antes de se conectar, confirme se você baixou o certificado correto. Para obter mais informações, consulte Usar SSL para criptografar uma conexão com uma instância de banco de dados.
Em uma instância do Amazon Elastic Compute Cloud (Amazon EC2), o arquivo do certificado raiz está no diretório Downloads. No exemplo a seguir, você insere o caminho incorreto, o que resulta no ERRO 2026:
[ec2-user@ip-192-0-2-0 ~]$ mysql -h abcdefg-clust.cluster-xxxxx.us-east-1.rds.amazonaws.com --ssl-ca rds-combined-ca-bundle.pem --ssl-mode=VERIFY_IDENTITY -u test -p test Enter password: ERROR 2026 (HY000): SSL connection error: SSL_CTX_set_default_verify_paths failed
Observação: este exemplo usa a string de conexão no diretório inicial, mas o certificado raiz fica no diretório Downloads.
No exemplo a seguir, você usa o caminho para o certificado raiz para se conectar com êxito:
[ec2-user@ip-192-0-2-0 ~]$ mysql -h abcdefg-clust.cluster-xxxx.us-east-1.rds.amazonaws.com --ssl-ca /home/ec2-user/Downloads/rds-combined-ca-bundle.pem --ssl-mode=VERIFY_IDENTITY -u test -p test Enter password: Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 26
Você também pode receber esse erro se não tiver permissões para o diretório onde o certificado está armazenado. Certifique-se de que o certificado esteja em um diretório ao qual você tenha as permissões de acesso. Veja os exemplos a seguir para se conectar com e sem permissões:
Conexão com permissões insuficientes
[ec2-user@ip-192-0-2-0 ~]$ sudo chmod 700 rds-combined-ca-bundle.pem [ec2-user@ip-192-0-2-0 ~]$ mysql -h abcdefg-inst.xxxx.us-east-1.rds.amazonaws.com --ssl-ca rds-combined-ca-bundle.pem --ssl-mode=VERIFY_IDENTITY -u test -p test Enter password: ERROR 2026 (HY000): SSL connection error: SSL_CTX_set_default_verify_paths failed
Conexão com as permissões corretas
[ec2-user@ip-192-0-2-0 ~]$ sudo chmod 755 rds-combined-ca-bundle.pem [ec2-user@ip-192-0-2-0 ~]$ mysql -h abcdefg-inst.xxxx.us-east-1.rds.amazonaws.com --ssl-ca rds-combined-ca-bundle.pem --ssl-mode=VERIFY_IDENTITY -u test -p test Enter password: Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 810
Informações relacionadas
Conteúdo relevante
- feita há 6 diaslg...
- Resposta aceitafeita há 4 diaslg...
- feita há 20 diaslg...
- feita há 6 diaslg...
- AWS OFICIALAtualizada há 2 anos
- AWS OFICIALAtualizada há 2 meses