Cours B2-14 - Administrer un serveur Debian 13
Cours · Fiche de cours

B2-14 - Administrer un serveur Debian 13

B2-14 Administrer un serveur Debian 13

🎓 SIO1 · semestre 1 ⏱️ 8 h (cours + TP) 🎯 Bloc 2 – SISR Se repérer dans un serveur Debian 13, installer des logiciels, gérer les comptes et les droits, le stockage avec LVM, les services avec systemd, le réseau et l'accès SSH, puis dépanner avec méthode.

🎯 Objectifs

  • Se repérer dans l'arborescence d'un serveur Debian et dans ses fichiers de configuration.
  • Installer, mettre à jour et retirer des logiciels avec apt.
  • Créer des comptes et des groupes, donner les droits d'administration avec sudo.
  • Lire et régler les droits d'accès (chmod, chown, umask).
  • Créer, monter et agrandir un volume avec LVM.
  • Piloter les services avec systemctl et lire les journaux avec journalctl.
  • Configurer une adresse IP fixe, la résolution de noms et l'accès SSH par clé.

📋 Prérequis

🧭 Référentiel

  • B2.2 Installer, tester et déployer une solution d'infrastructure : système d'exploitation serveur.
  • B2.3 Exploiter, dépanner et superviser : services, journaux, incidents.
  • B3 Sécuriser les accès : comptes, droits, SSH.
Test express des prérequis 3 questions · 2 minutes · conseillé avant de commencer

1. Quel est le rôle d'un serveur dans une entreprise ?

Un serveur rend des services aux clients du réseau. Relier les réseaux, c'est le rôle du routeur. À revoir : B2-01 · Architecture.

2. Le serveur 172.16.50.11/24 doit joindre Internet. Quelle passerelle lui donner dans le plan de Brocéliande ?

La passerelle est toujours dans le réseau du serveur, en .254 chez Brocéliande. 172.16.50.10, c'est SRV-01 (DNS, DHCP). À revoir : B2-02 · Adressage IPv4.

3. Dans un chemin comme /etc/ssh/sshd_config, que représente le premier / ?

Sous Linux, il n'y a pas de lettre de lecteur (C:, D:) : tout part d'une racine unique, /. Un chemin qui commence par / est un chemin absolu.
SRV-LINUX tech@PC:~$ ssh admin@ 172.16.50.11 admin@srv-linux:~$ sudo apt update▋ SSH POSTE DU TECHNICIEN BAIE · VLAN 50 pas d'écran, pas de souris : tout en ligne de commande

Brocéliande Logistique (entreprise fictive, 60 salariés) veut un serveur de fichiers interne pour remplacer les clés USB qui circulent entre les bureaux et l'entrepôt. Le responsable informatique a choisi Debian 13 : gratuit, très stable, maintenu cinq ans, et sans interface graphique pour économiser les ressources et réduire la surface d'attaque.

La machine virtuelle SRV-LINUX vient d'être installée dans le VLAN des serveurs, avec l'adresse prévue 172.16.50.11. Il te demande de la rendre exploitable : comptes des techniciens, droits sur les dossiers partagés, un volume de données agrandissable, une adresse fixe, un accès SSH sûr, et une méthode pour diagnostiquer ce qui ne va pas.

Le coursSe repérer, installer, gérer les comptes et les droits, le stockage, les services, le réseau et SSH, puis dépanner un serveur Debian.

1. Debian, un système pour serveurs

Debian est une distribution Linux communautaire, née en 1993. Elle sert de base à Ubuntu et à Proxmox VE, et c'est l'un des systèmes les plus utilisés sur les serveurs. Chaque version porte un nom de personnage de Toy Story : Debian 13 s'appelle Trixie (août 2025), Debian 12 s'appelait Bookworm.

CaractéristiqueDebian 13 « Trixie »Pourquoi c'est important
BranchestableLes logiciels sont figés et testés : on ne reçoit que des correctifs de sécurité, rien qui casse le serveur.
Durée de suivi3 ans + 2 ans (LTS)Un serveur installé aujourd'hui reste maintenu jusqu'en 2030.
NoyauLinux 6.12 (LTS)Le cœur du système : pilotes, mémoire, processus.
PaquetsPlus de 60 000, outil aptPresque tout s'installe en une commande, depuis des dépôts signés.
InterfaceAucune par défaut sur un serveurMoins de mémoire, moins de failles : on administre en ligne de commande, souvent à distance.

Shell (interpréteur de commandes) : programme qui lit ce que tu tapes, l'exécute et affiche le résultat. Sur Debian, c'est Bash. L'invite te dit qui tu es et où tu te trouves : admin@srv-linux:~$ signifie « utilisateur admin, sur la machine srv-linux, dans son dossier personnel (~), compte ordinaire ($) ». Avec le compte root, le $ devient #.

1.1 La forme d'une commande

$ sudo ls -l -a /etc/ssh sudoen administrateur commandece qu'on fait optionscomment argumentsur quoi Ici : lister en détail (-l), fichiers cachés compris (-a), le dossier /etc/ssh
Les options modifient le comportement, les arguments désignent ce sur quoi on agit. -l -a s'écrit aussi -la.

Tab complète un nom de commande ou de fichier (deux appuis : liste des possibilités) ; ↑ rappelle les commandes précédentes ; Ctrl+C interrompt une commande ; man ls ou ls --help affiche l'aide. Linux distingue majuscules et minuscules : Rapport.txt et rapport.txt sont deux fichiers différents.

