Capítulo 8. Criação de políticas SELinux para contêineres


A RHEL 8 fornece uma ferramenta para gerar políticas SELinux para recipientes utilizando o pacote udica. Com udica, você pode criar uma política de segurança sob medida para melhor controle de como um contêiner acessa os recursos do sistema host, tais como armazenamento, dispositivos e rede. Isto permite que você endureça suas implementações de contêineres contra violações de segurança e também simplifica a obtenção e manutenção da conformidade regulamentar.

8.1. Introdução ao gerador de políticas da udica SELinux

Para simplificar a criação de novas políticas SELinux para recipientes personalizados, a RHEL 8 fornece o utilitário udica. Você pode usar esta ferramenta para criar uma política baseada em uma inspeção do arquivo JavaScript Object Notation (JSON) do contêiner, que contém capacidades Linux, pontos de montagem e definições de portas. Consequentemente, a ferramenta combina regras geradas usando os resultados da inspeção com regras herdadas de um bloco específico de Linguagem Intermediária Comum (CIL) SELinux.

O processo de geração da política SELinux para um contêiner utilizando udica tem três partes principais:

  1. Analisando o arquivo de especificação do recipiente no formato JSON
  2. Encontrar regras de permissão adequadas com base nos resultados da primeira parte
  3. Gerando a política final da SELinux

Durante a fase de análise, udica procura por capacidades Linux, portas de rede e pontos de montagem.

Com base nos resultados, udica detecta quais capacidades Linux são requeridas pelo contêiner e cria uma regra SELinux que permite todas essas capacidades. Se o contêiner se liga a uma porta específica, udica utiliza bibliotecas de espaço de usuário SELinux para obter a etiqueta SELinux correta de uma porta que é utilizada pelo contêiner inspecionado.

Posteriormente, udica detecta quais diretórios são montados no espaço de nome do sistema de arquivos do contêiner a partir do host.

O recurso de herança em bloco da CIL permite que udica crie modelos da SELinux allow rules com foco em uma ação específica, por exemplo:

  • allow accessing home directories
  • allow accessing log files
  • allow accessing communication with Xserver.

Estes modelos são chamados de blocos e a política final da SELinux é criada através da fusão dos blocos.

Recursos adicionais

Red Hat logoGithubRedditYoutubeTwitter

Aprender

Experimente, compre e venda

Comunidades

Sobre a documentação da Red Hat

Ajudamos os usuários da Red Hat a inovar e atingir seus objetivos com nossos produtos e serviços com conteúdo em que podem confiar.

Tornando o open source mais inclusivo

A Red Hat está comprometida em substituir a linguagem problemática em nosso código, documentação e propriedades da web. Para mais detalhes veja oBlog da Red Hat.

Sobre a Red Hat

Fornecemos soluções robustas que facilitam o trabalho das empresas em plataformas e ambientes, desde o data center principal até a borda da rede.

© 2024 Red Hat, Inc.