Ce tutoriel vous montre comment desactiver SELinux (Security-Enhanced Linux) sur votre serveur CentOS. La version de CentOS doit etre 7 ou 8. La version n'a pas d'importance.

Qu'est-ce que SELinux ?

SELinux est un mecanisme de securite directement controle par le noyau. Il permet aux administrateurs et utilisateurs un controle plus granulaire sur les acces bases sur les politiques SELinux.

SELinux a trois modes de fonctionnement differents. Les voici :

  1. Enforcing : Autorise l'acces base sur les politiques SELinux et les regles de politique.
  2. Permissive : SELinux enregistre uniquement les actions qui auraient ete refusees en mode enforcing.
  3. Disabled : Aucun message n'est enregistre et aucune politique SELinux n'est activee sur le serveur. La plupart du temps, le mode disabled est utilise avec les panneaux de controle web comme cPanel et/ou Plesk.

Prerequis

Seul l'utilisateur root ou un utilisateur avec des privileges sudo peut modifier le mode SELinux.

Verifier le Mode SELinux

Vous pouvez vous assurer du statut de SELinux avec la commande "sestatus". L'affichage montre que SELinux est active et que le mode est defini sur enforcing.

SELinux status:                 enabled
SELinuxfs mount:                /sys/fs/selinux
...

Desactiver SELinux

Je recommande fortement de changer le mode en permissive. Parfois, certaines applications n'aiment pas SELinux et necessitent le mode disabled.

Pour changer definitivement le mode SELinux de enforcing a disabled, tout d'abord, utilisez votre editeur de texte comme vi ou nano.

Ouvrez le fichier /etc/selinux/config et changez la valeur SELINUX a disabled sur la 6e ligne comme ci-dessous :

# This file controls the state of SELinux on the system.
# SELINUX= can take one of these three values:
#  enforcing - SELinux security policy is enforced.
#  permissive - SELinux prints warnings instead of enforcing.
#  disabled - No SELinux policy is loaded.
SELINUX=disabled
# SELINUXTYPE= can take one of these three values:
# targeted - Targeted processes are protected,
#  minimum - Modification of targeted policy. Only selected processes are protected. 
#  mls - Multi Level Security protection.
SELINUXTYPE=targeted

Maintenant, vous pouvez sauvegarder le fichier et quitter l'editeur de texte. Il est temps de redemarrer le serveur :

sudo reboot

Controle Final du Statut SELinux

Maintenant, nous devons nous assurer que SELinux est desactive avec succes sur le serveur. Relancez la commande "sestatus", la sortie devrait ressembler a ceci :

SELinux status:                 disabled

Conclusion

Maintenant, vous pouvez changer les modes SELinux selon celui qui vous convient ou dont vous avez besoin. SELinux est un mecanisme de securite implementant le controle d'acces obligatoire (MAC). SELinux est en mode enforcing par defaut sur les systemes CentOS 7 et CentOS 8. Il peut etre modifie en editant le fichier de configuration et en redemarrant le serveur.

Vous pouvez acceder a plus d'informations sur SELinux sur leurs pages CentOS SELinux.