Selinux no tutorial do Ubuntu

Selinux no tutorial do Ubuntu

Introdução

Selinux é um módulo de controle de acesso obrigatório (MAC) que reside no nível do kernel de sistemas Linux. É um desenvolvimento conjunto de redhat e NSA lançado por volta de 1998 e ainda sendo mantido por uma comunidade de entusiastas. Por padrão, o Ubuntu usa o Apmor e não o Selinux, o que é semelhante em termos de desempenho, mas bastante popular em termos de simplicidade. No entanto, o Selinux é conhecido por ser bastante seguro devido ao envolvimento de uma agência governamental. O Selinux é um aplicativo de código aberto que protege o host, isolando cada aplicativo e confinando suas atividades. Por padrão, os processos estão impedidos de realizar qualquer atividade, a menos que a permissão explícita seja concedida. O módulo fornece nativamente duas regras de gerenciamento de nível global: permissivo e aplicação, que registram respectivamente cada regra violada e nega o acesso a uma solicitação específica enviada de um processo. Este tutorial demonstra como usá -lo no Ubuntu com facilidade.

Como instalar e ativar

O Selinux é um aplicativo muito complicado para instalar, porque se não estiver configurado corretamente antes da primeira reinicialização, tornará todo o sistema operacional inalterável, o que significa que qualquer coisa além da tela inicial de inicialização será praticamente inacessível por meios normais.

Além disso, como afirmado anteriormente, o Ubuntu já possui um sofisticado sistema de controle obrigatório de controle de acesso conhecido como Apparmor e, portanto, deve ser desativado antes de instalar o Selinux para evitar conflitos. Use as seguintes instruções para desativar o Appmor e habilitar o Selinux.

sudo /etc /init.D/Stop Stop
Atualização APT -Get && Upgrade -yuf
Instalação apt-get Selinux
nano/etc/Selinux/config
'Defina o Selinux como permissivo, SelinuxType como padrão'
reinício

Esta configuração de arquivo pode ser aberta com qualquer editor de texto para fazer alterações. O motivo da atribuição de regra permissiva ao SetLinux está tornando o sistema operacional acessível ao deixar o Selinux habilitado. É altamente recomendável usar a opção permissiva, pois é livre de complicações, mas os registros violaram as regras estabelecidas em Selinux.

Opções disponíveis

O Selinux é um módulo complexo e abrangente; Portanto, ele contém muitos dos recursos e opções. Dito isto, a maioria dessas opções pode não ser útil para todos devido à sua natureza exótica. As opções a seguir são algumas das opções básicas e úteis neste módulo. Eles são mais do que suficientes para colocar o Selinux em funcionamento.

Verifique o status: O status do Selinux pode ser verificado diretamente através da janela do terminal, que mostra as informações básicas, como se o Selinux está ativado, diretório raiz do Selinux, nome da política carregada, modo atual etc. Depois de reiniciar o sistema após a instalação do Selinux, use o seguinte comando como usuário root com comando sudo. Se afirma.

raiz@ubuntu:/home/dondilanga# sestatus

Mude o nível de permissão global: O nível de permissão global declara como o Selinux se comporta quando tropeça em uma regra. Por padrão, o Selinux se define para aplicar o que efetivamente bloqueia todas as solicitações, mas pode ser alterado para permissivo, o que é meio indulgente para o usuário, pois permite o acesso, mas registra todas as regras violadas em seu arquivo de log.

nano/etc/Selinux/config
'Defina o Selinux como permissivo ou aplicando, SelinuxType como padrão'

Verifique o arquivo de log: O arquivo de log que indica as regras violadas por cada solicitação. Isso apenas mantém logs se o Selinux estiver ativado.

Grep Selinux/Var/Log/Auditoria/Auditoria.registro

Habilite e desative as políticas e quais proteções eles oferecem: Esta é uma das opções mais importantes em Selinux, pois permite ativar e desativar políticas. Selinux tem um grande número de políticas pré -construídas que determinam se a solicitação especificada é permitida ou não. Parte do exemplo disso são alias_ftpd_full_access, que determina a capacidade do serviço FTP de fazer login nos usuários locais e ler todos os arquivos no sistema, allow_ssh_keysign, que permite que as chaves sejam usadas quando o login ao ssh, allow_user_mysql_connect, que permite que os usuários se conectem a mySql . , finalmente, ensina como definir uma política dentro ou desativar, o allow_ftpd_full_access é o nome da política, como mostrado no terminal retornado pela Semanage,

APT-Get Install PolicyCoreutils-Python-Utils
Semanage boolean -l
SetSeBool -p allow_ftpd_full_access on

Opções avançadas

As opções avançadas são opções que ajudam a estender as funcionalidades em Selinux. Há uma quantidade enorme de combinações por aí devido à natureza abrangente de Selinux, então este artigo lista alguns dos proeminentes e úteis entre eles.

Controle de acesso baseado em função (RBAC): O RBAC permite que os administradores mudem para uma maneira baseada em função de limitar a permissão de aplicativos. O que isso significa é que um usuário de um determinado grupo de usuários tem permissão para executar ou executar determinadas ações predefinidas. Enquanto o usuário faz parte da função, está tudo bem. É a mesma coisa que mudar para root ao instalar aplicativos no Linux com direitos administrativos.

Semanage Login -a -s 'MyRole' -R 'S0 -S0: C0.c1023 '

Os usuários podem mudar sua função com o seguinte comando.

sudo -r new_role_r -i

Os usuários também podem se conectar remotamente ao servidor via SSH com a função ativada na inicialização.

ssh /[email protected]

Deixe um serviço ouvir uma porta fora do padrão: Isso é bastante útil para personalizar um serviço, por exemplo, quando uma porta FTP é alterada para uma não padrão para evitar acessos não autorizados, o Selinux deve ser informado de acordo com que tais portas passem e funcionem como de costume. O exemplo a seguir permite que a porta FTP ouça a porta 992. Da mesma forma, qualquer serviço devolvido por Porta semanage -l pode ser substituído. Algumas das portas populares são http_port_t, pop_port_t, ssh_port_t.

semanage porta -a -t
porta semanage -a -t ftp_port_t -p tcp 992

Como desativar

Desativar o Selinux é mais fácil, pois está ativado e instalado. Basicamente, existem duas maneiras de desativá -lo. Temporariamente ou permanentemente. Desativar o Selinux temporário faz com que seja desativado por um tempo até a próxima bota e, assim que o computador estiver ligado novamente, o estado é reiniciado. Por outro lado, a desativação permanente de Selinux o encerra completamente, expondo -o a ameaças por aí; Portanto, é uma escolha sábia restaurar o Appmor padrão do Ubuntu, pelo menos por uma questão de segurança do sistema.

O seguinte comando no terminal o desliga temporariamente:

setEnforce 0

Para desabilitar permanentemente editar /etc/Selinux/Config e defina o Selinux como desativado.