Comme dit sur https://blog.microlinux.fr/selinux
SELinux est une extension du noyau Linux qui permet de surveiller des processus en cours d’exécution, en garantissant que ceux-ci respectent certaines règles. Il est déployé, en apportant une couche supplémentaire aux traditionnels droits d’accès aux fichiers Unix.
Commande | Fonction |
---|---|
getenforce | Savoir si SELinux est activé ou non |
setenforce 1 | Activer SELinux |
setenforce 0 | Désactiver SELinux |
ls -Z | Lister les fichiers et leur étiquette par SELinux |
restorecon -v -R . | Sur le répertoire en cours, remet l'étiquette par défaut sur les fichiers |
Une des commandes qui sert le plus est celle qui remet l'étiquette par défaut sur les fichiers du répertoire en cours
restorecon -v -R .
Lien vers le fichier : cliquez ici
Dans les autres commandes que j'ai déjà dû utiliser, il y à celle-ci qui permet à HAProxy de se connecter à n'importe quel port réseau
setsebool -P haproxy_connect_any=1
Lien vers le fichier : cliquez ici
Vu aussi avec le cache varnish, on avait toujours une erreur en lançant le service alors que le programme se lançait bien si on le lançait directement.
Sur leur lien https://docs.varnish-software.com/tutorials/selinux-faq/
j'ai appris que les process pouvaient avoir un label de sécurité. On peut les voir avec
ps -efZ
Lien vers le fichier : cliquez ici
Pour voir spécifiquement ceux du cache varnish
ps -C varnishd,cache-main -o comm,label
Lien vers le fichier : cliquez ici
Et du coup suivant les labels affichés, on peut les ajouter dans une liste de ceux autorisés.
Exemple avec celui de varnish, pour autoriser son label varnishd_t, faire
semanage permissive -a varnishd_t
Lien vers le fichier : cliquez ici
Pour voir les blocages de SELinux dans le journal d'audit système
sudo ausearch -m avc -ts today
Lien vers le fichier : cliquez ici
Article(s) en relation(s)