SELinux

SELinux (Security Enhanced Linux) no Debian 10 Buster

SELinux (Security Enhanced Linux) no Debian 10 Buster
SELinux é um sistema de rotulagem para processos e arquivos.  O acesso de sujeitos rotulados a objetos rotulados é restrito por regras que formam políticas. Este tutorial é uma introdução aos fundamentos do SELinux mostrando como configurar e habilitar o SELinux no Debian 10 Buster e habilitá-lo com algumas informações adicionais sobre comandos populares.

Antes de começar, você precisa aprender os seguintes conceitos:

Assuntos: processos ou usuários.
Objetos: arquivos ou sistemas de arquivos.

Aplicação de tipo: no SELinux todos os assuntos e objetos têm um identificador de tipo terminando com _t. “A aplicação de tipo é a noção de que, em um sistema de controle de acesso obrigatório, o acesso é governado por meio de autorização com base em um conjunto de regras sujeito-acesso-objeto.

No SELinux, a aplicação de tipo é implementada com base nos rótulos dos assuntos e objetos.  O SELinux por si só não tem regras que digam / bin / bash pode executar / bin / ls. Em vez disso, ele tem regras semelhantes a “Processos com o rótulo user_t podem executar arquivos regulares rotulados bin_t.”(Fonte https: // wiki.gentoo.org / wiki / SELinux / Type_enforcement)

Controle de acesso discricionário (DAC): DAC é o sistema de propriedade e permissão que usamos no Linux para gerenciar o acesso a objetos como arquivos ou diretórios. O Controle de Acesso Discricionário não tem nada a ver com SELinux e é uma camada de segurança diferente. Para obter informações adicionais sobre o DAC, visite Explicação das permissões do Linux.

Controle de acesso obrigatório (MAC): é um tipo de controle de acesso que restringe o acesso dos sujeitos à interação com os objetos. Ao contrário do DAC, os usuários MAC não podem alterar as políticas.
Sujeitos e objetos têm um contexto de segurança (atributos de segurança) monitorado pelo SELinux e administrado de acordo com políticas de segurança feitas por regras a serem aplicadas.


Controle de acesso baseado em função (RBAC): é um tipo de controle de acesso baseado em funções, pode ser combinado com MAC e DAC. As políticas de RBAC tornam o gerenciamento de muitos usuários em uma organização simples, em contraste com o DAC, que pode derivar de atribuições de permissões individuais, tornando a auditoria, configuração e atualizações de política mais fáceis.

Modo de imposição: SELinux restringe o acesso de sujeitos a objetos com base em políticas.

Modo permissivo: SELinux registra apenas atividades ilegítimas.

Os recursos do SELinux incluem (lista da Wikipedia):

Fonte: https: // en.wikipedia.org / wiki / Security-Enhanced_Linux # Recursos

Observação: os usuários são diferentes no SELinux e passwd.

Configurando o SELinux no Debian 10 Buster

No meu caso, o SELinux foi desabilitado no Debian 10 Buster. Manter o SELinux habilitado é uma das etapas básicas para manter um dispositivo Linux seguro. Para saber o status do SELinux em seu dispositivo execute o comando:

/ # sestatus

Descobri que o SELinux estava desabilitado, para habilitá-lo você precisa instalar alguns pacotes antes, depois de um atualização apt, execute o comando:

/ # apt install selinux-basics selinux-policy-default

Se solicitado, pressione Y para continuar o processo de instalação. Corre atualização apt depois de terminar a instalação.

Para habilitar o SELinux, execute o seguinte comando:

/ # selinux-activate

Como você pode ver, o SELinux foi devidamente ativado. Para aplicar todas as mudanças, você deve reinicializar o sistema conforme as instruções.

O comando getenforce pode ser usado para aprender o status do SELinux, se estiver no modo permissivo ou obrigatório:

/ # getenforce

O modo permissivo pode ser substituído definindo o parâmetro 1 (permissivo é 0). Você também pode verificar o modo no arquivo de configuração usando o comando menos:

/ # menos / etc / selinux / config

Resultado:

Como você pode ver, os arquivos de configuração mostram o modo permissivo. Aperte Q para sair.

Para ver um arquivo ou contexto de segurança de processo, você pode usar a sinalização -Z:

/ # ls -Z

O formato da etiqueta é usuário: função: tipo: nível.

semanage - Ferramenta de gerenciamento de políticas SELinux

semanage é a ferramenta SELinux Policy Management. Ele permite gerenciar booleanos (que permitem modificar o processo em execução), funções e níveis do usuário, interfaces de rede, módulos de política e muito mais. Semanage permite configurar políticas SELinux sem a necessidade de compilar fontes. O Semanage permite a ligação entre os usuários do SO e do SELinux e certos contextos de segurança de objetos.

Para obter informações adicionais sobre semanage, visite a página do manual em: https: // linux.morrer.net / man / 8 / semanage

Conclusão e notas

SELinux é uma maneira adicional de administrar o acesso de processos a recursos do sistema, como arquivos, partições, diretórios, etc. Ele permite gerenciar privilégios massivos de acordo com a função, nível ou tipo. Ativá-lo é uma medida de segurança obrigatória e, ao usá-lo, é importante lembrar sua camada de segurança e reinicializar o sistema após ativá-lo ou desativá-lo (desativá-lo não é recomendado de forma alguma, exceto para testes específicos). Às vezes, o acesso a um arquivo é bloqueado, apesar das permissões do sistema ou sistema operacional serem concedidas porque o SELinux o está proibindo.

Espero que você tenha achado este artigo sobre SELinux útil como introdução a esta solução de segurança, continue seguindo LinuxHint para mais dicas e atualizações sobre Linux e redes.

Artigos relacionados:

Como usar o GameConqueror Cheat Engine no Linux
O artigo cobre um guia sobre como usar o mecanismo de cheat GameConqueror no Linux. Muitos usuários que jogam no Windows costumam usar o aplicativo “C...
Melhores emuladores de console de jogo para Linux
Este artigo irá listar software de emulação de console de jogo popular disponível para Linux. A emulação é uma camada de compatibilidade de software q...
Melhores distros Linux para jogos em 2021
O sistema operacional Linux percorreu um longo caminho desde sua aparência original, simples e baseada em servidor. Este sistema operacional melhorou ...