Considerações de segurança para o Red Hat Enterprise Linux no Azure
Este artigo descreve considerações e recomendações para implementar a segurança em seu ambiente Red Hat Enterprise Linux (RHEL). Para fornecer segurança para seus sistemas RHEL, use uma abordagem direcionada a várias áreas. A segurança exige que todas as equipes trabalhem juntas para proteger suas cargas de trabalho. Os produtos ou plataformas que você implanta não podem garantir apenas a segurança do seu ambiente.
Implementar e aderir a um processo rigoroso que engloba componentes comportamentais, administrativos e de engenharia. Ao implantar o RHEL em uma zona de aterrissagem do Azure, você precisa avaliar vários fatores de segurança. Para criar um ambiente de nuvem seguro e resiliente, implemente uma abordagem estratégica que aplique os mecanismos de segurança do Azure e da Red Hat.
Considerações de design
Para fornecer segurança para sistemas RHEL, no Azure ou em qualquer outro lugar, certifique-se de começar com conteúdo verificado e validado. Em ambientes de nuvem modernos, binários e código podem se originar de uma ampla variedade de fontes. Como primeira consideração para sua implantação, proteja sua cadeia de suprimentos de software.
Imagens de Harden
Pode encontrar imagens no Azure Marketplace e nas secções de oferta privada de produtos nas quais a Red Hat ou a Red Hat Limited nas regiões da Europa, Médio Oriente e África (EMEA) publica o registo. A Red Hat e a Microsoft verificam e validam essas imagens para garantir a integridade da origem e fornecer configurações padrão seguras para instâncias do sistema operacional RHEL.
Para atender aos requisitos de segurança de tempo de execução da sua organização para a carga de trabalho de destino, configure corretamente as instâncias que você cria a partir dessas imagens. Para ajudar a simplificar suas medidas de segurança, use as imagens publicadas pela Red Hat do Azure Marketplace para implantar seus sistemas RHEL. Siga as orientações da Red Hat para especificações de sistema e imagem para sua carga de trabalho. Para reduzir a superfície de ataque, comece com uma imagem RHEL mínima otimizada para o Azure. Não é necessário criar e configurar todas as instâncias a partir dessa imagem base. Para atender a vários requisitos de proteção, recomendamos que você use componentes composáveis para criar imagens específicas da carga de trabalho.
Você também pode usar práticas de GitOps para desenvolver pipelines de imagem. Esta abordagem é uma metodologia superior. Esses pipelines sobrepõem os componentes compostáveis, definidos como código de configuração, na imagem inicial para produzir as imagens da carga de trabalho.
Para usar imagens de forma eficaz, implemente as seguintes considerações:
Crie uma imagem de base reforçada que siga o modelo de menor privilégio para fornecer uma base sólida.
Software em camadas e configuração de segurança juntos para promover a reutilização e seguir o ambiente operacional padrão e as melhores práticas de DevSecOps.
Use modelos de composição para imagens para reduzir o esforço de teste e qualificação e diminuir os custos de manutenção.
Use modelos de composição para aumentar a flexibilidade e acelerar o tempo de entrega de novas cargas de trabalho.
Automatize o processo de compilação, teste e entrega de imagens para o modelo.
Atualizar imagens
Você também deve atualizar suas imagens regularmente. As instâncias efêmeras provavelmente têm uma imagem mais atualizada porque você normalmente as implanta a partir de uma imagem atual. Mas você deve atualizar regularmente instâncias mais antigas usando um sistema de aplicação de patches central. Esta etapa ajuda você a pesquisar a condição dos sistemas corrigidos em seu ambiente. Quando você minimiza a variabilidade da implantação, o ruído de monitoramento é reduzido e você pode identificar anomalias com mais precisão e rapidez. Essa abordagem aumenta a taxa de sucesso dos esforços automatizados de deteção e correção.
Para manter controles de acesso rigorosos, considere a implementação de um sistema centralizado. Muitos projetos de código aberto e aplicativos comerciais prontos para uso fornecem exemplos de implantação simples que usam contas locais ou chaves públicas implantadas localmente. Esses exemplos podem fornecer uma configuração segura, mas à medida que a pegada da nuvem se expande, o esforço para manter a configuração localizada, mesmo com automação, pode se tornar problemático. A carga de automação aumenta linearmente com cada instância, mas o registro de segurança e a carga de monitoramento podem aumentar a uma taxa exponencial. Essas alterações geram uma carga excessiva sobre os recursos de computação, armazenamento e análise. O controle de acesso centralizado reduz os pontos de configuração, o que reduz a automação e a carga de registro, minimiza as alterações e simplifica a auditabilidade, mantendo controles rigorosos sobre o acesso aos recursos.
Em áreas onde sua carga de trabalho exige conformidade com padrões criptográficos e linhas de base de conformidade, considere o uso de recursos de plataforma integrada que suportem padrões abertos para garantir a compatibilidade com as cargas de trabalho na nuvem. A Red Hat e a Microsoft aderem e participam de órgãos de padrões globais e fornecem ferramentas apropriadas. Por exemplo, muitos arquivos de configuração em uma instância individual têm configuração de cifra criptográfica para serviços e aplicativos do sistema. A variância pode ocorrer facilmente entre sistemas dentro de uma carga de trabalho de destino e em toda uma frota. Para definir suas medições de conformidade, considere o uso de padrões abertos. As ferramentas da Red Hat e da Microsoft consomem formatos de arquivo padronizados para fornecer os dados de vulnerabilidade e configuração mais recentes. A Red Hat fornece feeds OVAL (Open Vulnerability and Assessment Language) atualizados da equipe de segurança de produtos Red Hat para componentes da plataforma Red Hat.
O Azure apresenta oportunidades únicas para usar recursos específicos da nuvem e manter as práticas recomendadas de segurança e conformidade. Os recursos e serviços de segurança na infraestrutura do Azure incluem:
Inicialização confiável para VMs: BIOS e configuração de instância segura. Você pode usar a inicialização confiável para VMs para proteger o processo de inicialização, o que garante que as VMs sejam iniciadas com código verificado.
Criptografia de disco do Azure no Cofre da Chave do Azure: criptografe dados em repouso. Para proteger os dados em repouso, use a criptografia de disco do Azure no Cofre da Chave para gerenciar chaves e segredos de criptografia. O Key Vault suporta dois tipos de contêineres: vaults e pools de módulos de segurança de hardware gerenciado (HSM). Você pode armazenar software, chaves apoiadas por HSM, segredos e certificados em cofres.
Microsoft Defender for Cloud: Garanta a auditoria centralizada do sistema. O Defender for Cloud pode fornecer um visor centralizado para gerenciamento de segurança unificado e proteção contra ameaças.
Recomendações de design
Ao projetar ambientes RHEL no Azure, aproveite os recursos de segurança nativos da Red Hat e os recursos de segurança na nuvem do Azure para garantir uma implantação robusta, segura e eficiente. Comece com uma imagem que você proteja e crie com binários validados conhecidos. As imagens RHEL no Azure Marketplace são simplificadas para desempenho e segurança na nuvem. Se você tiver requisitos de segurança específicos para sua empresa, comece com sua própria imagem personalizada e protegida que você cria a partir de binários de origem Red Hat. O Red Hat Satellite pode manter e gerenciar o código Red Hat, Microsoft e parceiro ou o código do seu aplicativo personalizado. O satélite pode validar o código por meio de credenciais e assinaturas de conteúdo gerenciado. O RHEL verifica a consistência e autenticidade do software desde a origem até o disco.
Quando você usa as ferramentas de gerenciamento do Azure e da Red Hat para desenvolver fluxos de trabalho automatizados, a Red Hat recomenda que você use coleções certificadas da Ansible Automation Platform.
Certifique-se de que seus fluxos de trabalho:
- Gere, mantenha e teste imagens de linha de base e de carga de trabalho.
- Teste e implante instâncias efêmeras.
- Teste o ciclo de patch e forneça instâncias de VM persistentes.
- Use pipelines de automação. Os pipelines de automação reduzem significativamente o esforço de gerenciamento, garantem a aplicação consistente de políticas, melhoram a deteção de anomalias e aceleram a remediação em todas as zonas de aterrissagem RHEL.
Considere também usar a Galeria de Computação do Azure. Você pode criar sua imagem Red Hat com todos os mecanismos de segurança necessários que você usa em sua organização e criar uma imagem dessa VM. Em seguida, você pode compartilhar imagens compatíveis com segurança entre assinaturas e regiões em seu ambiente do Azure. Você também pode usar o controle de versão para obter maior controle granular sobre imagens de VM. Essa abordagem ajuda a unificar os patches de segurança da instância de computação e as ferramentas que você usa em seu ambiente.
Considere implementar o Azure Update Manager como parte do seu processo de gerenciamento de atualizações. O Update Manager é um serviço unificado que você pode usar para monitorar atualizações em suas implantações. Use o Update Manager para pesquisar toda a sua frota de máquinas no Azure, no local e em outras nuvens.
Gerir a identidade e o acesso
Para aplicar centralmente políticas de acesso rígidas, integre o Red Hat Identity Management (IdM). O IdM usa relações de confiança e integrações OpenID Connect para consolidar a implementação nativo-Linux dos seguintes recursos em um modelo de segurança empresarial sem sincronização de credenciais.
- Controlo de acesso baseado em funções (RBAC)
- Controle de acesso baseado em host
- Política de escalonamento de privilégios
- Política de mapeamento de usuários do SELinux
- Outros serviços Linux críticos
Em comparação com as implantações Linux tradicionais, essa abordagem gera benefícios, como:
- Controle de alterações simplificado através de pontos de contato de automação reduzidos.
- Diminuição da carga relacionada ao registro em log e à análise.
- Conformidade com os requisitos de auditoria de autenticação.
- Coerência das políticas.
O IdM oferece vantagens para o gerenciamento da política de segurança centralizada do Linux.
A Red Hat recomenda que você habilite e execute o SELinux em todas as instâncias baseadas em RHEL, incluindo ambientes de desenvolvimento, teste e produção. Todas as imagens e instalações produzidas pela Red Hat podem executar o SELinux no modo de imposição por padrão. Ao projetar implantações de carga de trabalho, você pode executar o SELinux no modo permissivo para toda a instância ou para serviços individuais dentro da instância. Em seguida, as equipes de desenvolvimento, segurança e operações podem determinar as características de acesso dos aplicativos e usar dados de log de auditoria com as ferramentas do SELinux para gerar a política apropriada do SELinux para a carga de trabalho de destino.
As ferramentas de geração de políticas do SELinux podem gerar arquivos de política baseados em RPM para incluir em repositórios de conteúdo para implantação de imagem padronizada. As equipes de desenvolvimento, segurança e operações podem fornecer artefatos upstream de forma iterativa dentro do pipeline. Depois que o teste determinar que nenhuma violação do SELinux é gerada, você pode definir a configuração do SELinux para o modo de imposição. As violações do SELinux geradas durante a produção denotam um desvio significativo do comportamento aceitável do aplicativo. Você deve sinalizar e investigar essas violações. Use o SELinux para fornecer visibilidade abrangente e gerenciamento proativo de ameaças.
Para definir as funções RBAC que você atribui às máquinas RHEL, entenda as funções e responsabilidades em sua equipe. Equipes relevantes podem exigir acesso elevado a máquinas virtuais (VMs). Considere o Colaborador de Máquina Virtual, o Leitor de Máquina Virtual e funções semelhantes para acessar VMs. Considere o acesso just-in-time se não precisar de acesso permanente. Considere identidades gerenciadas se o sistema RHEL precisar se autenticar com o Azure. As identidades gerenciadas atribuídas ao sistema fornecem mais segurança do que as entidades de serviço e estão associadas ao recurso VM. Além das funções RBAC, considere o acesso condicional para pessoas que precisam de acesso ao seu ambiente do Azure. Use o acesso condicional para restringir o acesso do usuário ao seu ambiente do Azure com base no local, endereço IP e outros critérios.
Use um software antivírus
Certifique-se de ter o software antivírus apropriado em sua máquina RHEL. Considere a integração do Microsoft Defender for Endpoint no Linux para proteção contra as vulnerabilidades mais recentes. Lembre-se de que você não deve habilitar o Defender for Cloud Standard em máquinas RHEL que você usa para hospedar bancos de dados SAP. Certifique-se de que cada máquina RHEL e carga de trabalho possa executar seu software de proteção de endpoint.
Gerir segredos
A Red Hat recomenda que você defina uma política criptográfica em todo o sistema em todas as instâncias, sempre que possível. Você pode caracterizar as implantações na nuvem por diversidade. As equipes de carga de trabalho escolhem suas próprias bibliotecas, idiomas, utilitários e provedores criptográficos para atender às necessidades de suas soluções específicas. A implementação de padrões, a fatoração de componentes de aplicativos, a capacidade de composição e outras técnicas podem reduzir a variabilidade, mas você define configurações criptográficas para aplicativos e serviços em vários locais dentro de uma determinada instância.
Configurar novos componentes de forma sensata requer um esforço significativo e, muitas vezes, um profundo conhecimento criptográfico. Políticas criptográficas desatualizadas ou configuradas incorretamente criam riscos. Uma política criptográfica em todo o sistema alinha a configuração dos principais subsistemas criptográficos, que abrange os protocolos TLS (Transport Layer Security), IPSec (Internet Protocol Security), DNSSEC (Domain Name System Security Extensions) e Kerberos. Uma política DEFAULT criptográfica em todo o sistema RHEL implementa uma configuração conservadora que elimina toda uma classe de ameaças desativando protocolos de comunicação herdados, como TLS v1.1 e versões anteriores. As políticas FUTURE e FIPS fornecem configurações mais rigorosas. Você também pode criar políticas personalizadas.
Você pode incorporar ferramentas de auditoria do sistema RHEL e conformidade de segurança. Concentre-se na digitalização e remediação automatizadas que estejam alinhadas com os padrões do setor.
O daemon de auditoria RHEL é auditado e o daemon de registro central é registrado no diário. O Azure Monitor pode ingerir dados auditados e registrados no diário para monitorar eventos de segurança do sistema RHEL e alimentar o Microsoft Sentinel ou outros serviços de gerenciamento de eventos e informações de segurança (SIEM).
Os sistemas RHEL que precisam atender à conformidade com o Guia de Implementação Técnica de Segurança da Agência de Sistemas de Informação de Defesa (DISA-STIG) exigem o utilitário Advanced Intrusion Detection Environment (AIDE). Você deve registrar a saída do AIDE no Azure.
Monitore e integre com o Ansible Automation Platform para identificar, alertar e corrigir arquivos críticos do sistema.
Use componentes complementares no nível do sistema operacional em todas as instâncias RHEL baseadas no Azure.
Impor a política de execução de código: use o daemon fapolicyd para limitar os aplicativos que podem ser executados na instância RHEL.
Gerenciar tráfego de entrada e saída de instância: use firewalld com NSGs (grupos de segurança de rede) do Azure para gerenciar com eficiência o tráfego para VMs no sentido norte e sul.
Gerencie centralmente a configuração por meio da automação: use a metodologia GitOps para garantir um gerenciamento de configuração consistente durante a implantação e continuamente através das operações do dia 2 das cargas de trabalho RHEL.
Implementar o modo de conformidade FIPS para cargas de trabalho governamentais: certifique-se de que as instâncias RHEL designadas sejam executadas no modo FIPS para cumprir os padrões criptográficos. Use as ofertas de conformidade do Azure para uma postura de conformidade abrangente.
Sempre execute o SELinux: use o SELinux no modo permissivo para identificar perfis de acesso à carga de trabalho e garantir a política adequada para executar o SELinux no modo de imposição em VMs RHEL. O SELinux reduz significativamente a superfície de ataque em aplicativos e serviços executados no Azure.
Registre servidores RHEL no Red Hat Insights por meio do Red Hat Satellite. O Red Hat Insights aproveita a análise do banco de dados de resolução de problemas da Red Hat. O Insights usa essa análise para identificar e gerar correções proativas para problemas de implantação e configuração antes que eles afetem as operações. Esta estratégia melhora a postura de segurança e a eficiência operacional. Todas as assinaturas RHEL incluem Insights. Todas as assinaturas baseadas em nuvem RHEL incluem uma assinatura Red Hat Satellite. Ou você pode comprar uma assinatura do Red Hat Satellite com suas assinaturas RHEL do Cloud Access.
Nota
O Insights envia informações do sistema de telemetria para fora do Azure.
Configurar as redes
Você pode aplicar NSGs ao nível de interface de rede ou nível de sub-rede. Recomendamos o nível de sub-rede, a menos que requisitos específicos exijam um NSG no nível da interface de rede. Essa abordagem simplifica o gerenciamento da comunicação de rede. Você pode usar grupos de segurança de aplicativos para permitir a comunicação de aplicativos, que segmenta holisticamente a comunicação entre sub-redes. Determine qual abordagem melhor se adapta ao seu cenário e garanta que as máquinas RHEL tenham acesso apropriado à Internet para os repositórios necessários. Talvez seja necessário permitir URLs de lista para esses repositórios nos ambientes mais bloqueados. Os pontos de extremidade privados garantem que o único tráfego que um recurso do Azure pode receber por padrão é o tráfego originado da rede do Azure, incluindo conexões locais se você tiver um gateway do Azure.
Implementar ferramentas SIEM ou SOAR
Considere o Microsoft Sentinel para orquestração de segurança, automação e ferramentas de resposta (SOAR) ou ferramentas SIEM para seus sistemas RHEL. O Microsoft Sentinel usa IA para adaptar a forma como deteta ameaças ao sistema. Você pode automatizar as respostas a ataques por meio de runbooks. Use o Microsoft Sentinel para deteção proativa de ameaças, caça a ameaças e resposta a ameaças.
Considere a computação confidencial
O RHEL apresenta uma imagem confidencial para determinadas opções do sistema operacional RHEL. Considere casos de uso de computação confidenciais.