Étapes de durcissement Linux pour les démarreurs

La plupart des systèmes contiennent des données confidentielles qui doivent être protégées. Pour protéger ces données, nous devons sécuriser notre système Linux. Mais comment durcir correctement un système Linux? Dans cet article, nous allons couvrir cette étape par étape. Nous commençons par des mesures de sécurité physique pour empêcher les personnes non autorisées d’accéder au système en premier lieu. Ensuite, nous effectuons l’installation de la bonne manière, nous avons donc une base solide. Enfin, nous appliquerons un ensemble de mesures de sécurité communes. Une fois que nous avons terminé, votre serveur ou votre système de bureau devrait être mieux protégé. Prêts? Procédons aux premières étapes!

Table des Matières

Linux est déjà sécurisé par défaut, non ?

L’un des mythes à propos de Linux est qu’il est sécurisé, car il n’est pas sensible aux virus ou à d’autres formes de logiciels malveillants. Cela est partiellement vrai, car Linux utilise les bases du système d’exploitation UNIX d’origine. Les processus sont séparés et un utilisateur normal est limité dans ce qu’il peut faire sur le système. Pourtant, Linux n’est pas parfaitement sécurisé par défaut. L’une des raisons en est les distributions Linux qui empaquettent le noyau GNU/Linux et les logiciels associés. Ils doivent choisir entre convivialité, performances et sécurité.

Avec les choix difficiles que les distributions Linux doivent faire, vous pouvez être sûr de compromis. Ces compromis entraînent généralement un niveau de sécurité réduit. Qu’en est-il des logiciels malveillants pour Linux? C’est définitivement un mythe. La plate-forme Linux a également sa part de portes dérobées, de rootkits, de travaux et même de ransomwares. C’est l’une des raisons pour lesquelles il est important de renforcer le système, d’effectuer des audits de sécurité et de vérifier la conformité aux directives techniques.

 Image des éléments pertinents pour le durcissement, l'audit et la conformité du système Linux.

La sécurité Linux comporte de nombreux aspects, notamment le renforcement du système Linux, l’audit et la conformité.

Qu’est-ce que le durcissement du système?

Pour améliorer le niveau de sécurité d’un système, nous prenons différents types de mesures. Cela peut être la suppression d’un service système existant ou la désinstallation de certains composants logiciels.

Le durcissement du système est le processus qui consiste à faire les « bonnes » choses. L’objectif est d’améliorer le niveau de sécurité du système. Il existe de nombreux aspects pour sécuriser correctement un système. Pourtant, les bases sont similaires pour la plupart des systèmes d’exploitation. Le processus de durcissement du système pour les ordinateurs de bureau et les serveurs Linux est donc spécial.

Principes de base du durcissement du système

Si nous mettions un microscope sur le durcissement du système, nous pourrions diviser le processus en quelques principes de base. Ceux-ci incluent le principe du moindre privilège, de la segmentation et de la réduction.

Principe du moindre privilège

Le principe du moindre privilège signifie que vous donnez aux utilisateurs et aux processus le strict minimum d’autorisation pour faire leur travail. Cela revient à accorder à un visiteur l’accès à un bâtiment. Vous pourriez donner un accès complet au bâtiment, y compris toutes les zones sensibles. L’autre option consiste à autoriser uniquement votre invité à accéder à un seul étage où il doit se trouver. Le choix est facile, non?

Exemples:

  • Lorsque l’accès en lecture seule est suffisant, ne donnez pas d’autorisations d’écriture
  • N’autorisez pas le code exécutable dans les zones de mémoire marquées en tant que segments de données
  • N’exécutez pas d’applications en tant qu’utilisateur root, utilisez plutôt un compte d’utilisateur non privilégié

Segmentation

Le principe suivant est que vous divisez de plus grandes zones en plus petites. Si nous regardons à nouveau ce bâtiment, nous l’avons divisé en plusieurs étages. Chaque étage peut être divisé en différentes zones. Peut-être que votre visiteur n’est autorisé qu’à l’étage 4, dans la zone bleue. Si nous traduisons cela en sécurité Linux, ce principe s’appliquerait à l’utilisation de la mémoire. Chaque processus ne peut accéder qu’à ses propres segments de mémoire.

Réduction

Ce principe vise à supprimer quelque chose qui n’est pas strictement nécessaire au fonctionnement du système. Cela ressemble au principe du moindre privilège, mais se concentre sur la prévention de quelque chose en premier lieu. Un processus qui n’a pas à s’exécuter doit être arrêté. Similaire pour les comptes d’utilisateurs inutiles ou les données sensibles qui ne sont plus utilisées.

Étapes de durcissement du système

Aperçu des étapes de durcissement

  1. Installer des mises à jour et des correctifs de sécurité
  2. Utiliser des mots de passe forts
  3. Lier les processus à localhost
  4. Implémenter un pare-feu
  5. Garder les choses propres
  6. Configurations de sécurité
  7. Limitez l’accès
  8. Surveillez vos systèmes
  9. Créez des sauvegardes (et testez !)
  10. Effectuer un audit du système

