Aller au contenu

Application des recommandations de l'ANSSI

1. Objectif du cours

Savoir appliquer concrètement certaines recommandations de l'ANSSI sur une machine Linux Debian 11 : mises à jour, gestion du compte root, désactivation de la connexion root via SSH, notions sur TELNET et conception d'une DMZ.

2. Notions et définitions essentielles

  • Root : compte super‑utilisateur avec privilèges absolus sur le système.
  • su : commande permettant de changer d'utilisateur sans se déconnecter.
  • sudo : exécution ponctuelle de commandes avec privilèges élevés, contrôlée par /etc/sudoers.
  • TELNET : protocole client‑serveur TCP (port 23) sans chiffrement ; en texte clair.
  • DMZ (Demilitarized Zone) : zone réseau isolée contenant les serveurs accessibles depuis l'extérieur, avec accès contrôlé vers/depuis le reste du réseau.

3. Fonctionnement et principes

  • Mises à jour : les paquets et correctifs fournis par les dépôts doivent être appliqués régulièrement pour corriger failles et bogues ; les mises à jour peuvent concerner uniquement les paquets ou l'intégralité de la distribution.
  • Gestion du compte root : root permet toute configuration bas niveau ; on évite les connexions directes en root et on privilégie des mécanismes contrôlés (su/sudo). Le mot de passe root doit être sécurisé et ne pas être perdu.
  • Accès distant root via SSH : la configuration du démon SSH (sshd) détermine si root peut se connecter à distance. Pour réduire le risque d'élévation totale en cas de compromission, il est recommandé de désactiver cette possibilité.
  • TELNET vs SSH : TELNET transmet identifiants en clair ; il est déconseillé pour les connexions distantes, à remplacer par des solutions chiffrées (SSH/SSL‑Telnet).
  • DMZ : sépare les serveurs exposés au public du réseau interne afin de limiter les impacts d'une compromission ; n'autorise que les protocoles nécessaires et bloque les connexions de la DMZ vers le réseau local.

4. Commandes et manipulations

Mises à jour (gestion des paquets et de la distribution) : - sudo apt update && sudo apt upgrade — met à jour la liste des paquets et installe les correctifs disponibles. - sudo apt update && sudo apt upgrade && sudo apt dist-upgrade — inclut les changements liés à la distribution. - sudo do-release-upgrade — lance le passage à la dernière version de la distribution.

Changer le mot de passe root : - su — passer en session root (demande le mot de passe root). - passwd root — modifier le mot de passe du compte root (invite à saisir et confirmer le nouveau mot de passe).

Désactiver la connexion root via SSH : - Éditer /etc/ssh/sshd_config — repérer la directive PermitRootLogin (peut être commentée par #). - Décommenter et définir PermitRootLogin no — rend la directive active et interdit la connexion SSH directe de root.

Fichiers distincts : - /etc/ssh/ssh_config — configuration des connexions SSH sortantes. - /etc/ssh/sshd_config — configuration du serveur SSH et des connexions entrantes.

Si le cours ne présentait pas d'autres commandes, seules celles ci‑dessus sont à retenir.

5. Sécurité et bonnes pratiques

  • Mettre à jour régulièrement la machine (paquets et distribution) pour corriger failles et bogues.
  • Ne pas utiliser le compte root pour des sessions interactives courantes ; préférer sudo ou su de façon contrôlée.
  • Protéger le mot de passe root et éviter de le perdre (perte = perte du contrôle total de la machine).
  • Désactiver l'accès root distant via SSH pour réduire le risque en cas de force brute ou compromission.
  • Ne pas utiliser TELNET pour les connexions distantes ; préférer SSH ou SSL‑Telnet (solutions chiffrées).
  • Concevoir une DMZ pour isoler les serveurs accessibles depuis Internet et n'autoriser que les protocoles nécessaires.
  • Renforcer la protection des serveurs (journaux, analyse d'activité, détection d'intrusion, sauvegardes).

6. Points essentiels à retenir pour le TSSR

  • Les mises à jour sont indispensables : elles corrigent failles et ajoutent améliorations.
  • Différence conceptuelle : root = compte, su = changer d'utilisateur, sudo = exécuter avec privilèges contrôlés.
  • Protéger le mot de passe root ; sa perte compromet totalement l'accès.
  • Interdire la connexion root à distance réduit fortement la surface d'attaque.
  • TELNET est non‑chiffré et dangereux pour l'authentification à distance.
  • Remplacer TELNET par des solutions chiffrées (SSH/SSL‑Telnet).
  • Une DMZ isole les serveurs exposés et limite les possibilités d'attaque sur le réseau interne.
  • Les serveurs en DMZ nécessitent des mesures accrues : journaux, IDS, sauvegardes.
  • Séparer configurations client (ssh_config) et serveur (sshd_config) pour bien cibler les modifications.
  • N'exposez depuis la DMZ que les protocoles/services nécessaires (http(s), SMTP, IMAP/POP3, etc.).

7. Tableau récapitulatif

Élément But principal Risque si mal configuré Mesure recommandée
Root Contrôle total du système Compromission totale Limiter usage, protéger mot de passe
su vs sudo Obtention de privilèges Usage non tracé / abus Préférer sudo (contrôlé)
SSH (sshd) Accès distant sécurisé Root autorisé → cible privilégiée Désactiver root distant
TELNET Accès distant non chiffré Interception d'identifiants Ne pas l'utiliser, remplacer par SSH
DMZ Isolation des serveurs exposés Chemin d'attaque vers le LAN Isoler, restreindre protocoles, ajouter surveillance

8. Vérifications pratiques

  • Vérifier dans /etc/ssh/sshd_config que la directive PermitRootLogin est présente, non commentée et réglée sur no.
  • Confirmer que /etc/ssh/ssh_config et /etc/ssh/sshd_config sont bien distincts et modifiés au bon endroit (client vs serveur).
  • Aucune autre vérification pratique détaillée n'est explicitement abordée dans ce cours.

9. Flashcards Anki

Qu'est‑ce que root :: Le compte super‑utilisateur avec privilèges absolus.
Que fait la commande su :: Permet de changer d'utilisateur sans se déconnecter.
À quoi sert sudo :: Exécuter des commandes avec privilèges élevés contrôlés par /etc/sudoers.
Quel fichier configure les connexions SSH entrantes :: /etc/ssh/sshd_config.
Quelle directive interdit la connexion SSH directe de root :: PermitRootLogin no.
Pourquoi éviter TELNET :: Il transmet les données en clair (pas de chiffrement).
Qu'est‑ce qu'une DMZ :: Réseau isolé contenant les serveurs accessibles depuis l'extérieur.
Que faut‑il limiter dans une DMZ :: Les protocoles autorisés vers les serveurs (seulement ceux nécessaires).
Quel risque si on perd le mot de passe root :: Perte du contrôle total de la machine.
Commande pour installer la dernière version de la distribution :: sudo do-release-upgrade