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
# yum install selinux-policy-mlsCopy to Clipboard Copied! Toggle word wrap Toggle overflow Abra o arquivo
/etc/selinux/configem um editor de texto de sua escolha, por exemplo:vi /etc/selinux/config
# vi /etc/selinux/configCopy to Clipboard Copied! Toggle word wrap Toggle overflow Mudar o modo SELinux de aplicação para permissivo e mudar da política de destino para MLS:
SELINUX=permissive SELINUXTYPE=mls
SELINUX=permissive SELINUXTYPE=mlsCopy to Clipboard Copied! Toggle word wrap Toggle overflow 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
# fixfiles -F onboot System will relabel on next bootCopy to Clipboard Copied! Toggle word wrap Toggle overflow Reinicie o sistema:
reboot
# rebootCopy to Clipboard Copied! Toggle word wrap Toggle overflow Verifique se a SELinux negou:
ausearch -m AVC,USER_AVC,SELINUX_ERR,USER_SELINUX_ERR -ts recent -i
# ausearch -m AVC,USER_AVC,SELINUX_ERR,USER_SELINUX_ERR -ts recent -iCopy to Clipboard Copied! Toggle word wrap Toggle overflow 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
SELINUX=forçandoCopy to Clipboard Copied! Toggle word wrap Toggle overflow Reinicie o sistema:
reboot
# rebootCopy to Clipboard Copied! Toggle word wrap Toggle overflow
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
# getenforce EnforcingCopy to Clipboard Copied! Toggle word wrap Toggle overflow Verifique se o status da SELinux retorna o valor
mls:sestatus | grep mls
# sestatus | grep mls Loaded policy name: mlsCopy to Clipboard Copied! Toggle word wrap Toggle overflow
Recursos adicionais
-
As páginas de manual
fixfiles(8),setsebool(8), essh_selinux(8).