Red Hat Training

A Red Hat training course is available for RHEL 8

Capítulo 3. Gerenciando usuários confinados e não confinados

As seções seguintes explicam o mapeamento de usuários Linux para usuários SELinux, descrevem os domínios básicos de usuários confinados e demonstram o mapeamento de um novo usuário para um usuário SELinux.

3.1. Usuários confinados e não confinados

Cada usuário Linux é mapeado para um usuário SELinux utilizando a política SELinux. Isto permite aos usuários do Linux herdar as restrições dos usuários do SELinux.

Para ver o mapeamento do usuário SELinux em seu sistema, use o comando semanage login -l como raiz:

semanage login -l
Login Name           SELinux User         MLS/MCS Range        Service

__default__          unconfined_u         s0-s0:c0.c1023       *
root                 unconfined_u         s0-s0:c0.c1023       *

No Red Hat Enterprise Linux, os usuários do Linux são mapeados para o SELinux default login por padrão, que é mapeado para o usuário do SELinux unconfined_u. A linha a seguir define o mapeamento padrão:

__default__          unconfined_u         s0-s0:c0.c1023       *

Os usuários de Linux confinados e não confinados estão sujeitos a verificações de memória executáveis e graváveis, e também são restringidos pelo MCS ou MLS.

Para listar os usuários SELinux disponíveis, digite o seguinte comando:

$ seinfo -u
Users: 8
   guest_u
   root
   staff_u
   sysadm_u
   system_u
   unconfined_u
   user_u
   xguest_u

Note que o comando seinfo é fornecido pelo pacote setools-console, que não é instalado por padrão.

Se um usuário Linux não definido executa uma aplicação que a política SELinux define como aquela que pode fazer a transição do domínio unconfined_t para seu próprio domínio confinado, o usuário Linux não definido ainda está sujeito às restrições desse domínio confinado. O benefício de segurança disto é que, mesmo que um usuário Linux esteja executando um domínio não-confinado, a aplicação permanece confinada. Portanto, a exploração de uma falha na aplicação pode ser limitada pela política.

Da mesma forma, podemos aplicar estas verificações a usuários confinados. Cada usuário confinado é restringido por um domínio de usuário confinado. A política SELinux também pode definir uma transição de um domínio de usuário confinado para seu próprio domínio alvo confinado. Nesse caso, os usuários confinados estão sujeitos às restrições desse domínio de destino confinado. O ponto principal é que privilégios especiais são associados aos usuários confinados de acordo com seu papel.