¿Cómo puedo resolver un error de conexión SSL ERROR 2026 al conectarme a una instancia de base de datos de Amazon RDS para MySQL o de Aurora?

5 minutos de lectura
0

Estoy intentando conectarme a mi instancia de base de datos o clúster de Amazon Relational Database Service (Amazon RDS) mediante capa de sockets seguros (SSL). He recibido el siguiente error: «ERROR 2026 (HY000): Error de conexión SSL» ¿Cómo puedo resolver el ERROR 2026 de Amazon RDS para MySQL, Amazon Aurora para MySQL o Amazon Aurora Serverless?

Descripción breve

Hay tres tipos diferentes de mensajes de error para el ERROR 2026:

  • ERROR 2026 (HY000): Error de conexión SSL: Fallo en la validación del certificado SSL
  • ERROR 2026 (HY000): Error de conexión SSL: El servidor no admite SSL
  • ERROR 2026 (HY000): Error de conexión SSL: ASN: confirmación de otra firma incorrecta

Consulte los siguientes pasos de solución de problemas para cada mensaje de error.

Resolución

ERROR 2026 (HY000): Error de conexión SSL: Fallo en la validación del certificado SSL

Para solucionar este error, primero compruebe si está utilizando el punto de conexión del clúster o el punto de conexión de la instancia de base de datos. Para saber cómo Amazon RDS admite SSL, consulte Uso de SSL con una instancia de base de datos MySQL o Uso de SSL con clústeres de base de datos de Aurora MySQL.

Si usa un cliente que admite nombres alternativos de sujetos (SAN), solo puede usar el punto de conexión del clúster. Si su cliente no admite SAN, debe usar el punto de conexión de la instancia de base de datos principal.

**Nota:**El cliente de línea de comandos de MySQL predeterminado no admite SAN.

Si recibe este error al intentar conectarse al punto de conexión del clúster, intente conectarse al punto de conexión de la instancia de base de datos principal en la cadena de conexión. Por ejemplo, puede conectarse al punto de conexión del clúster. En el siguiente ejemplo, el punto de conexión del clúster es abcdefg-clust.cluster-xxxx.us-east-1.rds.amazonaws.com. El punto de conexión de la instancia de base de datos es abcdefg-clust.cluster-xxxx.us-east-1.rds.amazonaws.com.

Conectarse mediante el punto de conexión del clúster

[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

Conectarse mediante el punto de conexión de la instancia de base de datos

[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

ERROR 2026 (HY000): Error de conexión SSL: El servidor no admite SSL

Puede recibir este error si la versión del servidor o del motor que utiliza no admite SSL. Para resolver este error, migre a un motor que admita conexiones SSL.

ERROR 2026 (HY000): Error de conexión SSL: Error en SSL_CTX_set_default_verify_paths o ERROR 2026 (HY000): Error de conexión SSL: ASN: confirmación de otra firma incorrecta

Puede recibir este error si el identificador del certificado (nombre del archivo del certificado) no es correcto. También puede recibir este error si el cliente MySQL no admite el identificador del certificado, por ejemplo, con Aurora Serverless. Si usa clústeres de Aurora Serverless y usa el cliente de MySQL para conectarse a Aurora Serverless, debe usar los comandos de MySQL compatibles con MySQL 8.0.

Asegúrese de utilizar el nombre del identificador del certificado correcto y la ruta pertinente al certificado para conectarse adecuadamente. Antes de conectarse, confirme que ha descargado el certificado correcto. Para obtener más información, consulte Uso de SSL para cifrar una conexión a una instancia de base de datos.

El archivo de certificado raíz se encuentra en el Directorio de descargas en una instancia de Amazon Elastic Compute Cloud (Amazon EC2). En el siguiente ejemplo, ha introducido la ruta incorrecta, lo que da como resultado el ERROR 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

Nota: En este ejemplo se utiliza la cadena de conexión del directorio principal, pero el certificado raíz se encuentra en el Directorio de descargas.

En el siguiente ejemplo, ha usado la ruta al certificado raíz para conectarse correctamente:

[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

También puede recibir este error si no tiene permisos para el directorio en el que está almacenado el certificado. Asegúrese de que el certificado esté en un directorio al que tenga permisos de acceso. Consulte los siguientes ejemplos para conectarse con y sin permisos:

Conectarse con permisos 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

Conectarse con los permisos correctos

[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

Información relacionada

Uso de TLS/SSL con Aurora Serverless

OFICIAL DE AWS
OFICIAL DE AWSActualizada hace 3 años