Linux:SELinux
De WIKI.minetti.org
Révision de 7 avril 2016 à 18:56 par Jp (discussion | contributions) (Page créée avec « == Quelques commandes == * Pour connaître l'état de SELinux: sestatus qui retourne: SELinux status: enabled SELinuxfs mount: /selinux... »)
Quelques commandes
- Pour connaître l'état de SELinux:
sestatus
qui retourne:
SELinux status: enabled SELinuxfs mount: /selinux Current mode: enforcing Mode from config file: enforcing Policy version: 21 Policy from config file: targeted
- Pour désactiver SELinux (Current mode = permissive):
setenforce 0
- Pour le ré-activer (Current mode = enforcing):
setenforce 1
- Pour afficher le context d'un fichier:
ls -alZ
- Pour modifier le context d'un répertoire et de son contenu (modification récursive):
chcon -R -u system_u -r object_r -t var_t www
- Pour modifier le context d'un répertoire et de son contenu dans la base de SELinux:
semanage fcontext -a -t cert_t '/etc/pki(/.*)?'
- Pour supprimer un context dans la base de SELinux:
semanage fcontext -d '/etc/pki(/.*)?'
- Pour restorer les contexts:
restorecon -R -v /var/www
- Pour lister tous les contexts:
semanage fcontext -l
Résolution de problèmes d'accès
Pour résoudre des problèmes d'accès qui serait peut-être dû à SELinux, assurez-vous d'abord qu'il en est bien la cause en le désactivant:
setenforce 0
Faites ensuite un nouveau test. Si ça marche, le problème vient bien de SELinux.
Ensuite, dans le fichier /var/log/audit/audit.log, vous trouverez la cause de votre problème.
Pour générer des règles à partir du fichier audit.log:
grep nagios /var/log/audit/audit.log | audit2allow -M nagios semodule -i nagios.pp
La commande audit2allow génère 2 fichiers: nagios.pp et nagios.te.
Il est possible de personnaliser le fichier d'extension te et de re-générer un nouveau fichier pp:
checkmodule -M -m -o nagios.mod nagios.te semodule_package -o nagios.pp -m nagios.mod
Pour lister des permissions:
sesearch --allow -s crond_t -c file | grep "bin_t"