Quiero configurar un clúster de base de datos de Amazon Aurora aprovisionado para que sea de acceso público. Además, quiero proteger mi clúster de base de datos de Aurora de las conexiones externas.
Descripción corta
Requisitos previos: Para conectarte a un clúster de base de datos desde fuera de la conexión de Amazon Virtual Private Cloud (Amazon VPC), las instancias del clúster deben tener una dirección IP pública. La instancia de base de datos de Aurora también debe ejecutarse en una subred de acceso público.
Puedes usar TLS para proteger las conexiones desde fuera de la VPC.
Resolución
Establecimiento de una dirección IP pública para la instancia de base de datos
Para establecer una dirección IP pública para la instancia de base de datos, modifica la instancia de base de datos. En la página Modificar instancia de base de datos, en Conectividad, expande la sección Configuración adicional. En Ejecutar la instancia de base de datos en una subred pública, selecciona Acceso público.
Ejecución de una instancia de base de datos en una subred pública
Para asegurarte de que la subred de la instancia de base de datos tiene acceso a Internet, sigue estos pasos:
- Comprueba que la VPC tenga una puerta de enlace de Internet conectada.
- Comprueba que todas las subredes del grupo de subredes de base de datos utilicen una tabla de enrutamiento con la puerta de enlace de Internet. Si la subred usa la tabla de enrutamiento principal de la VPC, agrega la ruta para la puerta de enlace de Internet (0.0.0.0/0). También puedes crear una tabla de enrutamiento personalizada con una ruta a la puerta de enlace de Internet y, a continuación, asociarla a la subred.
- Modifica las reglas de entrada del grupo de seguridad para agregar la dirección IP pública de origen desde la que deseas conectarte a la instancia de base de datos. Configura los ajustes de las reglas:
En Tipo, selecciona MySQL/Aurora o PostgreSQL según tu motor.
En Origen, introduce el rango de CIDR manualmente o elige Mi IP para conectarte a la instancia de base de datos desde la misma estación de trabajo.
Protección del clúster de base de datos de las conexiones externas a la VPC
Usa TLS para cifrar las conexiones que provienen de fuera de una VPC. La transferencia de datos se realiza a través de Internet. Por lo tanto, se recomienda utilizar el parámetro ssl-ca para pasar el certificado de CA y, a continuación, activar la validación del nombre de host.
Para probar la conexión TLS, ejecuta el comando según la versión de Aurora que utilices.
Aurora compatible con MySQL 5.7 y versiones posteriores:
mysql -h Your-aurora-cluster-endpoint.cluster-abcdefghxyz.us-east-1.rds.amazonaws.com -u your-db-user --ssl-ca=rds-combined-ca-bundle.pem --ssl-mode=VERIFY_IDENTITY
Nota: Sustituye Your-aurora-cluster-endpoint.cluster-abcdefghxyz.us-east-1.rds.amazonaws.com por el ARN del punto de enlace del clúster y your-db-user por el usuario de tu base de datos.
Edición de Amazon Aurora compatible con PostgreSQL:
psql -h your-aurora-cluster-endpoint.cluster-abcdefghxyz.us-east-1.rds.amazonaws.com -p 5432 "dbname=postgres user=your-db-user sslrootcert=rds-combined-ca-bundle.pem sslmode=verify-full"
Nota: Sustituye Your-aurora-cluster-endpoint.cluster-abcdefghxyz.us-east-1.rds.amazonaws.com por el ARN del punto de enlace del clúster y your-db-user por el usuario de tu base de datos.
También puedes aplicar TLS a los clústeres de bases de datos. Para Aurora compatible con MySQL, define TLS a nivel de usuario de la base de datos. En el caso de Aurora compatible con PostgreSQL, define el parámetro rds.force_ssl en 1.
Información relacionada
Conexiones TLS a clústeres de bases de datos de Aurora MySQL
Protección de los datos de Aurora PostgreSQL con SSL/TLS
¿Cómo puedo conectarme a mi instancia de base de datos de Amazon RDS con un host bastión desde mi máquina Linux o macOS?
¿Cómo puedo configurar los puntos de enlace de Aurora públicos y privados en la consola de Amazon RDS?