Consideraciones de seguridad para Red Hat Enterprise Linux en Azure
En este artículo se describen las consideraciones y recomendaciones para implementar la seguridad en el entorno de Red Hat Enterprise Linux (RHEL). Para proporcionar seguridad para los sistemas RHEL, use un enfoque destinado a varias áreas. La seguridad requiere que todos los equipos trabajen juntos para proteger las cargas de trabajo. Los productos o plataformas que implemente no pueden garantizar únicamente la seguridad de su entorno.
Implemente y siga un proceso riguroso que abarca componentes de comportamiento, administrativos y de ingeniería. Al implementar RHEL en una zona de aterrizaje de Azure, debe evaluar varios factores de seguridad. Para crear un entorno de nube seguro y resistente, implemente un enfoque estratégico que aplique los mecanismos de seguridad de Azure y Red Hat.
Consideraciones de diseño
Para proporcionar seguridad para los sistemas RHEL, en Azure o en cualquier otro lugar, asegúrese de empezar con contenido comprobado y validado. En entornos de nube modernos, los archivos binarios y el código pueden originarse en una amplia variedad de orígenes. Como primera consideración para la implementación, proteja la cadena de suministro de software.
Protección de imágenes
Puede encontrar imágenes en Azure Marketplace y en las secciones de ofertas de productos privados en las que las regiones Red Hat o Red Hat Limited en Europa, Oriente Medio y África (EMEA) publican el registro. Red Hat y Microsoft comprueban y validan estas imágenes para garantizar la integridad de origen y proporcionar configuraciones predeterminadas seguras para las instancias del sistema operativo RHEL.
Para cumplir los requisitos de seguridad en tiempo de ejecución de la organización para la carga de trabajo de destino, configure correctamente las instancias que cree a partir de estas imágenes. Para ayudar a simplificar las medidas de seguridad, use imágenes publicadas de Red Hat desde Azure Marketplace para implementar los sistemas RHEL. Siga las instrucciones de Red Hat para las especificaciones del sistema y de la imagen de la carga de trabajo. Para reducir la superficie expuesta a ataques, comience con una imagen de RHEL optimizada para Azure mínima. No es necesario crear ni configurar todas las instancias a partir de esta imagen base. Para cumplir varios requisitos de protección, se recomienda usar componentes que se puedan componer para crear imágenes específicas de la carga de trabajo.
También puede usar prácticas de GitOps para desarrollar canalizaciones de imágenes. Este enfoque es una metodología superior. Estas canalizaciones superponen los componentes que se pueden componer, definidos como código de configuración, en la imagen inicial para generar las imágenes de carga de trabajo.
Para usar imágenes de forma eficaz, implemente las siguientes consideraciones:
Cree una imagen base protegida que cumpla el modelo de privilegios mínimos para proporcionar una base sólida.
La configuración de seguridad y el software de capa se unen para promover la reutilización y seguir los procedimientos recomendados del entorno operativo estándar y de DevSecOps.
Use modelos de composición para imágenes para reducir el esfuerzo de pruebas y calificación y reducir los costes de mantenimiento.
Use modelos de composición para aumentar la flexibilidad y acelerar el tiempo de entrega de las nuevas cargas de trabajo.
Automatice el proceso de compilación, prueba y entrega de imágenes para el modelo.
Actualización de imágenes
También debe actualizar las imágenes con regularidad. Es probable que las instancias efímeras tengan una imagen más actualizada porque normalmente las implementa desde una imagen actual. Pero debe actualizar periódicamente las instancias de más largas mediante un sistema de aplicación de revisiones central. Este paso le ayuda a sondear la condición de los sistemas revisados en su entorno. Al minimizar la variabilidad de la implementación, se reduce el ruido de supervisión y puede identificar anomalías con mayor precisión y rapidez. Este enfoque aumenta la tasa de éxito de los esfuerzos automatizados de detección y corrección.
Para mantener controles de acceso estrictos, considere la posibilidad de implementar un sistema centralizado. Muchos proyectos de código abierto y aplicaciones comerciales fuera de la plataforma proporcionan ejemplos de implementación sencillos que usan cuentas locales o claves públicas implementadas localmente. Estos ejemplos pueden proporcionar una configuración segura, pero a medida que se expande la superficie de la nube, el esfuerzo para mantener la configuración localizada, incluso con la automatización, puede resultar problemático. La carga de automatización aumenta linealmente con cada instancia, pero el registro de seguridad y la carga de supervisión pueden escalarse a una velocidad exponencial. Estos cambios generan una carga excesiva en los recursos de proceso, almacenamiento y análisis. El control de acceso centralizado reduce los puntos de configuración, lo que reduce la automatización y la carga de registro, minimiza el cambio y simplifica la auditoría al tiempo que mantiene controles estrictos sobre el acceso a los recursos.
En áreas en las que la carga de trabajo requiere el cumplimiento de estándares criptográficos y líneas base de cumplimiento, considere la posibilidad de usar funcionalidades de plataforma integradas que admitan estándares abiertos para garantizar la compatibilidad con las cargas de trabajo en la nube. Red Hat y Microsoft cumplen y participan en organismos de estándares globales y proporcionan herramientas adecuadas. Por ejemplo, muchos archivos de configuración en una instancia individual tienen configuración de cifrado criptográfico para servicios y aplicaciones del sistema. La variación puede producirse fácilmente en todos los sistemas dentro de una carga de trabajo de destino y en una flota. Para definir las medidas de cumplimiento, considere la posibilidad de usar estándares abiertos. Las herramientas de Red Hat y Microsoft consumen formatos de archivo estandarizados para proporcionar los datos de configuración y vulnerabilidad más recientes. Red Hat proporciona fuentes actualizadas de Open Vulnerability and Assessment Language (OVAL) del equipo de seguridad de productos de Red Hat para los componentes de la plataforma Red Hat.
Azure presenta oportunidades únicas para usar características específicas de la nube y mantener los procedimientos recomendados para la seguridad y el cumplimiento. Entre las características y servicios de seguridad de la infraestructura de Azure se incluyen los siguientes:
Inicio seguro para máquinas virtuales: BIOS de instancia segura y configuración. Puede usar el inicio seguro para las máquinas virtuales para proteger el proceso de inicio, lo que garantiza que las máquinas virtuales se inicien con código comprobado.
Azure Disk Encryption en Azure Key Vault: cifrado de datos en reposo. Para proteger los datos en reposo, use Azure Disk Encryption en Key Vault para administrar claves y secretos de cifrado. Key Vault admite dos tipos de contenedores: almacenes y grupos de módulos de seguridad de hardware administrados (HSM). Puede almacenar software y claves, secretos y certificados respaldados por HSM en almacenes.
Microsoft Defender for Cloud: garantice la auditoría centralizada del sistema. Defender for Cloud puede proporcionar una ventanilla centralizada para la administración unificada de la seguridad y la protección contra amenazas.
Recomendaciones de diseño
Al diseñar entornos de RHEL en Azure, aproveche las funcionalidades de seguridad nativas de Red Hat y las características de seguridad en la nube de Azure para garantizar una implementación sólida, segura y eficaz. Comience con una imagen que proteja y compílela con archivos binarios validados conocidos. Las imágenes de RHEL en Azure Marketplace se simplifican para el rendimiento y la seguridad en la nube. Si tiene requisitos de seguridad específicos para su empresa, debe empezar con su propia imagen personalizada y protegida que compile a partir de archivos binarios procedentes de Red Hat. Red Hat Satellite puede mantener y administrar el código de Red Hat, Microsoft y de asociados o el código de aplicación personalizado. Satellite puede validar el código a través de credenciales y firmas de contenido administrado. RHEL comprueba la coherencia y la autenticidad del software del origen al disco.
Al usar las herramientas de administración de Azure y Red Hat para desarrollar flujos de trabajo automatizados, Red Hat recomienda usar colecciones certificadas de Ansible Automation Platform.
Asegúrese de que los flujos de trabajo:
- Generan, mantienen y prueban imágenes de línea base y carga de trabajo.
- Prueban e implementan instancias efímeras.
- Prueban el ciclo de revisión y entregan instancias de máquina virtual persistentes.
- Usan canalizaciones de automatización. Las canalizaciones de automatización reducen significativamente el esfuerzo de administración, garantizan una aplicación de directivas coherente, mejoran la detección de anomalías y aceleran la corrección en las zonas de aterrizaje de RHEL.
Considere también la posibilidad de usar Azure Compute Gallery. Puede crear la imagen de Red Hat con todos los mecanismos de seguridad necesarios que use en su organización y crear una imagen de esa máquina virtual. Después, puede compartir imágenes compatibles con la seguridad entre suscripciones y regiones en el entorno de Azure. También puede usar el control de versiones para un mayor control pormenorizado sobre las imágenes de máquina virtual. Este enfoque le ayuda a unificar las revisiones de seguridad de la instancia de proceso y las herramientas que se usan en su entorno.
Considere la posibilidad de implementar el Administrador de actualizaciones de Azure como parte del proceso de administración de actualizaciones. El Administración de actualizaciones es un servicio unificado que puede usar para supervisar las actualizaciones en las implementaciones. Use el Administrador de actualizaciones para sondear toda la flota de máquinas en Azure, en el entorno local y en otras nubes.
Administración de identidades y accesos
Para aplicar de forma centralizada directivas de acceso estrictas, integre Red Hat Identity Management (IdM). IdM usa confianzas e integraciones de OpenID Connect para consolidar la implementación nativa de Linux de las siguientes características en un modelo de seguridad empresarial sin sincronización de credenciales.
- Control de acceso basado en rol (RBAC)
- Control de acceso basado en host
- Directiva de elevación de privilegios
- Directiva de asignación de usuarios de SELinux
- Otros servicios críticos de Linux
En comparación con las implementaciones tradicionales de Linux, este enfoque genera ventajas, como:
- Control de cambios simplificado a través de puntos táctiles de automatización reducidos.
- Disminución del registro y la carga relacionada con el análisis.
- Cumplimiento de los requisitos de auditoría de autenticación.
- Coherencia de directivas.
IdM proporciona ventajas para administrar la directiva de seguridad centralizada de Linux.
Red Hat recomienda habilitar y ejecutar SELinux en todas las instancias basadas en RHEL, incluidos los entornos de desarrollo, prueba y producción. Todas las instalaciones e imágenes producidas por Red Hat pueden ejecutar SELinux en el modo de aplicación de forma predeterminada. Al diseñar implementaciones de cargas de trabajo, puede ejecutar SELinux en modo permisivo para toda la instancia o para servicios individuales dentro de la instancia. A continuación, los equipos de desarrollo, seguridad y operaciones pueden determinar las características de acceso de las aplicaciones y usar datos de registro de auditoría con herramientas SELinux para generar la directiva SELinux adecuada para la carga de trabajo de destino.
Las herramientas de generación de directivas SELinux pueden generar archivos de directivas basados en RPM para incluirlos en repositorios de contenido para la implementación de imágenes estandarizadas. Los equipos de desarrollo, seguridad y operaciones pueden entregar artefactos ascendentes de forma iterativa dentro de la canalización. Una vez que las pruebas determinen que no se generan infracciones de SELinux, puede establecer la configuración de SELinux para aplicar el modo. Las infracciones de SELinux que se generan durante la producción indican una desviación significativa del comportamiento aceptable de la aplicación. Debe marcar e investigar estas infracciones. Use SELinux para proporcionar visibilidad completa y administración proactiva de amenazas.
Para definir los roles de RBAC que asigne a las máquinas de RHEL, debe conocer los roles y las responsabilidades del equipo. Es posible que los equipos pertinentes requieran acceso elevado a máquinas virtuales (VM). Considere la posibilidad de usar los roles de colaborador de máquina virtual, lector de máquinas virtuales y otros similares para acceder a las máquinas virtuales. Considere la posibilidad de acceder Just-In-Time si no necesita acceso permanente. Tenga en cuenta las identidades administradas si el sistema RHEL debe autenticarse con Azure. Las identidades administradas asignadas por el sistema proporcionan más seguridad que las entidades de servicio y están asociadas al recurso de máquina virtual. Además de los roles RBAC, considere el acceso condicional para las personas que necesitan acceso a su entorno de Azure. Use el acceso condicional para restringir el acceso de usuario a su entorno de Azure en función de la ubicación, la dirección IP y otros criterios.
Uso de software antivirus
Asegúrese de que tiene el software antivirus adecuado en la máquina RHEL. Considere la posibilidad de incorporar Microsoft Defender para punto de conexión en Linux para protegerse frente a las vulnerabilidades más recientes. Tenga en cuenta que no debe habilitar Defender for Cloud Standard en máquinas RHEL que use para hospedar bases de datos SAP. Asegúrese de que cada máquina de RHEL y la carga de trabajo puedan ejecutar el software de protección de punto de conexión.
Administración de secretos
Red Hat recomienda establecer una directiva criptográfica de todo el sistema en todas las instancias siempre que sea posible. Puede caracterizar las implementaciones en la nube por diversidad. Los equipos de carga de trabajo eligen sus propias bibliotecas, lenguajes, utilidades y proveedores criptográficos para satisfacer las necesidades de sus soluciones concretas. La implementación de estándares, la factorización de componentes de aplicación, la composición y otras técnicas pueden reducir la variabilidad, pero puede configurar opciones criptográficas para aplicaciones y servicios en varios lugares dentro de una instancia determinada.
Para configurar con sensatez los nuevos componentes, es necesario un esfuerzo significativo y, a menudo, un profundo conocimiento criptográfico. Las directivas criptográficas obsoletas o configuradas incorrectamente crean riesgos. Una directiva criptográfica de todo el sistema alinea la configuración de los subsistemas criptográficos principales, que cubre los protocolos Seguridad de la capa de transporte (TLS), Seguridad del protocolo de Internet (IPSec), Extensiones de seguridad del sistema de nombres de dominio (DNSSEC) y Kerberos. Una directiva DEFAULT criptográfica para todo el sistema de RHEL implementa una configuración conservadora que elimina toda una clase de amenazas al deshabilitar los protocolos de comunicaciones heredados, como TLS v1.1 y versiones anteriores. Las directivas FUTURE y FIPS proporcionan configuraciones más estrictas. También puede crear directivas personalizadas.
Puede incorporar herramientas de auditoría y cumplimiento de seguridad del sistema RHEL. Céntrese en el análisis y la corrección automatizados que se alinean con los estándares del sector.
El demonio de auditoría de RHEL es auditd y el demonio de registro central es journalId. Azure Monitor puede ingerir datos de auditd y journalId para supervisar eventos de seguridad del sistema RHEL y alimentar Microsoft Sentinel u otros servicios de administración de eventos e información de seguridad (SIEM).
Los sistemas RHEL que necesitan satisfacer el cumplimiento de la Guía de implementación técnica de seguridad de la Agencia de sistemas de información de defensa (DISA-STIG) requieren la utilidad Advanced Intrusion Detection Environment (AIDE). Debe registrar la salida de AIDE en Azure.
Supervise e integre con Ansible Automation Platform para identificar, alertar y corregir archivos críticos del sistema.
Use componentes de nivel de sistema operativo gratuitos en todas las instancias de RHEL basadas en Azure.
Aplique la directiva de ejecución de código: use el demonio fapolicyd para limitar las aplicaciones que se pueden ejecutar en la instancia de RHEL.
Administre el tráfico de entrada y salida de instancias: use firewalld con grupos de seguridad de red (NSG) de Azure para administrar eficazmente el tráfico de entrada y salida hacia el norte a las máquinas virtuales.
Administre de forma centralizada la configuración a través de la automatización: use la metodología de GitOps para garantizar la administración coherente de la configuración durante la implementación y continuamente a través de las operaciones diarias de las cargas de trabajo de RHEL.
Implemente el modo de cumplimiento de FIPS para cargas de trabajo gubernamentales: asegúrese de que las instancias de RHEL designadas se ejecutan en modo FIPS para cumplir con los estándares criptográficos. Use las ofertas de cumplimiento de Azure para una posición de cumplimiento completa.
Ejecute siempre SELinux: use SELinux en modo permisivo para identificar los perfiles de acceso a la carga de trabajo y asegurarse de que la directiva adecuada ejecute SELinux en el modo de aplicación en máquinas virtuales de RHEL. SELinux reduce significativamente la superficie expuesta a ataques en aplicaciones y servicios que se ejecutan en Azure.
Registre servidores de RHEL en Red Hat Insights a través de Red Hat Satellite. Red Hat Insights aprovecha el análisis de la base de datos de resolución de problemas de Red Hat. Insights usa este análisis para identificar y generar correcciones proactivas para problemas de implementación y configuración antes de que afecten a las operaciones. Esta estrategia mejora la posición de seguridad y la eficacia operativa. Cada suscripción de RHEL incluye Insights. Todas las suscripciones basadas en la nube de RHEL incluyen una suscripción a Red Hat Satellite. También puede comprar una suscripción a Red Hat Satellite con sus suscripciones de RHEL de Cloud Access.
Nota:
Insights envía información del sistema de telemetría fuera de Azure.
Configuración de las redes
Puede aplicar grupos de seguridad de red al nivel de interfaz de red o al nivel de subred. Se recomienda el nivel de subred a menos que los requisitos específicos requieran un grupo de seguridad de red en el nivel de interfaz de red. Este enfoque simplifica la administración de comunicaciones de red. Puede usar grupos de seguridad de aplicaciones para permitir la comunicación de aplicaciones, que segmenta holísticamente la comunicación entre subredes. Determine qué enfoque se adapta mejor a su escenario y asegúrese de que las máquinas de RHEL tengan acceso adecuado a Internet para los repositorios necesarios. Es posible que tenga que permitir las direcciones URL de estos repositorios en los entornos más bloqueados. Los puntos de conexión privados garantizan que el único tráfico que un recurso de Azure pueda recibir de forma predeterminada es el tráfico que se origina desde la red de Azure, incluidas las conexiones desde el entorno local si tiene una puerta de enlace de Azure.
Implementación de herramientas SIEM o SOAR
Considere Microsoft Sentinel para la orquestación de seguridad, la automatización y las herramientas de respuesta (SOAR) o las herramientas SIEM para los sistemas RHEL. Microsoft Sentinel usa inteligencia artificial para adaptar la forma en que detecta amenazas al sistema. Puede automatizar las respuestas a ataques a través de runbooks. Use Microsoft Sentinel para la detección proactiva de amenazas, la búsqueda de amenazas y la respuesta a amenazas.
Considere usar la informática confidencial
RHEL incluye una imagen confidencial para determinadas opciones del sistema operativo RHEL. Considere los casos de uso de la informática confidencial