2. Se repérer dans l'arborescence

Sous Linux, tout est rangé dans un seul arbre qui part de la racine /. Les disques, clés USB et partages réseau ne reçoivent pas de lettre : ils sont montés dans un dossier de l'arbre. La place de chaque dossier est fixée par une norme, la FHS : sur n'importe quelle distribution, la configuration est dans /etc et les journaux dans /var/log.

Clique sur un dossier pour savoir ce qu'il contient et quand tu y iras.

/ /etc /var /home /root /usr /srv /dev /tmp /etc/network/interfaces/etc/ssh/sshd_config/etc/passwd · /etc/fstab /var/log/apt/history.log/var/lib/dpkg/var/www/html /home/admin/.bashrc/home/admin/.ssh/ /root/.bash_history /usr/bin/ssh/usr/sbin/sshd /srv/partages/compta/srv/partages/entrepot /dev/sda · /dev/sdb/dev/vg_data/lv_partages /tmp/…

Choisis un dossier : des exemples de fichiers apparaissent en dessous.

Un seul arbre, une place pour chaque chose : la configuration dans /etc, ce qui change dans /var, les utilisateurs dans /home.

2.1 Se déplacer et manipuler les fichiers

CommandeRôleExemple
pwdAfficher le dossier courantpwd → /home/admin
cdChanger de dossiercd /etc · cd .. (dossier parent) · cd (retour à ~)
lsListerls -la /srv
mkdirCréer un dossiermkdir -p /srv/partages/compta (crée aussi les parents)
cp · mvCopier · déplacer ou renommercp -a /etc/ssh/sshd_config ~/sshd_config.bak
rmSupprimer (sans corbeille)rm fichier · rm -r dossier
cat · lessAfficher un fichier (court · long, page par page)less /etc/passwd (q pour quitter)
nanoModifier un fichier textesudo nano /etc/hosts (Ctrl+O enregistrer, Ctrl+X quitter)
grepChercher un textegrep -i port /etc/ssh/sshd_config

rm ne passe pas par une corbeille : ce qui est supprimé est perdu. Avant de modifier un fichier de configuration, fais toujours une copie de sauvegarde (cp -a fichier fichier.bak) : en cas d'erreur, tu reviens en arrière en une commande.

3. Installer des logiciels avec apt

Sous Debian, on ne télécharge pas de programme d'installation sur un site web : on installe des paquets depuis des dépôts officiels, des serveurs qui proposent des milliers de logiciels testés et signés. L'outil apt trouve le paquet, télécharge aussi ses dépendances, vérifie les signatures et installe le tout.

Dépôt Debian deb.debian.org index des paquets samba_4.22.deb libtalloc2.deb … signature 🔑 SRV-LINUX index liste à jour apt update samba → 22 dépendances calcul fait par apt .deb .deb apt install samba · signatures vérifiées installé : /usr, /etc service démarré ✓ noté dans history.log
Toujours apt update avant d'installer : sans index à jour, apt cherche des versions qui n'existent plus.
CommandeRôle
sudo apt updateTélécharger la liste à jour des paquets (ne modifie rien sur le système)
sudo apt upgradeInstaller toutes les mises à jour disponibles (correctifs de sécurité)
apt search samba · apt show sambaChercher un paquet · afficher sa description, sa version, ses dépendances
sudo apt install sambaInstaller un paquet et ses dépendances
sudo apt remove samba · purgeRetirer un paquet · le retirer avec ses fichiers de configuration
sudo apt autoremoveSupprimer les dépendances devenues inutiles
dpkg -l | grep sambaVérifier si un paquet est installé, et en quelle version
Fichier /etc/apt/sources.list.d/debian.sourcesformat deb822 de Debian 13
Types: deb
URIs: http://deb.debian.org/debian
Suites: trixie trixie-updates
Components: main non-free-firmware
Signed-By: /usr/share/keyrings/debian-archive-keyring.gpg

Types: deb
URIs: http://security.debian.org/debian-security
Suites: trixie-security
Components: main non-free-firmware
Signed-By: /usr/share/keyrings/debian-archive-keyring.gpg
  • URIsAdresse du dépôt. security.debian.org publie les correctifs de sécurité : il doit toujours être présent.
  • SuitesLa version visée : trixie (Debian 13), ses mises à jour et sa branche sécurité. Ne mélange jamais deux versions.
  • Componentsmain = logiciels libres ; non-free-firmware = micrologiciels de cartes réseau ou de processeurs.
  • Signed-ByClé qui sert à vérifier que les paquets viennent bien de Debian.

Un serveur non mis à jour est la première porte d'entrée des attaquants. Programme sudo apt update && sudo apt upgrade au moins une fois par semaine (ou installe unattended-upgrades pour les correctifs de sécurité automatiques), et n'ajoute jamais un dépôt inconnu trouvé sur un forum.

4. Comptes, groupes et sudo

Linux est multi-utilisateur : chaque personne et chaque service a son compte, avec un numéro unique (UID). Les comptes sont rangés dans des groupes, ce qui permet de donner des droits à tout un service d'un seul coup. Le compte root (UID 0) a tous les pouvoirs : on ne s'en sert pas au quotidien.

4.1 Une ligne de /etc/passwd

lmartin : x : 1001 : 1001 : Lucie Martin : /home/lmartin : /bin/bash ① identifiant② mot de passe③ UID ④ GID principal⑤ nom complet⑥ dossier personnel⑦ shell Le « x » renvoie à /etc/shadow, lisible par root seul, où le mot de passe est stocké chiffré (haché).
Sept champs séparés par « : » : chaque compte du système tient sur une ligne.

