1.4. Architecture et paquets SELinux


SELinux est un module de sécurité Linux (LSM) intégré au noyau Linux. Le sous-système SELinux du noyau est piloté par une politique de sécurité contrôlée par l'administrateur et chargée au démarrage. Toutes les opérations d'accès au système au niveau du noyau, pertinentes pour la sécurité, sont interceptées par SELinux et examinées dans le contexte de la politique de sécurité chargée. Si la politique chargée autorise l'opération, celle-ci se poursuit. Dans le cas contraire, l'opération est bloquée et le processus reçoit une erreur.

Les décisions SELinux, telles que l'autorisation ou le refus d'accès, sont mises en cache. Ce cache est connu sous le nom de cache de vecteur d'accès (AVC). Lorsque ces décisions sont mises en cache, les règles de politique SELinux doivent être vérifiées moins souvent, ce qui améliore les performances. N'oubliez pas que les règles de politique SELinux n'ont aucun effet si les règles DAC refusent l'accès en premier. Les messages d'audit bruts sont enregistrés sur le site /var/log/audit/audit.log et commencent par la chaîne type=AVC.

Dans RHEL 9, les services système sont contrôlés par le démon systemd; systemd démarre et arrête tous les services, et les utilisateurs et processus communiquent avec systemd à l'aide de l'utilitaire systemctl. Le démon systemd peut consulter la politique SELinux et vérifier l'étiquette du processus appelant et l'étiquette du fichier unitaire que l'appelant tente de gérer, puis demander à SELinux si l'appelant est autorisé ou non à accéder au système. Cette approche renforce le contrôle d'accès aux capacités critiques du système, qui comprennent le démarrage et l'arrêt des services du système.

Le démon systemd fonctionne également comme un gestionnaire d'accès SELinux. Il récupère l'étiquette du processus exécutant systemctl ou du processus qui a envoyé un message D-Bus à systemd. Le démon recherche ensuite l'étiquette du fichier d'unité que le processus voulait configurer. Enfin, systemd peut extraire des informations du noyau si la politique SELinux autorise l'accès spécifique entre l'étiquette du processus et l'étiquette du fichier d'unité. Cela signifie qu'une application compromise qui doit interagir avec systemd pour un service spécifique peut maintenant être confinée par SELinux. Les rédacteurs de politiques peuvent également utiliser ces contrôles fins pour confiner les administrateurs.

Si un processus envoie un message D-Bus à un autre processus et si la politique SELinux n'autorise pas la communication D-Bus entre ces deux processus, le système affiche un message de refus USER_AVC et la communication D-Bus est interrompue. Notez que la communication D-Bus entre deux processus fonctionne de manière bidirectionnelle.

Important

Pour éviter un étiquetage SELinux incorrect et les problèmes qui en découlent, assurez-vous que vous démarrez les services à l'aide d'une commande systemctl start.

RHEL 9 fournit les paquets suivants pour travailler avec SELinux :

  • politiques : selinux-policy-targeted, selinux-policy-mls
  • outils : policycoreutils, policycoreutils-gui, libselinux-utils, policycoreutils-python-utils, setools-console, checkpolicy
Red Hat logoGithubRedditYoutubeTwitter

Apprendre

Essayez, achetez et vendez

Communautés

À propos de la documentation Red Hat

Nous aidons les utilisateurs de Red Hat à innover et à atteindre leurs objectifs grâce à nos produits et services avec un contenu auquel ils peuvent faire confiance.

Rendre l’open source plus inclusif

Red Hat s'engage à remplacer le langage problématique dans notre code, notre documentation et nos propriétés Web. Pour plus de détails, consultez leBlog Red Hat.

À propos de Red Hat

Nous proposons des solutions renforcées qui facilitent le travail des entreprises sur plusieurs plates-formes et environnements, du centre de données central à la périphérie du réseau.

© 2024 Red Hat, Inc.