Maison  >  Article  >  Opération et maintenance  >  Qu'est-ce que SELinux

Qu'est-ce que SELinux

青灯夜游
青灯夜游original
2023-02-08 11:56:353815parcourir

SELinux fait référence à Linux à sécurité améliorée. Il s'agit d'un sous-système de sécurité de Linux. Il est conçu pour améliorer la sécurité du système d'exploitation Linux traditionnel et résoudre divers problèmes d'autorisation dans le système de contrôle d'accès discrétionnaire (DAC) des systèmes Linux traditionnels (. comme root L'autorité est trop élevée, etc.). SELinux utilise un système de contrôle d'accès obligatoire (MAC), qui contrôle si un processus a des droits d'accès aux fichiers ou répertoires sur un système de fichiers spécifique.

Qu'est-ce que SELinux

L'environnement d'exploitation de ce tutoriel : système linux7.3, ordinateur Dell G3.

Qu'est-ce que SELinux

SELinux, l'abréviation de Security Enhanced Linux, qui signifie Linux à sécurité améliorée, est une sécurité Linux développée conjointement par la National Security Agency (NSA) des États-Unis et d'autres agences de sécurité (telles que SCC Company) Le sous-système est conçu pour améliorer la sécurité du système d'exploitation Linux traditionnel et résoudre divers problèmes d'autorisation dans le système de contrôle d'accès discrétionnaire (DAC) dans les systèmes Linux traditionnels (tels que des autorisations root excessives, etc.).

Le projet SELinux était open source sous licence GPL en 2000. SELinux est progressivement devenu populaire lorsque Red Hat a inclus SELinux dans sa distribution Linux. Aujourd'hui, SELinux est largement utilisé par de nombreuses organisations, et presque toutes les versions 2.6 et supérieures du noyau Linux ont intégré les fonctions SELinux.

Pour SELinux, les débutants peuvent le comprendre de cette façon. Il s'agit d'un module fonctionnel déployé sur Linux pour améliorer la sécurité du système.

Nous savons que dans les systèmes Linux traditionnels, les autorisations par défaut servent à contrôler les autorisations de lecture, d'écriture et d'exécution du propriétaire, du groupe et des autres personnes d'un fichier ou d'un répertoire. Cette méthode de contrôle est appelée méthode de contrôle d'accès discrétionnaire (DAC). ; dans SELinux, le système Mandatory Access Control (MAC) est utilisé, qui contrôle si un processus a des droits d'accès aux fichiers ou aux répertoires sur un système de fichiers spécifique. La base pour juger si un processus peut accéder aux fichiers ou aux répertoires dépend de nombreuses règles de politique. défini dans SELinux.

En parlant de cela, il est nécessaire que les lecteurs comprennent en détail les caractéristiques de ces deux systèmes de contrôle d'accès :

  • Le contrôle d'accès discrétionnaire (DAC) est la méthode de contrôle d'accès par défaut de Linux, qui est basée sur l'utilisateur. L'identité et les autorisations rwx de l'identité sur les fichiers et les répertoires sont utilisées pour déterminer s'ils sont accessibles. Cependant, nous avons également trouvé quelques problèmes dans l'utilisation réelle du contrôle d'accès DAC :
    • les autorisations root sont trop élevées et les autorisations rwx ne prennent pas effet sur l'utilisateur root une fois que l'utilisateur root est volé ou que l'utilisateur root lui-même fait un mauvais fonctionnement, tout cela causera des dommages à l'utilisateur root. Une menace mortelle pour les systèmes Linux.

    • Les autorisations par défaut de Linux sont trop simples. Elles n'ont que l'identité du propriétaire, le groupe auquel ils appartiennent et les autres personnes. Les autorisations n'ont que des autorisations de lecture, d'écriture et d'exécution, ce qui n'est pas propice à la subdivision des autorisations. et réglage.

    • L'attribution irrationnelle des autorisations entraînera de graves conséquences, telles que la définition d'autorisations 777 pour les fichiers ou répertoires sensibles du système, ou la définition d'autorisations spéciales - autorisations SetUID pour les fichiers sensibles, etc.

  • Le contrôle d'accès obligatoire (MAC) consiste à contrôler l'accès de processus spécifiques aux ressources de fichiers du système via les règles de politique par défaut de SELinux. En d’autres termes, même si vous êtes un utilisateur root, si vous utilisez un processus incorrect lors de l’accès à une ressource fichier, vous ne pourrez pas accéder à la ressource fichier.

De cette manière, SELinux contrôle non seulement les utilisateurs et les autorisations, mais également les processus. Les ressources de fichiers auxquelles chaque processus peut accéder et les processus auxquels chaque ressource de fichier peut accéder sont déterminés par la politique de règles SELinux.

Notez que dans SELinux, les autorisations par défaut de Linux sont toujours efficaces. En d'autres termes, pour qu'un utilisateur puisse accéder à un fichier, les autorisations de l'utilisateur doivent se conformer aux autorisations rwx, et le processus de l'utilisateur est requis. pour se conformer aux réglementations de SELinux.

Cependant, il y a tellement de processus et tellement de fichiers dans le système. Si l'allocation et la spécification sont effectuées manuellement, la charge de travail sera trop importante. Par conséquent, SELinux fournit de nombreuses règles de politique par défaut, qui sont relativement complètes. Nous apprendrons plus tard comment afficher et gérer ces règles de politique.

Afin de donner aux lecteurs une compréhension claire du rôle joué par SELinux, voici un exemple Supposons qu'une vulnérabilité soit découverte dans Apache, qui permet à un utilisateur distant d'accéder à des fichiers sensibles du système (tels que /etc/shadow). . Si SELinux est activé dans notre Linux, alors, comme le processus du service Apache n'a pas l'autorisation d'accéder à /etc/shadow, l'accès de l'utilisateur distant au fichier /etc/shadow via Apache sera bloqué par SELinux, qui protège Linux. Le rôle du système.

Comment fermer Selinux

#查看selinux状态
[root@vm01]# getenforce
 
#临时关闭selinux
[root@vm01]# setenforce 0
 
#永久关闭
[root@vm01]# vi /etc/selinux/config
# SELINUX=enforcing改为SELINUX=disabled

Recommandations associées : "Tutoriel vidéo Linux"

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn