Como converter o arquivo SELinux mypol.te em comandos semanage para um script

2

Configure um diretório de log especial para logs do MySQL. Isso me obrigou a executar o comando

grep mysqld /var/log/audit/audit.log | audit2allow -M mypol

um número de vezes para autorizar o MySQL a procurar, abrir, escrever etc no diretório de log do MySQL.

O resultado final foi um arquivo mypol.te que se parece com isto:

module mypol 1.0;

require {
    type mysqld_log_t;
    type mysqld_t;
    class dir { write search read remove_name open add_name };
}

#============= mysqld_t ==============
allow mysqld_t mysqld_log_t:dir open;
#!!!! This avc is allowed in the current policy

allow mysqld_t mysqld_log_t:dir { write remove_name search read add_name };

No entanto, quero usar o comando semanage em um script para fazer isso automaticamente em construções futuras.

Quer saber como posso converter o mypol.te acima em um conjunto de comandos semanage ?

    
por Eureka Ikara 06.11.2012 / 08:18

1 resposta

1

Ok - isso não está certo no alvo, mas você pode atingir seu objetivo construindo um RPM. Como você pode escrever scripts de shell, você não terá problemas com os RPMs.

Seu alvo é instalar o mySQL e fazer algumas tarefas de pós-instalação, como usuários addings, e adicionar uma política do SELinux.

Vou tentar delinear um receito genérico. Você pode encontrar uma visão geral melhor sobre a criação de rpms aqui .

  1. Agarre seu sabor do MySQL do espelho do mysql-sources - escolha o versão src.rpm, faça o download.
  2. instale o src.rpm - isto lhe dará um arquivo SPEC para começar (e ele também instalará os fontes para o mySQL - pronto para compilação)
  3. Inclua seu arquivo SEPolicy na seção de origem
  4. Na seção% configure, você pode definir suas opções de configuração específicas - como faria em
  5. Modifique a seção% build para que os diretórios "your" sejam criados lá e também compile sua SEPolicy nesse ponto
  6. Instale os usuários / grupos necessários na% pós-seção - não esqueça o caso onde estes já podem estar instalados - na% pós-seção faça a ativação da política SELinux compilada
  7. Inclua o módulo construído na seção% install -, bem como os "seus" diretórios especiais

Depois de ter feito seu primeiro RPM, os próximos serão fáceis. Mas talvez você deva fazer disso uma questão própria. Eu não encontrei um bom na UL.

    
por 14.11.2012 / 21:05

Tags