SELinux

Configuration de SELinux

Le fichier /etc/sysconfig/selinux permet de configurer SELinux. Le paramètre SELINUX définit le niveau de sécurité de SELinux :

  • enforcing : SELinux bloque les actions qui transgressent les règles
  • permissive : SELinux journalise toutes les actions qui transgressent les règles mais sans les bloquer
  • disabled : SELinux est désactivé

La commande sestatus permet de connaître le statut de SELinux :

# sestatus
SELinux status:                 enabled
SELinuxfs mount:                /selinux
Current mode:                   enforcing
Mode from config file:          enforcing
Policy version:                 24
Policy from config file:        targeted

Les fichiers

Lister les fichiers avec leur contexte :

# ls -Zd /ftp
drwxr-xr-x. root root system_u:object_r:public_content_t:s0 /ftp

Changer le contexte d’un fichier (ou d’un dossier) :

# chcon -R -u system_u -t public_content_t /ftp

Copier le contexte d’un fichier sur un autre :

# chcon -R --reference /var/ftp /ftp

Restaurer le contexte par défaut d’un fichier :

# restorecon -F /ftp

Les utilisateurs

Mettre le contexte staff_u sur un utilisateur :

# semanage login -a -s staff_u matthieu

Afficher le contexte d’un utilisateur :

$ id -Z
staff_u:staff_r:staff_t:s0-s0:c0.c1023

Lister tous les utilisateurs avec leur contexte :

# semanage login -l
__default__               unconfined_u              s0-s0:c0.c1023
matthieu                  staff_u                   s0-s0:c0.c1023
root                      unconfined_u              s0-s0:c0.c1023
system_u                  system_u                  s0-s0:c0.c1023

Note : lors de la création d’un utilisateur, il se voit attribuer le contexte de __default__.