Le rôle de SELinux : 1. Fournit une sécurité améliorée pour le système Linux en utilisant le contrôle MAC pour les processus et les ressources de fichiers ; 2. Accorde au sujet des privilèges d'accès minimaux pour minimiser l'accessibilité des processus de service dans les ressources système, ce qui peut empêcher le sous réserve d'affecter négativement d'autres utilisateurs ou processus ; 3. Chaque processus a sa propre zone d'exécution, et chaque processus s'exécute uniquement dans son propre domaine et ne peut pas accéder aux autres processus et fichiers ; 4. SELinux peut maximiser les programmes pour limiter l'activité de code malveillant dans les systèmes Linux ; .
L'environnement d'exploitation de ce tutoriel : système linux7.3, ordinateur Dell G3.
SELinux, l'abréviation de Security Enhanced Linux, c'est-à-dire Linux à sécurité améliorée, a été développé conjointement par la National Security Agency (NSA) des États-Unis et d'autres agences de sécurité (telles que SCC) pour améliorer la sécurité du système d'exploitation Linux traditionnel. . Résolvez 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.).
Les débutants peuvent comprendre SELinux de cette manière. Il s'agit d'un module fonctionnel déployé sur Linux pour améliorer la sécurité du système.
La sécurité traditionnelle du système Linux utilise DAC (Discretionary Access Control), tandis que SELinux est un module de fonction d'amélioration de la sécurité déployé dans les systèmes Linux. Il utilise MAC (Mandatory Access Control) pour les ressources de processus et de fichiers qui offrent une sécurité améliorée.
Le rôle principal de SELinux
fournit une sécurité améliorée pour les systèmes Linux en utilisant le contrôle MAC (contrôle d'accès obligatoire) des ressources de processus et de fichiers.
Minimiser les ressources accessibles au processus de service dans le système (principe du moindre privilège).
Cela donne au sujet (utilisateur ou processus) le moins de privilèges d'accès, ce qui signifie que chaque sujet ne reçoit qu'un ensemble limité d'autorisations nécessaires pour effectuer les tâches pertinentes. En accordant le minimum de privilèges d'accès, vous pouvez empêcher un mandataire d'affecter négativement d'autres utilisateurs ou processus.
Pendant le processus de gestion SELinux, chaque processus possède sa propre zone d'exécution (appelée domaine). Chaque processus s'exécute uniquement dans son propre domaine et ne peut pas accéder aux autres processus et fichiers à moins que des autorisations spéciales ne soient accordées.
SELinux peut limiter autant que possible les activités de code malveillant dans les systèmes Linux.
Connaissances approfondies :
Concepts de base de SELinux :
1. Sujet : C'est le processus qui souhaite accéder aux ressources d'un fichier ou d'un répertoire. Pour obtenir des ressources, le processus de base est le suivant : l'utilisateur appelle une commande, la commande génère un processus et le processus accède à la ressource du fichier ou du répertoire. Dans un système de contrôle d'accès discrétionnaire (autorisations par défaut de Linux), le sujet contrôlé par les autorisations est l'utilisateur ; dans un système de contrôle d'accès obligatoire (SELinux), le sujet contrôlé par les règles de politique est le processus.
2. Objet : Ce concept est relativement clair, c'est la ressource fichier ou répertoire à laquelle il faut accéder.
3. Politique : il existe un grand nombre de processus et de fichiers dans le système Linux, donc le nombre de règles SELinux qui limitent l'accès des processus aux fichiers est encore plus fastidieux si chaque règle doit être définie manuellement par l'administrateur. la convivialité de SELinux sera compromise sera extrêmement faible. Heureusement, nous n'avons pas besoin de définir manuellement les règles. SELinux définit deux politiques par défaut. Les règles ont été écrites dans ces deux politiques. Par défaut, appelez simplement la politique et elle peut être utilisée normalement. Les deux politiques par défaut sont les suivantes :
-targeted : Il s'agit de la politique par défaut de SELinux. Cette politique limite principalement les services réseau et a très peu de restrictions sur le système local. Cette stratégie nous suffit.
-mls : Stratégie de protection de sécurité multi-niveaux, cette stratégie est plus restrictive.
4. Contexte de sécurité : chaque processus, fichier et répertoire a son propre contexte de sécurité. Le fait que le processus puisse accéder au fichier ou au répertoire dépend de la correspondance du contexte de sécurité. Si le contexte de sécurité du processus correspond au contexte de sécurité du fichier ou du répertoire, le processus peut accéder au fichier ou au répertoire. Bien entendu, pour déterminer si le contexte de sécurité d'un processus correspond au contexte de sécurité d'un fichier ou d'un répertoire, vous devez vous fier aux règles de la stratégie. Par exemple, nous devons trouver un partenaire, les hommes peuvent être considérés comme le sujet et les femmes comme la cible. Le fait qu'un homme puisse poursuivre une femme (si le sujet peut accéder à la cible) dépend principalement de l'adéquation des personnalités des deux personnes (si le contexte de sécurité du sujet et celui de la cible correspondent). Cependant, la compatibilité des personnalités de deux personnes doit être jugée en fonction de conditions spécifiques telles que les habitudes de vie, le comportement, l'environnement familial, etc. (la concordance du contexte de sécurité doit être déterminée par les règles de la politique).
Mode de fonctionnement SELinux
SELinux propose 3 modes de fonctionnement : Désactivé, Permissif et Enforcing, et chaque mode offre des avantages différents pour la sécurité du système Linux.
1. Désactiver le mode de travail (mode arrêt)
En mode Désactiver, SELinux est désactivé et la méthode de contrôle d'accès DAC par défaut est utilisée. Ce mode est utile pour les environnements qui ne nécessitent pas de sécurité renforcée.
Par exemple, si une application en cours d'exécution fonctionne correctement de votre point de vue, mais génère un grand nombre de messages de rejet SELinux AVC, elle peut éventuellement remplir le fichier journal et rendre le système inutilisable. Dans ce cas, la solution la plus simple consiste à désactiver SELinux, mais vous pouvez également définir le contexte de sécurité correct sur les fichiers auxquels votre application accède.
Il convient de noter qu'avant de désactiver SELinux, vous devez déterminer si SELinux peut être à nouveau utilisé sur le système. Si vous décidez de le définir sur Enforcing ou Permissive à l'avenir, le système passera un SELinux automatique lorsque le système sera activé. redémarré la prochaine fois.
La façon de désactiver SELinux est également très simple. Modifiez simplement le fichier de configuration /etc/selinux/config et remplacez SELINUX= dans le texte par SELINUX=disabled. Après avoir redémarré le système, SELinux sera désactivé.
2. Mode de travail permissif (mode permissif)
En mode permissif, SELinux est activé, mais les règles de politique de sécurité ne sont pas appliquées. Lorsque les règles de politique de sécurité doivent refuser l’accès, l’accès est toujours autorisé. Cependant, un message est envoyé au fichier journal indiquant que l'accès doit être refusé.
Le mode permissif SELinux est principalement utilisé dans les situations suivantes :
Auditer les règles de politique SELinux actuelles ;
Tester de nouvelles applications pour voir l'effet de l'application des règles de politique SELinux à ces programmes ;
Résoudre un certain problème. Un échec dans lequel ; un service ou une application spécifique ne fonctionne plus correctement sous SELinux.
Dans certains cas, la commande audit2allow peut être utilisée pour lire le journal d'audit SELinux et générer de nouvelles règles SELinux pour autoriser sélectivement les comportements refusés. C'est également un moyen d'autoriser les applications sans désactiver SELinux. Un moyen rapide de faire fonctionner les programmes sous Linux. systèmes.
3. Mode de travail Enforcing (mode d'application)
Comme vous pouvez le voir d'après le nom de ce mode, en mode Enforcing, SELinux est démarré et toutes les règles de politique de sécurité sont appliquées.
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!