Docs Menu
Docs Home
/ /
/ / /

Configurar MongoDB para FIPS

El Estándar Federal de Procesamiento de Información (FIPS) es un estándar de seguridad informática del gobierno estadounidense que se utiliza para certificar módulos y bibliotecas de software que cifran y descifran datos de forma segura. Puede configurar MongoDB para que se ejecute con una biblioteca certificada FIPS 140-2 para OpenSSL. Configure FIPS para que se ejecute de forma predeterminada o según sea necesario desde la línea de comandos.

Una descripción completa de FIPS y TLS/SSL queda fuera del alcance de este documento. Este tutorial presupone conocimientos previos de FIPS y TLS/SSL.

Importante

MongoDB y FIPS

FIPS es una propiedad del sistema de cifrado, no del sistema de control de acceso. Sin embargo, si su entorno requiere cifrado y control de acceso compatibles con FIPS, debe asegurarse de que el sistema de control de acceso utilice únicamente cifrado compatible con FIPS.

La compatibilidad con FIPS de MongoDB abarca la forma en que MongoDB utiliza las bibliotecas SSL/TLS para el cifrado de red, la autenticación SCRAM y la autenticación X.509. Si utiliza la autenticación Kerberos o LDAP, debe asegurarse de que estos mecanismos externos sean compatibles con FIPS.

Nota

MongoDB deshabilita el soporte para el cifrado TLS 1.0 en sistemas donde TLS 1.1+ está disponible.

El modo FIPS solo está disponible con EdiciónMongoDB Enterprise. Ver Instalar MongoDB Enterprise para descargar e instalar MongoDB Enterprise.

El modo FIPS es compatible con las siguientes plataformas:

Plataforma
Biblioteca TLS/SSL

Linux

OpenSSL

Windows

Canal seguro (SChannel)

macOS

Transporte seguro

A partir de MongoDB,6.0.7 el modo FIPS admite OpenSSL3 para los siguientes sistemas operativos:

  • Ubuntu 22.04

  • RHEL 9

  • Amazon Linux 2023

Seleccione la pestaña a continuación para su plataforma:

Su sistema Linux debe tener una biblioteca OpenSSL configurada con el módulo FIPS 140-2 para admitir el modo FIPS para MongoDB.

  • Verifique que su software OpenSSL incluya soporte FIPS ejecutando el siguiente comando:

    openssl version
  • Para Red Hat Enterprise Linux 6.x (RHEL 6.x) o sus derivados como CentOS 6.x, el kit de herramientas OpenSSL debe ser al menos la versión openssl-1.0.1e-16.el6_5 Para usar el modo FIPS. Para actualizar la biblioteca OpenSSL en estas plataformas, ejecute el siguiente comando:

    sudo yum update openssl
  • Algunas versiones de Linux ejecutan periódicamente un proceso para previncular bibliotecas dinámicas con direcciones preasignadas. Este proceso modifica las bibliotecas OpenSSL, específicamente libcrypto. El modo FIPS de OpenSSL fallará posteriormente la comprobación de firma realizada al inicio para garantizar que libcrypto no se haya modificado desde la compilación.

    Para configurar el proceso de preenlace de Linux para que no preenlace libcrypto, ejecute el siguiente comando:

    sudo bash -c "echo '-b /usr/lib64/libcrypto.so.*' >>/etc/prelink.conf.d/openssl-prelink.conf"

Una vez que haya configurado su sistema Linux para admitir el funcionamiento compatible con FIPS, siga los pasos a continuación para configurar su mongod instancia o mongos para que funcione en modo FIPS.

Consulte Configurar instancias de MongoDB para TLS/SSL en implementaciones autogestionadas para obtener más información sobre cómo configurar su implementación para usar TLS/SSL. Asegúrese de que su certificado sea compatible con FIPS.

Realice estos pasos después de configurar instancias de MongoDB para TLS/SSL en implementaciones autoadministradas.

1

Para configurar mongod mongos su instancia o para usar el modo FIPS, apague la instancia y actualice el archivo de configuración con la net.tls.FIPSMode configuración:

