Como posso isentar o MySQL da lista direcionada do SELinux?

1

Estou rodando o CentOS 5.5 e tentando colocar o MySQL em uma porta não padrão ... que o SELinux reclama. O MySQL inicia perfeitamente com o SELinux e se recusa a iniciar o processo. O SELinux está atualmente executando o tipo de "segmentado"

Não querendo desabilitar totalmente o SELinux, eu gostaria de isentar o MySQL da lista de daemons direcionados. Alguém pode me dizer como desabilitar o SELinux para este serviço?

    
por InvisibleFrisbee 06.04.2011 / 05:09

2 respostas

2

Você não precisa desativar o SELinux. O que você precisa fazer é rotular a porta que deseja usar.

Para verificar as portas rotuladas para o MySQL na política:


 # semanage port -l | grep mysql
mysqld_port_t                  tcp      1186, 3306, 63132-63163
mysqlmanagerd_port_t           tcp      2273

Para rotular uma porta personalizada $:


 # semanage port -a -t mysqld_port_t -p tcp $custom

A referência principal para isso é a% man_de% manpage.

    
por 10.04.2013 / 20:58
1

Se você mudar a transição de domínio para o MySQL com o mysqld_disable_trans booleano, o MySQL não é mais protegido pelo SELinux.

Mais em detalhe: definir este booleano fará com que o mysqld seja executado como initrc_t , que é mais ou menos o mesmo que unconfined_t . Isso significa que as restrições do SELinux em qual porta o MySQL pode e não pode ser usado serão removidas.

Inverta o booleano usando:

setsebool mysqld_disable_trans 1

ou torná-lo diretamente com

setsebool -P mysqld_disable_trans 1

Em ainda mais detalhes: o booleano desativa a transição do domínio initrc_t para o domínio mysqld_t no momento em que o mysqld é iniciado pelo daemon de inicialização durante a inicialização, ou a transição de unconfined_t para mysqld_t se Ele é iniciado manualmente após a inicialização. Portanto, o mysqld não está sendo executado fora do SELinux, mas em um domínio que tem muito menos restrições do que o mysqld_t .

Muitos serviços que existem na política nativa do RHEL5 / CentOS 5 possuem * _disable_trans booleanos para desativar a transição de domínio para esse serviço. Em distribuições mais novas e políticas mais recentes, como no Fedora e RHEL6, você apenas descarrega o módulo completo para o mysqld para evitar que o SELinux bloqueie o seu aplicativo fazendo coisas.

    
por 07.04.2011 / 22:55

Tags