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