SELinux créer un module d'exception

De TechWik
Révision datée du 22 janvier 2021 à 17:46 par Toine (discussion | contributions)
(diff) ← Version précédente | Voir la version actuelle (diff) | Version suivante → (diff)
Aller à : navigation, rechercher

Objectif: se débarrasser de certaines alertes SELinux qu'on ne peut pas traiter avec restorecon, chcon.

Pour cela il faut les packages policycoreutils et checkpolicy (rhel8). On va extraire les alertes SElinux de l'audit log, créer le module texte et le compiler puis l'appliquer.

Extraire les logs (par exemple toutes les alertes):

 # grep "avc:  denied" /var/log/audit/audit.log > mysemodule.log

Laisser dans ce fichier uniquement les lignes correspondant aux alertes à supprimer, puis générer les règles correspondantes

 # cat mysemodule.txt | audit2allow -r > mysemodule.te

Ajouter une ligne en tête de fichier définissant le module, par exemple

 module mysemodule 1.0.0;

Compiler le module:

 # rm -f mysemodule.mod mysemodule.pp 
 # checkmodule -M -m -o mysemodule.mod mysemodule.te
 # semodule_package -o mysemodule.pp -m mysemodule.mod

Appliquer le module

 # semodule -i mysemodule.pp