SELinux

SELinux (Security Enhanced Linux) sur Debian 10 Buster

SELinux (Security Enhanced Linux) sur Debian 10 Buster
SELinux est un système d'étiquetage pour les processus et les fichiers.  L'accès des sujets étiquetés aux objets étiquetés est limité par des règles formant des politiques. Ce tutoriel est une introduction aux bases de SELinux montrant comment configurer et activer SELinux sur Debian 10 Buster et l'activer avec des informations supplémentaires sur les commandes populaires.

Avant de commencer, vous devrez apprendre les concepts suivants :

Sujets: processus ou utilisateurs.
Objets: fichiers ou systèmes de fichiers.

Type d'application : sur SELinux tous les sujets et objets ont un identifiant de type se terminant par _t. "L'application de type est la notion selon laquelle, dans un système de contrôle d'accès obligatoire, l'accès est régi par une autorisation basée sur un ensemble de règles sujet-accès-objet.

Dans SELinux, l'application des types est implémentée sur la base des étiquettes des sujets et des objets.  SELinux en lui-même n'a pas de règles qui disent /bin/bash peut exécuter /bin/ls. Au lieu de cela, il a des règles similaires à "Les processus avec l'étiquette user_t peuvent exécuter des fichiers réguliers étiquetés bin_t.» (source https://wiki.papou.org/wiki/SELinux/Type_enforcement)

Contrôle d'accès discrétionnaire (DAC) : DAC est le système de propriété et d'autorisation que nous utilisons sous Linux pour gérer l'accès à des objets tels que des fichiers ou des répertoires. Le contrôle d'accès discrétionnaire n'a rien à voir avec SELinux et constitue une couche de sécurité différente. Pour plus d'informations sur DAC, visitez Linux Permissions Explained.

Contrôle d'accès obligatoire (MAC) : est un type de contrôle d'accès qui restreint l'interaction d'accès des sujets avec les objets. Contrairement au DAC avec MAC, les utilisateurs ne peuvent pas modifier les politiques.
Les sujets et les objets ont un contexte de sécurité (attributs de sécurité) surveillé par SELinux et administré selon des politiques de sécurité élaborées par des règles à appliquer.


Contrôle d'accès basé sur les rôles (RBAC) : est un type de contrôle d'accès basé sur des rôles, il peut être combiné avec MAC et DAC. Les politiques RBAC simplifient la gestion de nombreux utilisateurs au sein d'une organisation contrairement à DAC qui peut dériver des attributions d'autorisations individuelles, cela facilite l'audit, la configuration et les mises à jour des politiques.

Mode d'application : SELinux restreint l'accès des sujets aux objets en fonction de politiques.

Mode permissif : SELinux n'enregistre que les activités illégitimes.

Les fonctionnalités de SELinux incluent (liste Wikipédia) :

La source: https://fr.Wikipédia.org/wiki/Security-Enhanced_Linux#Features

Noter: les utilisateurs sont différents sur SELinux et passwd.

Configuration de SELinux sur Debian 10 Buster

Dans mon cas, SELinux a été désactivé sur Debian 10 Buster. Garder SELinux activé est l'une des étapes de base pour assurer la sécurité d'un périphérique Linux. Pour connaître l'état de SELinux sur votre appareil, exécutez la commande :

/# statut

J'ai trouvé que SELinux était désactivé, pour l'activer, vous devez installer certains packages avant, après un mise à jour appropriée, exécutez la commande :

/# apt install selinux-basics selinux-policy-default

Si demandé, appuyez sur Oui pour continuer le processus d'installation. Cours mise à jour appropriée après avoir terminé l'installation.

Pour activer SELinux, exécutez la commande suivante :

/# selinux-activer

Comme vous pouvez le voir, SELinux a été correctement activé. Pour appliquer toutes les modifications, vous devez redémarrer votre système comme indiqué.

La commande getenforce peut être utilisée pour connaître l'état de SELinux, s'il est en mode permissif ou contraignant :

/# getenforce

Le mode permissif peut être remplacé en définissant le paramètre 1 (permissif est 0). Vous pouvez également vérifier le mode sur le fichier de configuration à l'aide de la commande moins:

/# moins /etc/selinux/config

Production:

Comme vous pouvez le voir les fichiers de configuration montrent le mode permissif. presse Q quitter.

Pour voir un contexte de sécurité de fichier ou de processus, vous pouvez utiliser l'indicateur -Z :

/# ls -Z

Le format de l'étiquette est utilisateur:rôle:type:niveau.

semanage - Outil de gestion des politiques SELinux

semanage est l'outil de gestion des politiques de SELinux. Il permet de gérer les booléens (qui permettent de modifier le processus en cours d'exécution), les rôles et niveaux d'utilisateurs, les interfaces réseau, les modules de politique et plus encore. Semanage permet de configurer les politiques SELinux sans avoir besoin de compiler les sources. Semanage permet le lien entre les utilisateurs OS et SELinux et certains contextes de sécurité des objets.

Pour plus d'informations sur semanage, visitez la page de manuel sur : https://linux.mourir.filet/homme/8/semanage

Conclusion et remarques

SELinux est un moyen supplémentaire d'administrer l'accès des processus aux ressources système telles que les fichiers, les partitions, les répertoires, etc. Il permet de gérer des privilèges massifs selon le rôle, le niveau ou le type. L'avoir activé est une mesure de sécurité indispensable et lors de son utilisation, il est important de se souvenir de sa couche de sécurité et de redémarrer le système après l'avoir activé ou désactivé (la désactivation n'est pas du tout recommandée, sauf pour des tests spécifiques). Parfois, un accès à un fichier est bloqué alors que les autorisations du système ou du système d'exploitation sont accordées car SELinux l'interdit.

J'espère que vous avez trouvé cet article sur SELinux utile comme introduction à cette solution de sécurité, continuez à suivre LinuxHint pour plus de conseils et de mises à jour sur Linux et les réseaux.

Articles Liés:

Comment afficher le compteur FPS dans les jeux Linux
Les jeux Linux ont reçu une impulsion majeure lorsque Valve a annoncé la prise en charge de Linux pour le client Steam et leurs jeux en 2012. Depuis l...
Comment télécharger et jouer à Civilization VI de Sid Meier sur Linux
Présentation du jeu Civilization 6 est une version moderne du concept classique introduit dans la série de jeux Age of Empires. L'idée était assez sim...
Comment installer et jouer à Doom sur Linux
Introduction à Doom La série Doom est née dans les années 90 après la sortie du Doom original. Ce fut un succès instantané et à partir de ce moment-là...