4.2 Gérer comptes et groupes

Debian 13 SRV-LINUXcomptes des techniciens et du service compta
$ sudo adduser lmartin # crée le compte, son groupe, son dossier /home/lmartin et demande un mot de passe
$ sudo addgroup compta # crée un groupe
$ sudo adduser lmartin compta # ajoute lmartin au groupe compta (ou : usermod -aG compta lmartin)
$ id lmartin # uid=1001(lmartin) gid=1001(lmartin) groupes=1001(lmartin),1002(compta)
$ sudo passwd lmartin # change son mot de passe
$ sudo usermod -L lmartin # verrouille le compte (départ, absence longue)
$ sudo deluser --remove-home ancien # supprime un compte et son dossier

Avec usermod -G compta lmartin (sans -a), lmartin est retiré de tous ses autres groupes, sudo compris. Écris toujours usermod -aG (a = append, ajouter), ou utilise adduser compte groupe. Un changement de groupe n'est pris en compte qu'à la prochaine connexion.

4.3 sudo : administrer sans être root

sudo exécute une commande avec les droits de root, après avoir redemandé le mot de passe de l'utilisateur. Sur Debian, les membres du groupe sudo y ont droit. Chaque utilisation est tracée dans le journal : on sait qui a fait quoi, ce qui est impossible si tout le monde se connecte en root.

Debian 13 donner les droits d'administrationà faire une fois, en root
# adduser admin sudo # admin pourra utiliser sudo (après reconnexion)
$ sudo -l # que suis-je autorisé à faire ?
$ sudo journalctl _COMM=sudo # qui a utilisé sudo, quand, pour quelle commande

Si tu as laissé le mot de passe root vide à l'installation, Debian a déjà mis ton premier compte dans le groupe sudo. Si tu as donné un mot de passe root, il faut l'ajouter toi-même : su - (mot de passe root), puis adduser admin sudo.

5. Les droits d'accès

Chaque fichier et chaque dossier appartient à un propriétaire et à un groupe. Pour trois catégories de personnes (le propriétaire u, le groupe g, les autres o), trois droits sont accordés ou non : r lire, w écrire, x exécuter (pour un dossier : y entrer).

LOCAL COMPTA u · propriétairerwxtout g · service comptar-xentrer, lire o · tous les autres---porte fermée ✓ ✗ le badge présenté décide de ce qu'on peut faire

Pour bien comprendre : les badges d'un local

Un dossier, c'est un local fermé. Le système regarde un seul badge pour chaque personne qui se présente, dans cet ordre : est-elle le propriétaire ? Sinon, est-elle dans le groupe ? Sinon, elle fait partie des autres.

Le badge « groupe compta » permet d'entrer et de consulter les classeurs, pas de les modifier. Pour les visiteurs, la porte reste fermée.

Pour un dossier, le droit x est la clé de la porte : sans lui, impossible d'y entrer, même avec le droit de lecture.

5.1 Lire les droits

drwxr-x--- 2lmartincompta4096 oct. 18 10:12compta/ typed = dossier ugo propriétaire groupe 750 octal : r = 4, w = 2, x = 1 → rwx = 7 · r-x = 5 · --- = 0 → chmod 750
Les dix premiers caractères de ls -l : le type, puis trois blocs de droits (u, g, o).

5.2 Modifier les droits et le propriétaire

CommandeEffet
sudo chown lmartin:compta /srv/partages/comptaPropriétaire lmartin, groupe compta
sudo chmod 770 /srv/partages/comptau et g : tout ; autres : rien
chmod g+w rapport.odsNotation symbolique : ajouter l'écriture au groupe
chmod o-r rapport.odsRetirer la lecture aux autres
sudo chmod 2770 /srv/partages/comptaLe 2 (setgid) : les fichiers créés dedans prennent le groupe compta
umask → 0022Droits retirés par défaut à la création : fichier 644 (rw-r--r--), dossier 755
OctalSymboliqueUsage typique
644rw-r--r--Fichier lisible par tous, modifiable par son propriétaire
600rw-------Fichier secret : clé SSH privée, mot de passe
755rwxr-xr-xDossier ou script accessible à tous en lecture
770rwxrwx---Dossier partagé d'un service

Le principe du moindre privilège : chacun n'a que les droits dont il a besoin. Jamais de chmod 777 « pour que ça marche » : tout le monde pourrait modifier ou effacer le contenu. Si un accès est refusé, cherche qui doit accéder et ajoute-le au bon groupe.

Entraîne-toi : le dossier /srv/partages/entrepot doit appartenir à pdurand et au groupe entrepot, avec tous les droits pour eux et aucun pour les autres. Écris les commandes, puis vérifie avec ✓.

$
$
$
$

6. Disques, montage et LVM

Un disque ajouté au serveur apparaît dans /dev (/dev/sdb). Pour l'utiliser, il faut y créer un système de fichiers (ext4 sous Debian), puis le monter dans un dossier de l'arbre. La commande lsblk montre les disques et leurs partitions, df -h l'espace occupé de chaque volume monté.

Problème : une partition classique a une taille fixe. Quand /srv/partages est plein, l'agrandir oblige souvent à tout déplacer. LVM ajoute une couche souple entre les disques et les systèmes de fichiers.