1. Installer les mises à jour et les correctifs de sécurité

La plupart des faiblesses des systèmes sont causées par des failles logicielles. Ces failles que nous appelons vulnérabilités. Des soins appropriés pour la gestion des correctifs logiciels aident à réduire de nombreux risques associés. L’activité d’installation de mises à jour présente souvent un faible risque, en particulier lorsque vous commencez par les correctifs de sécurité. La plupart des distributions Linux ont la possibilité de limiter les paquets que vous souhaitez mettre à niveau (tous, sécurité uniquement, par paquet). Assurez-vous que vos mises à jour de sécurité sont installées dès qu’elles sont disponibles. Il va sans dire, avant de mettre en œuvre quelque chose, testez-le d’abord sur un système de test (virtuel).

Selon votre distribution Linux, il pourrait y avoir un moyen d’implémenter automatiquement des correctifs de sécurité, comme des mises à niveau sans surveillance sur Debian et Ubuntu. Cela rend la gestion des correctifs logiciels beaucoup plus facile!

2. Utilisez des mots de passe forts

La principale passerelle vers un système consiste à se connecter en tant qu’utilisateur valide avec le mot de passe associé à ce compte. Les mots de passe forts rendent plus difficile pour les outils de deviner le mot de passe et permettent aux personnes malveillantes d’entrer par la porte d’entrée. Un mot de passe fort se compose d’une variété de caractères (alphanumériques, nombres, pourcentage spécial, espace ou même caractères Unicode).

3. Lier les processus à localhost

Tous les services ne doivent pas nécessairement être disponibles via le réseau. Par exemple, lorsque vous exécutez une instance locale de MySQL sur votre serveur Web, laissez-la uniquement écouter sur un socket local ou se lier à localhost (127.0.0.1). Configurez ensuite votre application pour qu’elle se connecte via cette adresse locale, qui est généralement déjà la valeur par défaut.

4. Implémentez un pare-feu

Seul le trafic autorisé devrait, dans une situation idéale, atteindre votre système. Pour y parvenir, implémentez une solution de pare-feu comme iptables, ou les nouvelles nftables.

Lors de la création d’une stratégie pour votre pare-feu, envisagez d’utiliser une stratégie  » refuser tout, autoriser certains « . Vous refusez donc tout le trafic par défaut, puis définissez le type de trafic que vous souhaitez autoriser. Ceci est particulièrement utile pour le trafic entrant, pour empêcher le partage de services que vous n’aviez pas l’intention de partager.

Lectures utiles:

  • Différences entre iptables et nftables

5. Gardez les choses propres

Tout ce qui est installé sur un système qui n’y appartient pas ne peut qu’avoir un impact négatif sur votre machine. Cela augmentera également vos sauvegardes (et les temps de restauration). Ou ils peuvent contenir des vulnérabilités. Un système propre est souvent un système plus sain et plus sûr. Par conséquent, la minimalisation est une excellente méthode dans le processus de durcissement de Linux.

Les tâches exploitables comprennent:

  • Supprimer le paquet inutilisé
  • Nettoyer les anciens répertoires personnels et supprimer les utilisateurs

6. Configurations sécurisées

La plupart des applications disposent d’une ou plusieurs mesures de sécurité pour se protéger contre certaines formes de menaces pesant sur le logiciel ou le système. Regardez la page de manuel pour toutes les options et testez soigneusement ces options.

7. Limiter l’accès

Autoriser uniquement l’accès à la machine pour les utilisateurs autorisés. Quelqu’un a-t-il vraiment besoin d’un accès ou des méthodes alternatives sont-elles possibles pour donner à l’utilisateur ce qu’il veut?

8. Surveillez vos systèmes

La plupart des intrusions ne sont pas détectées, faute de surveillance. Mettre en œuvre une surveillance normale du système et mettre en œuvre une surveillance des événements de sécurité. Par exemple, l’utilisation du cadre d’audit Linux a augmenté les taux de détection des événements suspects.

9. Créez des sauvegardes (et testez !)

Effectuez régulièrement une sauvegarde des données système. Cela peut empêcher la perte de données. Encore plus important, testez vos sauvegardes. Avoir une sauvegarde, c’est bien, mais c’est la restauration qui compte vraiment !

Les sauvegardes peuvent être effectuées avec des outils système existants tels que tar et scp. Une autre option pour économiser la bande passante consiste à synchroniser les données avec des outils tels que rsync. Si vous préférez utiliser un programme de sauvegarde, pensez à Amanda ou Bacula.

10. Effectuer un audit système

 Capture d'écran Lynis (outil d'audit Linux/Unix)

Capture d’écran d’un audit de sécurité de serveur Linux effectué avec Lynis.

Vous ne pouvez pas protéger correctement un système si vous ne le mesurez pas.

Utilisez un outil de sécurité comme Lynis pour effectuer un audit régulier de votre système. Tous les résultats sont affichés à l’écran et également stockés dans un fichier de données pour une analyse plus approfondie. Avec un fichier journal complet, il permet d’utiliser toutes les données disponibles et de planifier les prochaines actions pour renforcer davantage le système.