« LINUX:SELinux » : différence entre les versions
Aucun résumé des modifications |
Aucun résumé des modifications |
||
(2 versions intermédiaires par le même utilisateur non affichées) | |||
Ligne 148 : | Ligne 148 : | ||
=[[LINUX:SELinux-Exercice de création d'un module personnel|Exercice de création d'un module personnel]]= | =[[LINUX:SELinux-Exercice de création d'un module personnel|Exercice de création d'un module personnel]]= | ||
J'ai voulu essayer de créer | J'ai voulu essayer de créer un module pour une application personnelle élémentaire. | ||
=Problème= | |||
Suite à une mise à jour classique sous Fedora 41, Selinux était en erreur. Plusieurs problèmes apparaissent de façon répétitives dont voici quelques cas: | |||
* Lors d'un redémarrage, nombre de services ne démarrent plus comme SSHD, Fail2Ban,... | |||
* Plusieurs accès sont refusés | |||
* L'ajout et l'élimination de modules personnels sont impossibles avec des messages d'erreurs liés à la base des modules | |||
* La recompilation de la base de modules s'avère impossible. Voici un extrait des messages d'erreur. | |||
---- | |||
Found conflicting filecon rules | |||
Problems processing filecon rules | |||
Failed post db handling | |||
Post process failed | |||
semodule: Failed! | |||
---- | |||
On remarque que parmi les modules, celui nommé "extra_binsbin" (classe 400) pose problème et est nouveau mais il est impossible de le retirer. | |||
Une solution proposée est d'éliminer Selinux du système et toutes ses traces et ensuite de recommencer la réinstallation et la configuration à partir de rien. Mais ceci s'avère impossible car il est protégé. | |||
dnf remove selinux-policy-targeted | |||
La solution trouvée est de réinstaller Selinux: | |||
* On se met en mode permissif ou on le désactive. | |||
* On le réinstalle. | |||
dnf reinstall selinux-policy-targeted | |||
* Eventuellement on recompile la base des modules | |||
semodule -B -v | |||
* Par sécurité, on active la labellisation à nouveau des fichiers. | |||
touch /.autorelabel | |||
* On réactive Selinux ou au moins on le met en mode permissif pour tester en modifiant le fichier "/etc/selinux/config". | |||
* On redémarre la machine. | |||