disquesPVVGLVdossier /dev/sdb · 20 Go/dev/sdc · 20 Go PV /dev/sdb PV /dev/sdc VG vg_data · 40 Go LV lv_partages · 25 Go libre · 15 Go /srv/partages (ext4) libre · 5 Go +10 Go +10 Go à chaud lvextend -r -L +10G
Disques → volumes physiques → groupe de volumes (réservoir) → volumes logiques → système de fichiers monté.
Debian 13 SRV-LINUX · créer le volume des partagespaquet lvm2
$ lsblk # repérer les nouveaux disques sdb et sdc (sans partition ni point de montage)
$ sudo pvcreate /dev/sdb /dev/sdc
$ sudo vgcreate vg_data /dev/sdb /dev/sdc
$ sudo lvcreate -L 25G -n lv_partages vg_data
$ sudo mkfs.ext4 /dev/vg_data/lv_partages
$ sudo mkdir -p /srv/partages
$ sudo mount /dev/vg_data/lv_partages /srv/partages # montage immédiat, perdu au redémarrage
$ sudo pvs ; sudo vgs ; sudo lvs # résumé des trois niveaux
$ sudo lvextend -r -L +10G /dev/vg_data/lv_partages # -r agrandit aussi le système de fichiers

Pour que le montage soit refait à chaque démarrage, on l'ajoute dans /etc/fstab :

Fichier /etc/fstab · une ligne par montage
# périphérique                   point de montage  type  options   dump  ordre
/dev/vg_data/lv_partages          /srv/partages     ext4  defaults  0     2
  • PériphériqueLe volume à monter. Pour une partition classique, on préfère son UUID=… (donné par blkid), qui ne change pas si l'ordre des disques change.
  • Point de montageDossier existant où le contenu apparaîtra.
  • Type et optionsext4, defaults (lecture-écriture, montage au démarrage).
  • dump et ordre0 = pas de sauvegarde par dump ; 2 = vérification du disque après la racine (1).

Une faute dans /etc/fstab peut empêcher le serveur de démarrer : systemd attend le volume 90 secondes, puis bascule en mode de secours. Pour un volume de données, l'option defaults,nofail laisse le serveur démarrer même si le volume manque. Après chaque modification, teste avant de redémarrer : sudo mount -a (monte tout ce qui est déclaré) puis findmnt --verify. Aucun message d'erreur : tu peux redémarrer.

7. Les services avec systemd et les journaux

Un service (ou démon) est un programme qui tourne en arrière-plan : ssh attend les connexions, cron lance les tâches planifiées, smbd sert les partages. Sur Debian, c'est systemd qui les démarre, les surveille et collecte leurs messages dans le journal.

noyau Linuxdémarrage systemdPID 1 · chef d'orchestre ssh.service ● actif cron.service ● actif smbd.service ● actif apache2 ✗ échec journaldle journaljournalctl
systemd lance chaque service au démarrage et le relance s'il plante ; tous les messages arrivent dans le journal.
CommandeRôle
systemctl status sshÉtat du service, PID, dernières lignes du journal
sudo systemctl start · stop · restart sshDémarrer, arrêter, redémarrer maintenant
sudo systemctl reload sshRelire la configuration sans couper les connexions
sudo systemctl enable --now sshDémarrer au prochain démarrage (enable) et tout de suite (--now)
systemctl --failedLister les services en échec
sudo journalctl -u ssh -n 30Les 30 dernières lignes du journal du service ssh
sudo journalctl -fSuivre le journal en direct (Ctrl+C pour sortir)
sudo journalctl -p err -bSeulement les erreurs, depuis le dernier démarrage
Debian 13 lire l'état d'un servicesystemctl status ssh
● ssh.service - OpenBSD Secure Shell server
     Loaded: loaded (/usr/lib/systemd/system/ssh.service; enabled; preset: enabled)
     Active: active (running) since Sat 2026-10-18 09:12:04 CEST; 2h 3min ago
   Main PID: 612 (sshd)
oct. 18 10:31:22 srv-linux sshd-session[1408]: Accepted publickey for admin from 172.16.99.20
  • Loaded … enabledLe service est connu et sera démarré automatiquement au démarrage (disabled sinon).
  • Active: active (running)Il tourne en ce moment. inactive (dead) = arrêté ; failed = il a planté : lis les lignes du journal en dessous.
  • Main PIDNuméro du processus principal, utile avec ps ou kill.

Depuis Debian 12, rsyslog n'est plus installé par défaut : le fichier /var/log/syslog n'existe plus et tout passe par journalctl. Certains logiciels écrivent encore leurs propres fichiers dans /var/log (/var/log/apt/, /var/log/apache2/). La centralisation des journaux est l'objet de la fiche B2-29.

8. Configurer le réseau

Un serveur doit avoir une adresse fixe, notée dans le plan d'adressage : les clients doivent toujours le trouver au même endroit. Sur un serveur Debian 13, l'interface réseau se configure dans /etc/network/interfaces. Son nom dépend du matériel : ens18 sur une VM Proxmox, enp0s3 sous VirtualBox (ip -br link pour le connaître).

VLAN 50 · SERVEURS · 172.16.50.0/24 SRV-LINUX.11 /24 SRV-01.10 · AD, DNS, DHCP R1 · .254 Internet dns-nameservers 172.16.50.10 gateway 172.16.50.254
Trois informations suffisent : l'adresse avec son masque, la passerelle pour sortir du réseau, le serveur DNS pour les noms.
Fichier /etc/network/interfacesSRV-LINUX, adresse fixe
auto lo
iface lo inet loopback

