6.2. Mudando a política SELinux para MLS
Use os seguintes passos para mudar a política SELinux de segurança direcionada para segurança multinível (MLS).
A Red Hat não recomenda o uso da política MLS em um sistema que esteja rodando o Sistema X Window. Além disso, quando você reetique o sistema de arquivos com rótulos MLS, o sistema pode impedir o acesso de domínios confinados, o que impede seu sistema de iniciar corretamente. Portanto, certifique-se de mudar o SELinux para o modo permissivo antes de re-etiquetar os arquivos. Na maioria dos sistemas, você vê muitas negações de SELinux após mudar para MLS, e muitas delas não são triviais de serem corrigidas.
Procedimento
Instale o pacote
selinux-policy-mls
:# yum install selinux-policy-mls
Abra o arquivo
/etc/selinux/config
em um editor de texto de sua escolha, por exemplo:# vi /etc/selinux/config
Mudar o modo SELinux de aplicação para permissivo e mudar da política de destino para MLS:
SELINUX=permissive SELINUXTYPE=mls
Salve as mudanças, e deixe o editor.
Antes de ativar a política MLS, você deve reetique cada arquivo no sistema de arquivos com uma etiqueta MLS:
# fixfiles -F onboot System will relabel on next boot
Reinicie o sistema:
# reboot
Verifique se a SELinux negou:
# ausearch -m AVC,USER_AVC,SELINUX_ERR,USER_SELINUX_ERR -ts recent -i
Como o comando anterior não cobre todos os cenários, veja Solução de problemas relacionados ao SELinux para orientação na identificação, análise e correção de recusas do SELinux.
Depois de garantir que não haja problemas relacionados ao SELinux em seu sistema, mude o SELinux de volta para o modo de aplicação, alterando a opção correspondente em
/etc/selinux/config
:SELINUX=forçando
Reinicie o sistema:
# reboot
Se seu sistema não iniciar ou você não for capaz de fazer login depois de mudar para o MLS, adicione o parâmetro enforcing=0
à sua linha de comando do kernel. Veja Mudando os modos SELinux no momento da inicialização para mais informações.
Observe também que no MLS, os logins SSH como o usuário root
mapeado para o papel de sysadm_r
SELinux diferem do log in como root
em staff_r
. Antes de iniciar seu sistema no MLS pela primeira vez, considere permitir logins SSH como sysadm_r
, configurando o booleano ssh_sysadm_login
SELinux para 1
. Para habilitar ssh_sysadm_login
mais tarde, já no MLS, você deve entrar como root
em staff_r
, mudar para root
em sysadm_r
usando o comando newrole -r sysadm_r
, e então definir o booleano para 1
.
Etapas de verificação
Verificar se a SELinux funciona em modo de aplicação:
# getenforce Enforcing
Verifique se o status da SELinux retorna o valor
mls
:# sestatus | grep mls Loaded policy name: mls
Recursos adicionais
-
As páginas de manual
fixfiles(8)
,setsebool(8)
, essh_selinux(8)
.