Obtenga certificados de servidor para habilitar el cifrado TLS para sus implementaciones de set de réplicas de MongoDB autogestionado.
Importante
Estos pasos se aplican a implementaciones de MongoDB autogestionadas. Los clústeres de MongoDB Atlas utilizan TLS por defecto. Si utiliza Cloud Manager o MongoDB Ops Manager, configure TLS a través de su herramienta de gestión de implementación.
Antes de comenzar
Antes de comenzar, asegúrese de tener la siguiente información y recursos:
Tienes una implementación de set de réplicas de MongoDB autogestionada que deseas proteger con TLS.
Tiene al menos un usuario administrador habilitado en su implementación para verificar las conexiones TLS en tutoriales posteriores. Si desea habilitar la autenticación de cliente X.509, el usuario administrador debe tener al menos el rol
userAdminpara crear y modificar usuarios en la base de datos$external.Tienes un nombre de host para cada nodo en tu implementación, como
mongo0.example.com,mongo1.example.comymongo2.example.com. Si utiliza una CA pública, debe tener un nombre de dominio registrado que corresponda a estos nombres de host.Tienes OpenSSL instalado en tu máquina.
Si planea utilizar una CA pública, como Let's Encrypt o DigiCert, sabrá qué CA pública está utilizando. Si planea utilizar una CA privada, tendrá acceso a la información de PKI de su organización. El proceso para obtener certificados puede variar según la CA que utilice. Sin embargo, debe terminar con los mismos archivos
.pemdescritos en la sección resultado final de este tutorial.Tiene abierta su interfaz de línea de comandos preferida.
Conoce los requisitos de configuración TLS de su implementación y si sus certificados necesitan
clientAuthEKU según la página de planificación de TLS.
Pasos
En este tutorial, se crea un certificado llamado mongo0.pem para el primer nodo de la implementación. Al generar certificados para nodos adicionales, sea específico en los nombres de los archivos. Por ejemplo, asigne el nombre mongo1.pem al certificado de su primer nodo secundario.
Resultado final
Al final de este tutorial, tendrás los siguientes archivos .pem en /etc/ssl/mongodb:
Para cada nodo, tiene un archivo
.pemque contiene el certificado y la llave privada de ese nodo, comomongo0.pem,mongo1.pemymongo2.pem.Para la implementación general, tiene el certificado de CA intermedio que emitió los certificados para cada nodo, como
ca.pem.
Próximos pasos
Para aprender a configurar TLS para su implementación de MongoDB autogestionada, continúe con el siguiente tutorial, Configurar TLS para una implementación autogestionada.