auto ens18
iface ens18 inet static
    address 172.16.50.11/24
    gateway 172.16.50.254
    dns-nameservers 172.16.50.10
    dns-search broceliande.lan
  • auto ens18Activer l'interface au démarrage. Le nom doit être exactement celui donné par ip -br link.
  • inet static / addressAdresse fixe en notation CIDR. Pour une adresse obtenue par DHCP : iface ens18 inet dhcp, sans les lignes suivantes.
  • gatewayPasserelle : obligatoirement dans le même réseau que l'adresse.
  • dns-nameservers / dns-searchServeur DNS et domaine ajouté aux noms courts (paquet resolvconf) ; sinon, écrire nameserver 172.16.50.10 dans /etc/resolv.conf.
Debian 13 appliquer et vérifier
$ sudo systemctl restart networking # ou : sudo ifdown ens18 ; sudo ifup ens18 (attention en SSH !)
$ ip -br a # ens18 UP 172.16.50.11/24
$ ip route # default via 172.16.50.254 dev ens18
$ ping -c 3 172.16.50.254 # la passerelle répond ?
$ ping -c 3 deb.debian.org # la résolution DNS et Internet fonctionnent ?
$ sudo hostnamectl set-hostname srv-linux # nom de la machine (penser aussi à /etc/hosts)
$ sudo ss -tlnp # quels services écoutent, sur quel port TCP ?

9. Administrer à distance avec SSH

SSH (Secure Shell, port TCP 22) ouvre un terminal sur une machine distante à travers une connexion chiffrée. C'est ainsi que l'on administre les serveurs Linux, depuis son poste ou depuis le réseau de gestion. Le paquet openssh-server fournit le service ; le client ssh existe aussi sous Windows (PowerShell).

Windows PowerShell · poste du technicien
PS> ssh admin@172.16.50.11 # première connexion : vérifier puis accepter l'empreinte du serveur (yes)
PS> scp .\rapport.txt admin@172.16.50.11:/tmp/ # copier un fichier vers le serveur

9.1 S'authentifier par clé plutôt que par mot de passe

poste du technicien SRV-LINUX privée publique ssh-keygen -t ed25519 clé publique ~/.ssh/authorized_keys ssh-copy-id admin@172.16.50.11 défi 🔒 réponse ✓ session ouverte
La clé privée reste sur le poste ; seul un défi et sa réponse circulent : rien à voler sur le réseau.
Fichier /etc/ssh/sshd_config.d/durcissement.confaprès avoir testé la connexion par clé
PermitRootLogin no
PasswordAuthentication no
AllowGroups sudo

Avant de couper les mots de passe, garde une session ouverte et teste la connexion par clé dans une seconde fenêtre : en cas d'erreur, tu peux encore corriger. Puis sudo sshd -t (vérifie la syntaxe) et sudo systemctl reload ssh. Ces règles reprennent les recommandations de l'ANSSI : pas de connexion directe en root, authentification par clé, accès limité à un groupe.

10. Dépanner un serveur Debian

Face à un problème, on ne modifie rien au hasard : on observe, on lit le message d'erreur, on consulte le journal, puis on corrige une seule chose à la fois et on vérifie. Quatre questions couvrent la plupart des pannes.

Un service du serveur ne répond plus Réponds aux questions dans l'ordre

Le serveur répond-il au ping depuis le poste ?ping 172.16.50.11

Le service est-il actif ?systemctl status smbd affiche-t-il active (running) ?

Le service écoute-t-il sur son port ?sudo ss -tlnp montre-t-il le port attendu (445 pour Samba, 22 pour SSH) ?

Reste-t-il de la place sur les volumes ?df -h : aucun volume à 100 % ?

Problème réseau : sur le serveur (console Proxmox), vérifie ip -br a (interface UP, bonne adresse) et ip route (passerelle), puis le câble ou le VLAN de la VM.

Lis la cause : sudo journalctl -u smbd -n 50. Le plus souvent, une erreur de syntaxe dans le fichier de configuration, signalée avec son numéro de ligne. Corrige, puis sudo systemctl restart smbd.

Le service tourne mais n'écoute pas où on l'attend : vérifie le port et l'adresse d'écoute dans sa configuration, puis un éventuel pare-feu (sudo nft list ruleset).