net:
tls:
FIPSMode: true
2

Por ejemplo, ejecute este comando para iniciar la instancia con su archivo de mongod configuración:

mongod --config /etc/mongod.conf

Consulte el archivo de registro del servidor para ver si aparece un mensaje que indique que FIPS está activo:

FIPS 140-2 mode activated

Microsoft proporciona el siguiente recurso sobre cómo configurar el modo FIPS para Windows 10 y Windows Server 2016 o posterior:

Validación FIPS - 1402 en Windows

Una vez que haya configurado su sistema Windows para admitir el funcionamiento compatible con FIPS, siga los pasos a continuación para configurar su mongod instancia o mongos para que funcione en modo FIPS.

Consulte Configurar instancias de MongoDB para TLS/SSL en implementaciones autogestionadas para obtener más información sobre cómo configurar su implementación para usar TLS/SSL. Asegúrese de que su certificado sea compatible con FIPS.

Realice estos pasos después de configurar instancias de MongoDB para TLS/SSL en implementaciones autoadministradas.

1

Para configurar mongod mongos su instancia o para usar el modo FIPS, apague la instancia y actualice el archivo de configuración con la net.tls.FIPSMode configuración:

net:
tls:
FIPSMode: true
2

Por ejemplo, ejecute este comando para iniciar la instancia con su archivo de mongod configuración:

mongod.exe --config /etc/mongod.conf

Consulte el archivo de registro del servidor para ver si aparece un mensaje que indique que FIPS está activo:

FIPS 140-2 mode activated

Las versiones compatibles de macOS cumplen con FIPS por defecto. Consulta la documentación de tu versión de macOS para verificar su cumplimiento. Por ejemplo, Apple proporciona el siguiente recurso para macOS 10.14:

Módulos criptográficos FIPS de Apple para 10.14

En versiones compatibles de macOS, siga los pasos a continuación para configurar su instancia mongod mongos o para que funcione en modo FIPS.

Consulte Configurar instancias de MongoDB para TLS/SSL en implementaciones autogestionadas para obtener más información sobre cómo configurar su implementación para usar TLS/SSL. Asegúrese de que su certificado sea compatible con FIPS.

Realice estos pasos después de configurar instancias de MongoDB para TLS/SSL en implementaciones autoadministradas.

1

Para configurar mongod mongos su instancia o para usar el modo FIPS, apague la instancia y actualice el archivo de configuración con la net.tls.FIPSMode configuración:

net:
tls:
FIPSMode: true
2

Por ejemplo, ejecute este comando para iniciar la instancia con su archivo de mongod configuración:

mongod --config /etc/mongod.conf

Consulte el archivo de registro del servidor para ver si aparece un mensaje que indique que FIPS está activo:

FIPS 140-2 mode activated

A partir de MongoDB,5.1 las instancias que se ejecutan en modo FIPS tienen el mecanismo de autenticación SCRAM-SHA-1 deshabilitado de forma predeterminada. Puede habilitar el mecanismo de autenticación SCRAM-SHA-1 con el comando setParameter.authenticationMechanisms.

Este cambio no afectará a los controladores destinados a MongoDB setFeatureCompatibilityVersion 4.0+.

Si utiliza SCRAM-SHA-1:

Si configura mongod mongos mongod y para usar el modo FIPS, y mongos usan conexiones compatibles con FIPS.

Los siguientes programas ya no admiten la opción --sslFIPSMode:

Si configura mongod y para utilizar el modo FIPS, las herramientas de base de datos anteriores utilizan automáticamente conexiones compatibles con mongos FIPS.

La distribución mongosh predeterminada:

  • Contiene OpenSSL 3.

  • Utiliza conexiones compatibles con FIPS a mongod y si mongos configura mongod y mongos para usar el modo FIPS.

MongoDB también proporciona una distribución MongoDB Shell que puede utilizar:

  • OpenSSL 1.1 y OpenSSL 3 instalados en su servidor.

  • --tlsFIPSMode opción que habilita el modo FIPS mongosh.

Tip

Volver

Actualiza el clúster

En esta página