Eu vou responder minha própria pergunta. Primeiro fiz o seguinte:
semodule -l | grep mymodulename
(Substitua mymodulename por qualquer módulo anterior que você tenha importado). Pule esta etapa se você não tiver importado nenhum módulo anteriormente.
Em seguida, execute este comando para remover os módulos importados anteriormente. Novamente pule esta etapa se você não importou nenhum módulo anterior.
semodule -r names_of_modules_returned_from_prior_command
Agora devemos estar de volta a uma lista "limpa".
Em seguida, execute o seguinte para definir o selinux como permissivo (monitor / log mas não bloquear):
setenforce 0
Faça getenforce e verifique se ele retorna: permissivo
Execute o seguinte comando para limpar o log do SELinux:
echo "" >/var/log/audit.log
ESPERE pelo menos 15 a 20 minutos para que o selinux crie novas entradas de registro em /var/log/audit/audit.log
Em seguida, execute o seguinte comando para criar uma política selinux abrangente:
cat /var/log/audit/audit.log | audit2allow -m yourname >yourname.te
Em seguida, execute o seguinte comando, o qual acredito que verifique o arquivo .te e crie um arquivo .mod (?)
checkmodule -M -m -o yourname.mod yourname.te
Em seguida, compile o arquivo .mod em um arquivo .pp binário com o seguinte comando:
semodule_package -m yourname.mod -o yourname.pp
Por fim, instale o módulo:
semodule -i yourname.pp
Monitore o /var/log/audit/audit.log por algum tempo e garanta que nenhuma nova entrada apareça.
cat /var/log/audit/audit.log | audit2why
Se nenhuma nova entrada aparecer, defina o selinux de volta para impor:
setenforce 1
Isso pareceu funcionar para mim. Pode ser um pouco mais permissivo do que o necessário, mas pelo menos eu não estou desligando totalmente o SELinux.
Espero que isso ajude alguém.
Obrigado Brad