Disque plein : trouve ce qui grossit (sudo du -sh /var/* | sort -h), libère de la place (sudo journalctl --vacuum-size=200M, sudo apt clean) ou agrandis le volume LVM.

Le serveur et le service semblent sains : le problème est sans doute côté client ou dans les droits (compte, groupe, ls -l du dossier). Lis le journal pendant que l'utilisateur réessaie : sudo journalctl -f.

10.1 Messages fréquents

Message ou symptômeCause probableCorrection
Permission deniedDroits insuffisants sur le fichier ou le dossierls -l, puis sudo, chown ou ajout au bon groupe
command not foundPaquet non installé, faute de frappe, ou commande d'administration hors du PATHapt search ; utiliser sudo pour /usr/sbin
admin is not in the sudoers fileCompte absent du groupe sudoEn root : adduser admin sudo, puis se reconnecter
No space left on deviceVolume plein (souvent /var)df -h, du -sh, nettoyage ou lvextend -r
Temporary failure resolving 'deb.debian.org'Pas de DNS (ou pas de passerelle)cat /etc/resolv.conf, ip route, ping 172.16.50.254
Service en failedErreur dans sa configurationjournalctl -u service, outil de test (sshd -t, testparm)

10.2 Entraîne-toi : les tickets du support

Tu es de permanence au support de Brocéliande Logistique. Six tickets arrivent les uns après les autres : lis le message, observe le relevé, puis choisis la cause.

File d'attente du support6 tickets · un à la fois · l'explication s'affiche après ta réponse
Ticket n° 1De : comptabilitéPriorité haute
« Lucie Martin, arrivée hier à la compta, n'arrive pas à ouvrir le dossier partagé du service. Ses collègues y accèdent normalement. »
Debian 13 relevé du technicien
$ ls -ld /srv/partages/compta
drwxrwx--- 5 root compta 4096 oct. 17 16:02 /srv/partages/compta
$ id lmartin
uid=1001(lmartin) gid=1001(lmartin) groupes=1001(lmartin)

Quelle est la cause ?

Cause : le groupe compta a rwx, mais id montre que lmartin n'en fait pas partie. Correction : sudo adduser lmartin compta, puis elle se déconnecte et se reconnecte pour que son nouveau groupe soit pris en compte.

Ticket n° 2Alerte de la supervisionPriorité haute
« Les sauvegardes de cette nuit ont échoué et plus personne ne peut enregistrer de fichier sur le serveur. »
Debian 13 relevé du technicien
$ df -h
Sys. de fichiers                  Taille Utilisé Dispo Uti% Monté sur
/dev/sda1                            19G    7,2G   11G  40% /
/dev/mapper/vg_data-lv_partages      25G     25G     0 100% /srv/partages

Que faut-il faire ?

Cause : le volume des partages est plein (100 %). La racine, elle, a de la place : /tmp n'y changera rien. Correction : sudo vgs pour voir l'espace libre du groupe vg_data, puis sudo lvextend -r -L +10G /dev/vg_data/lv_partages, sans arrêter le serveur. Ensuite, cherche ce qui a grossi.

Ticket n° 3De : technicien stagiairePriorité moyenne
« J'ai voulu installer htop mais apt refuse. »
Debian 13 message obtenu
$ apt install htop
Error: Could not open lock file /var/lib/dpkg/lock-frontend - open (13: Permission denied)
Error: Unable to acquire the dpkg frontend lock, are you root?

Quelle est la cause ?

Cause : le message le dit lui-même : « are you root? ». Installer un paquet modifie le système. Correction : sudo apt install htop (le stagiaire doit être dans le groupe sudo). Lire le message d'erreur jusqu'au bout fait gagner beaucoup de temps.

Ticket n° 4De : technicien réseauPriorité haute
« Depuis que j'ai modifié la configuration SSH ce matin, plus personne ne peut se connecter au serveur, même avec une clé. »
Debian 13 console Proxmox de la VM
$ systemctl status ssh
× ssh.service - OpenBSD Secure Shell server
     Active: failed (Result: exit-code)
$ sudo sshd -t
/etc/ssh/sshd_config.d/durcissement.conf: line 2: Bad configuration option: PasswordAuthentification
/etc/ssh/sshd_config.d/durcissement.conf: terminating, 1 bad configuration options

Quelle est la cause ?

Cause : l'option s'écrit PasswordAuthentication (en anglais) : le service refuse de démarrer. Correction depuis la console de la VM : corriger la ligne 2, sudo sshd -t (aucun message = syntaxe correcte), puis sudo systemctl restart ssh. Leçon : toujours tester avec sshd -t avant de recharger, en gardant une session ouverte.

Ticket n° 5De : responsable informatiquePriorité moyenne
« Le serveur répond au ping par son adresse IP, mais les mises à jour échouent depuis le changement de configuration réseau. »
Debian 13 relevé du technicien
$ sudo apt update
Ign:1 http://deb.debian.org/debian trixie InRelease
Err:1 http://deb.debian.org/debian trixie InRelease
  Temporary failure resolving 'deb.debian.org'
$ cat /etc/resolv.conf
$ ping -c1 203.0.113.1
1 packets transmitted, 1 received

Quelle est la cause ?

Cause : une adresse sur Internet répond, donc la passerelle fonctionne ; mais le nom deb.debian.org ne peut pas être traduit en adresse. Correction : ajouter dns-nameservers 172.16.50.10 dans /etc/network/interfaces (paquet resolvconf), ou nameserver 172.16.50.10 dans /etc/resolv.conf.

Ticket n° 6De : technicienPriorité basse
« J'ai ajouté le volume des partages dans /etc/fstab hier. Après le redémarrage de cette nuit, /srv/partages est vide, alors que les fichiers étaient là avant. »
Debian 13 relevé du technicien
$ grep partages /etc/fstab
/dev/vg_data/lv_partage   /srv/partages   ext4   defaults,nofail   0   2
$ sudo lvs
  LV          VG      Attr       LSize
  lv_partages vg_data -wi-a----- 35,00g

Quelle est la cause ?

Cause : il manque le « s » final : le montage échoue. Grâce à l'option nofail, le serveur a quand même démarré (sans elle, systemd aurait attendu 90 secondes puis basculé en mode de secours, à réparer depuis la console Proxmox), et l'on voit le dossier vide qui se trouve sous le point de montage. Les données sont intactes sur le volume. Correction : corriger la ligne, puis sudo mount -a et findmnt /srv/partages. À faire à chaque modification de fstab, avant de redémarrer.

11. À l'examen et en entreprise

  • Documentation attendue : la fiche du serveur (nom, rôle, version de Debian, adresse, volumes LVM, services installés), les comptes et groupes créés et la matrice des droits sur les dossiers partagés.
  • Démonstration : le jury demande souvent de montrer un service actif (systemctl status), un journal (journalctl -u), l'espace disque (df -h, lvs) et une connexion SSH par clé.
  • Justifier ses choix : pourquoi Debian stable, pourquoi LVM, pourquoi sudo plutôt que root, pourquoi la connexion par clé.
  • Procédures : rédiger pas à pas « ajouter un utilisateur au partage » ou « agrandir le volume », que n'importe quel technicien peut suivre.

12. L'essentiel

  1. Debian 13 « Trixie » : distribution stable, suivie cinq ans, administrée en ligne de commande.
  2. Un seul arbre depuis / : configuration dans /etc, données variables et journaux dans /var, utilisateurs dans /home.
  3. sudo apt update avant sudo apt install ; apt upgrade régulièrement pour la sécurité.
  4. Comptes dans /etc/passwd, mots de passe hachés dans /etc/shadow ; adduser compte groupe ou usermod -aG.
  5. On administre avec sudo (groupe sudo), pas en root : chaque action est tracée.
  6. Droits rwx pour u, g, o ; en octal r = 4, w = 2, x = 1 (750, 644, 600) ; jamais de 777.
  7. LVM : disques → PV → VG → LV ; lvextend -r agrandit à chaud ; montage permanent dans /etc/fstab, testé avec mount -a.
  8. systemctl status|restart|enable pour les services, journalctl -u pour leurs messages.
  9. Adresse fixe dans /etc/network/interfaces : address, gateway, dns-nameservers ; vérifier avec ip -br a et ip route.
  10. SSH par clé (ssh-keygen, ssh-copy-id), puis PermitRootLogin no et PasswordAuthentication no.
Debian 13serveur Se repérer/etc config · /var journauxapt update · apt install Comptesadduser · usermod -aGsudo, pas root Droitsrwx · u g o · 750 644 600chown · chmod · umask StockagePV → VG → LV · lvextend -rfstab · mount -a · df -h Servicessystemctl status · enablejournalctl -u · -f · -p err Réseau et SSHinterfaces · ip a · ip routeclé ed25519 · root interdit
La fiche en une image : à refaire de mémoire, sur une feuille, avant de passer aux exercices.

Les commandes clés

Pour…Commandes
Paquetssudo apt update · sudo apt install samba · sudo apt upgrade
Comptessudo adduser lmartin · sudo adduser lmartin compta · id lmartin
Droitsls -l · sudo chown lmartin:compta dossier · sudo chmod 770 dossier
LVMpvcreate · vgcreate · lvcreate -L 25G -n lv vg · lvextend -r -L +10G
Servicessystemctl status ssh · sudo systemctl restart ssh · journalctl -u ssh
Réseauip -br a · ip route · ss -tlnp · /etc/network/interfaces
SSHssh-keygen -t ed25519 · ssh-copy-id admin@172.16.50.11 · sshd -t

Tout cela tient sur une page : utilise le bouton Mémo à imprimer en haut de la fiche.

La pratiqueLe quiz noté pour vérifier tes acquis, les exercices à rendre à ton professeur, puis le TP au labo sur ta machine virtuelle Debian.

13. Quiz noté

8 questions · 10 minutesRéponds à toutes les questions, puis valide. Seule ta première tentative est enregistrée : elle compte dans ton suivi. Ensuite, tu peux t'entraîner autant que tu veux.

1. Dans quel dossier se trouvent les fichiers de configuration du système et des services ?

2. Pourquoi lancer sudo apt update avant sudo apt install ?

3. Quelle commande ajoute lmartin au groupe compta sans la retirer de ses autres groupes ?

4. Quels droits donne chmod 750 sur un dossier ?

5. Dans LVM, comment s'appelle le « réservoir » qui regroupe plusieurs disques ?

6. Quelle commande fait démarrer le service ssh automatiquement à chaque démarrage, et tout de suite ?

7. Le serveur joint 203.0.113.1 mais apt update affiche « Temporary failure resolving ». Que manque-t-il ?

8. Lors d'une connexion SSH par clé, quelle clé reste sur le poste du technicien ?

14. Exercices : à toi de répondre

Écris ta réponse sous chaque énoncé et envoie-la à ton professeur. Quand il l'a validée, le corrigé s'affiche à la place du cadenas ; s'il te la renvoie « à revoir », lis son commentaire et corrige.

Exercice 1 – Comprendre (SIO1)

La commande ls -l /srv/partages affiche la ligne drwxr-x--- 4 pdurand entrepot 4096 oct. 18 entrepot. Qui est le propriétaire ? Quel est le groupe ? Écris les droits en octal. Lucie, qui n'est pas dans le groupe entrepot, peut-elle lister le contenu de ce dossier ? Et Paul, membre du groupe, peut-il y créer un fichier ? Justifie.

Le corrigé s'affichera ici dès que ton professeur aura validé ta réponse. Cherche d'abord par toi-même : c'est en se trompant qu'on retient.

Exercice 2 – Configurer (SIO1)

Écris la suite de commandes qui crée le groupe direction, le compte sleroux membre de ce groupe, le dossier /srv/partages/direction appartenant à root et au groupe direction, accessible en lecture et écriture au groupe seulement, et où les fichiers créés prennent automatiquement le groupe direction.

Le corrigé s'affichera ici dès que ton professeur aura validé ta réponse. Cherche d'abord par toi-même : c'est en se trompant qu'on retient.

Exercice 3 – Dépanner (SIO1)

Après un redémarrage, le service Samba de SRV-LINUX ne démarre plus. systemctl status smbd affiche failed. Décris la démarche et les commandes que tu utilises, dans l'ordre, pour trouver et corriger la cause, puis pour vérifier que tout est rentré dans l'ordre.

Le corrigé s'affichera ici dès que ton professeur aura validé ta réponse. Cherche d'abord par toi-même : c'est en se trompant qu'on retient.

Exercice 4 – Concevoir (SIO2)

Le responsable veut que les partages de Brocéliande puissent grandir pendant trois ans sans interruption de service, et que le système reste démarrable même si les partages saturent. Propose l'organisation du stockage de SRV-LINUX (disques, volumes, points de montage, tailles de départ) et justifie-la en quelques lignes.

Le corrigé s'affichera ici dès que ton professeur aura validé ta réponse. Cherche d'abord par toi-même : c'est en se trompant qu'on retient.

15. Au labo : mettre en service SRV-LINUX

Objectif

Sur la VM Debian 13 de ton pool Proxmox (page Mes serveurs et VM), tu prépares le serveur de fichiers de Brocéliande : adresse fixe, comptes et groupes, volume LVM pour les partages avec les bons droits, accès SSH par clé. Compte 2 heures. Dans ton pool, adapte l'adresse au réseau de ta baie si ton professeur te le demande.

MachineSystèmeRôle dans le TP
SRV-LINUXDebian 13, sans interface graphiqueLe serveur à configurer : 172.16.50.11/24, passerelle .254, DNS 172.16.50.10
Disques ajoutés2 disques virtuels de 10 Go (Proxmox : Hardware → Add → Hard Disk)Groupe de volumes vg_data
Poste clientWindows 11 ou ton PCConnexion SSH par clé

Ce que tu ajoutes à cette étape

  • Une adresse fixe et un nom de machine conformes au plan d'adressage.
  • Les comptes admin (sudo), lmartin et pdurand, les groupes compta et entrepot.
  • Un volume LVM monté sur /srv/partages, agrandi à chaud.
  • Un accès SSH par clé, root et mots de passe interdits.

1 Faire le point et mettre à jour

Debian 13 console Proxmox de la VM
$ cat /etc/debian_version # 13.x
$ ip -br link # nom de l'interface (ens18)
$ sudo apt update && sudo apt upgrade -y
$ sudo apt install -y lvm2 openssh-server resolvconf

2 Adresse fixe et nom

Fais une copie de /etc/network/interfaces, écris la configuration de la partie 8, puis sudo systemctl restart networking. Donne le nom srv-linux avec hostnamectl et corrige la ligne 127.0.1.1 de /etc/hosts. Vérifie avec ip -br a, ip route et ping -c 3 deb.debian.org.

3 Comptes et groupes

Crée le compte admin et donne-lui sudo (si ce n'est pas déjà fait à l'installation), puis les comptes lmartin et pdurand, les groupes compta et entrepot, et range chacun dans son groupe. Contrôle avec id.

4 Volume des partages

Ajoute les deux disques à la VM dans Proxmox, repère-les avec lsblk, puis crée vg_data et un volume lv_partages de 12 Go, formate-le en ext4, monte-le sur /srv/partages et rends le montage permanent. Complète d'abord les commandes :

Disques /dev/sdb et /dev/sdc, groupe vg_data, volume lv_partages de 12 Go. La dernière ligne teste la ligne ajoutée dans /etc/fstab sans redémarrer. Vérifie chaque ligne avec ✓.

$
$
$
$
$

Crée ensuite /srv/partages/compta et /srv/partages/entrepot, avec les propriétaires, groupes et droits 2770 vus en partie 5. Enfin, agrandis le volume de 3 Go à chaud et constate le changement avec df -h.

5 SSH par clé

  1. Sur ton poste : ssh-keygen -t ed25519, puis copie la clé publique sur le serveur (ssh-copy-id sous Linux ; sous Windows, colle le contenu de id_ed25519.pub dans ~/.ssh/authorized_keys du compte admin).
  2. Teste la connexion par clé dans une nouvelle fenêtre, sans fermer la première.
  3. Crée /etc/ssh/sshd_config.d/durcissement.conf (partie 9), teste avec sudo sshd -t, puis sudo systemctl reload ssh.
  4. Vérifie qu'une connexion en root est refusée et que le journal le montre : sudo journalctl -u ssh -n 20.

6 Valider : le cahier de recette

N°TestCommandeRésultat attenduOK
1Adresse et passerelleip -br a · ip route172.16.50.11/24 ; default via 172.16.50.254
2Résolution de nomsping -c 3 deb.debian.orgLe nom est traduit et répond
3Comptes et groupesid lmartin · id pdurandMembres de compta et d'entrepot
4Volume monté et agrandidf -h /srv/partages · sudo lvsEnviron 15 Go, monté sur /srv/partages
5Montage permanentRedémarrer, puis findmnt /srv/partagesLe volume est monté au démarrage
6Droits des partagessudo -u lmartin touch /srv/partages/entrepot/tRefusé (lmartin n'est pas dans entrepot)
7SSH durcissh root@172.16.50.11 depuis le posteRefusé ; admin entre par clé, sans mot de passe
Suis ta progressionConnecte-toi pour marquer les ressources comme terminées et retrouver ton avancement.
Se connecter