← Toutes les règles
SOCLE-CLD-PKG-052// Packagesélevéeétat d’inventaire

Installer le paquet libselinux

Garantit que la bibliothèque centrale libselinux est installée afin que le système puisse appliquer les contrôles d'accès obligatoires SELinux.

Vérifié sur ce qui est installé ou enregistré, paquets présents/absents, bases de comptes.

Un PASS prouve✓ actif maintenant✓ sur disque✓ survit au rebootle verdict qualifié →
FedoraRHEL 10 / Rocky 10 / AlmaLinux 10RHEL 8 / Rocky 8 / AlmaLinux 8CIS 4.0.0RHEL 9 / Rocky 9 / AlmaLinux 9CIS 2.0.0
Un seul check, mappé sur 2 normes

Un mapping est une référence croisée vers l’endroit où chaque norme situe cette exigence, ancrée et recoupée, pas une affirmation d’équivalence. Un check réussi est une preuve vers ces références, comment le lire.

Pourquoi cette règle

SELinux (Security-Enhanced Linux) est une fonctionnalité du noyau accompagnée d'utilitaires qui ajoutent un contrôle d'accès obligatoire (MAC) au-dessus des permissions Unix classiques. Le paquet libselinux contient la bibliothèque centrale à laquelle se lie tout outil compatible SELinux. Sans elle, la chaîne d'outils SELinux en espace utilisateur ne fonctionne pas et le système ne peut pas appliquer sa politique MAC, supprimant une couche de confinement essentielle qui limite les dégâts d'un service compromis.

Ce que vérifie Pavois

Pavois interroge la base de paquets via la ressource InSpec package('libselinux') et vérifie should be_installed, en s'appuyant sur rpm/dnf sur les systèmes de la famille RHEL. Cela reflète l'inventaire effectif plutôt que de déduire la présence de SELinux à partir de /etc/selinux/config, qui peut exister même si les bibliothèques ont été retirées. L'état du paquet est la vérité de terrain pour savoir si l'espace utilisateur SELinux peut s'exécuter.

describe package('libselinux') do
  it { should be_installed }
end

Comment vérifier qu’elle est appliquée

Exécutez rpm -q libselinux. Conforme : libselinux-3.x-...el9.x86_64 ; non conforme : package libselinux is not installed. Vérifiez l'application séparément avec sestatus (attendu : SELinux status: enabled et Current mode: enforcing).

Inspecter et investiguer

L'installation est tracée par le gestionnaire de paquets (dnf history, rpm -q --last libselinux). Les décisions de politique SELinux et les refus (événements AVC) sont enregistrés dans /var/log/audit/audit.log et consultables via ausearch -m AVC ou journalctl -t setroubleshoot.

Remédiation

Le plan de durcissement de Pavois déclare une ressource package pour libselinux avec l'action install ; pavois harden apply l'installe via le gestionnaire de paquets natif. Sur les systèmes de la famille RHEL, cette bibliothèque est normalement une dépendance de base ; cette règle protège surtout les systèmes où elle aurait été retirée volontairement. Installer la bibliothèque ne bascule pas à lui seul SELinux en mode enforcing : cela dépend de /etc/selinux/config et d'un contrôle distinct.

Pavois applique ceci avec son propre moteur harden, le plan ci-dessous, pas un script shell :

actioninstall
namelibselinux
resourcepackage
pavois harden plan local

où la cible est local, un alias SSH user@hôte, ou un conteneur , Docs

Impact & précautions

L'absence de libselinux casse l'espace utilisateur SELinux et empêche l'application du MAC, privant le système d'une couche de confinement majeure. Précautions : installer la bibliothèque est sans danger et n'entraîne généralement aucun changement de comportement. Le risque vient de l'activation du mode enforcing ensuite : des services sans politique correcte peuvent se voir refuser l'accès et échouer. Avant de passer en enforcing, exécutez en mode permissive, examinez /var/log/audit/audit.log pour les refus AVC, et réétiquetez le système de fichiers (fixfiles relabel ou touch /.autorelabel puis redémarrage) pour éviter les échecs de connexion ou de service.

Mapping des normes

NormeRéférenceTypeVersionConfiance
CIS1.3.1.1directper OS, see the benchmark tablehaute
PCI DSS1.2.6support4.0.1moyenne

Chaque référence est une référence croisée ancrée dans le benchmark amont et recoupée avec le SCAP Security Guide et ansible-lockdown, pas une affirmation d’équivalence. Direct = une exigence prescriptive au niveau de la ligne ; support = une famille de contrôle abstraite (NIST) vers laquelle le check apporte une preuve. Comment lire un mapping.

Sources & références