SELinux (Security-Enhanced Linux) est un module de sécurité qui implémente le contrôle d'accès obligatoire (MAC) dans les systèmes Linux. Il applique les politiques de sécurité en appliquant des étiquettes aux objets système (fichiers, processus, etc.) pour un contrôle d'accès plus précis. SELinux a trois modes de fonctionnement : Enforcing, Permissive et Disabled. Cet article présentera ces trois modes en détail et fournira des exemples de code spécifiques.
1. Mode d'application
Le mode d'application est le mode le plus sûr et recommandé, qui applique les politiques SELinux et refuse et enregistre les violations. En mode Enforcing, le système refuse tout accès non autorisé et génère les enregistrements de journal correspondants. Pour comprendre le mode Enforcing, nous pouvons parcourir l'exemple de code suivant pour montrer comment définir l'étiquette SELinux d'un fichier et essayer d'y accéder :
# 创建测试文件 touch testfile # 查看文件的SELinux标签 ls -Z testfile # 修改文件的SELinux标签为httpd_sys_content_t类型 chcon -t httpd_sys_content_t testfile # 尝试访问文件 cat testfile
Dans l'exemple ci-dessus, nous avons créé un fichier nommé testfile et défini son étiquette SELinux. au type httpd_sys_content_t. Lorsque vous essayez de lire ce fichier, l'accès est refusé car l'étiquette du fichier ne correspond pas à celle du processus actuel.
2. Mode permissif
Le mode permissif permet aux administrateurs système de tester les politiques SELinux sans réellement intercepter aucune demande d'accès. En mode permissif, SELinux enregistrera les violations d'accès mais ne les refusera pas. Ce mode est généralement utilisé pour déboguer et tester de nouvelles politiques SELinux. Voici un exemple qui montre comment afficher les enregistrements de journal en mode permissif :
# 查看当前SELinux模式 sestatus # 切换SELinux模式为Permissive setenforce 0 # 尝试访问被禁止的文件 cat /etc/shadow # 查看SELinux日志记录 cat /var/log/audit/audit.log
Dans l'exemple ci-dessus, nous passons le mode SELinux en mode permissif et essayons de lire le fichier /etc/shadow, à quel point les enregistrements de journal afficheront des informations. sur l'interdiction d'accéder à des informations, mais l'accès effectif sera toujours autorisé.
3. Mode désactivé
Le mode désactivé désactivera complètement SELinux et annulera tout contrôle d'accès et mesures de protection liées à SELinux. C'est le mode le moins recommandé car la sécurité du système sera affectée. En mode désactivé, le système n'exécutera pas les politiques SELinux et n'enregistrera aucun accès illégal. Voici un exemple montrant comment désactiver SELinux :
# 查看当前SELinux模式 sestatus # 禁用SELinux setenforce 0 # 查看当前SELinux模式 sestatus
Dans l'exemple ci-dessus, nous avons désactivé SELinux via la commande setenforce et vérifié que SELinux est en mode désactivé via la commande sestatus.
Résumé : Comprendre les trois modes de fonctionnement de SELinux est crucial pour la sécurité du système et le contrôle d'accès. Le mode d'application offre le plus haut niveau de protection, le mode permissif est utilisé pour le débogage et les tests, et le mode désactivé doit être évité pour garantir la sécurité du système. Grâce aux exemples de code spécifiques ci-dessus, j'espère que les lecteurs pourront mieux comprendre le mode de fonctionnement de SELinux ainsi que ses avantages et ses inconvénients.
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!