Accueil/Réseaux & Systèmes /Chapitre 05 /Fiche de révision /Cours ·Exercices

Administration Linux — l'essentiel

Deux pages à imprimer (⌘P). Les commandes, les droits, les pièges.

01Le socle

Repères historiques

  • 1969 — Unix, labos Bell, Thompson & Ritchie
  • 1973 — réécrit en C → portabilité
  • Noyau Linux = Linus Torvalds
  • Distribution = noyau + outils d'installation et d'administration

Debian · Ubuntu (dérivée de Debian) · Red Hat · Fedora (libre de Red Hat) · SuSE · Mandriva

Les 4 principes Unix

  • Tout est fichier
  • Multi-tâches en temps partagé
  • Multi-utilisateurs
  • Shell comme interpréteur

Noms sensibles à la casse, 255 caractères max, point initial = fichier caché.

Lire l'invite

contact@debian:~$

$ = utilisateur simple · # = root · ~ = répertoire personnel

commande [option] [paramètres]

Séparés par des espaces. Plusieurs commandes sur une ligne : ;

L'arborescence

/La racine
. .. ~Courant · parent · personnel
/etcConfiguration du système et des services
/homeUtilisateurs simples
/rootPersonnel de root (≠ /)
/binCommandes de base
/sbinCommandes admin
/bootDémarrage
/devPériphériques
/usrProgrammes et logiciels

02Les commandes

Fichiers et déplacements

pwd                    répertoire courant       ls -a      fichiers cachés
ls -l                  détail + permissions     ls -la     les deux
cd /                   la RACINE                cd ..      le PARENT
cd ~  ou  cd           son répertoire perso     cd -       le précédent

mkdir rep              crée un répertoire       touch f    crée un fichier vide
mkdir -p a/b           crée TOUTE l'arborescence
cp f /dest             copie                    cp -r d1 d2   copie un dossier
mv f1 f2               RENOMME                  mv f1 dossier deplace
rm f                   supprime un fichier      rmdir d    supprime un dossier VIDE
rm -r d                supprime dossier+contenu rm -rf d   sans confirmation ⚠

man cmd                l'AIDE                   clear      efface l'écran
who / whoami / id      qui est connecté, qui suis-je, mes UID/GID/groupes
uname -a               le noyau                 cat /etc/debian_version

Raccourcis clavier

TABAutocomplétion
↑ ↓Historique
Ctrl+CArrête la commande
Ctrl+ZSuspend (ne tue pas)
Ctrl+A / EDébut / fin de ligne
Ctrl+DFerme la session

APT — le piège classique

update = le CATALOGUE
upgrade = l'INSTALLATION
sudo apt update        rafraîchit la liste
sudo apt upgrade       met à jour les paquets
sudo apt full-upgrade  MAJ complète (peut retirer)
sudo apt install php
sudo apt purge php     désinstalle + config

Formats : DPKG/apt (Debian, Ubuntu) · RPM (Red Hat, Fedora, SuSE)

Processus

ps -ef / ps aux    tous les processus
pstree             l'arborescence
top / htop         temps réel
cmd &              lance en ARRIÈRE-plan
jobs               les tâches
fg %1 / bg %1      avant / arrière-plan
kill 1234          termine (TERM)
kill -9 1234       tue (KILL)

PID unique · PPID = père · daemon = processus système sans terminal

03Comptes et permissions

Utilisateurs et groupes

sudo adduser bob            crée (interactif)
sudo deluser --remove-home bob
sudo addgroup projet
sudo usermod -aG projet bob    ⚠ -a OBLIGATOIRE
passwd  /  sudo passwd bob
groups  /  id

root a toujours l'UID 0. sudo = 1 commande · su = session root entière.

Les 4 fichiers système

/etc/passwdComptes : UID, GID, /home, shell. Pas de mot de passe
/etc/shadowMots de passe chiffrés
/etc/groupGroupes et membres
/etc/sudoersQui peut sudo — éditer avec visudo

Les droits — r=4 w=2 x=1

-rwxr-xr--   1 la copie A projet ... script.sh
│└┬┘└┬┘└┬┘     └─┬─┘ └─┬──┘
│ u   g   o      prop.  groupe
└ type : - fichier · d répertoire · l lien

rwx=7  rw-=6  r-x=5  r--=4  -wx=3  -w-=2  --x=1

755  script, dossier      644  fichier de données
770  travail d'équipe     600  privé (clé SSH)

Sur un RÉPERTOIRE, ça change tout

DroitSur un fichierSur un répertoire
rLireLister les noms
wModifierCréer / supprimer
xExécuterTraverser (entrer)

Sans x, rien n'est possible dans un répertoire. x sans r : on ouvre un fichier dont on connaît le nom, sans voir la liste.

Modifier les droits

chmod g+w f        symbolique : + - =
chmod u-r f                    u g o a
chmod 755 f        octal : on RÉÉCRIT tout

chown alice:projet f    proprio + groupe
chgrp projet f          groupe seul
chmod g+s dossier       SetGID : héritage
                        du groupe

04Réseau et pièges

Configuration IP statique

ip a                voir les interfaces
ip route            la passerelle

# /etc/network/interfaces
auto ens33                 ⚠ NE PAS OUBLIER
iface ens33 inet static
    address 10.0.0.10      ⚠ sans /24
    netmask 255.255.255.0  ⚠ ligne à part
    gateway 10.0.0.1

sudo systemctl restart networking
sudo ifup ens33

Serveur = IP statique, pour une adresse stable et prévisible.

Les 6 pièges du test

  1. usermod -aG et jamais -G seul
  2. update ≠ upgrade
  3. rm * supprime les fichiers, échoue sur les dossiers
  4. x sur un répertoire = traverser, pas lister
  5. /etc/passwd ne contient aucun mot de passe
  6. chown change proprio et groupe ; chgrp le groupe seul

Sécuriser un partage

sudo addgroup projet
sudo usermod -aG projet alice
sudo chgrp projet /srv/projet
sudo chmod 770 /srv/projet
sudo chmod g+s /srv/projet

Jamais 777. Jamais de compte partagé. Principe du moindre privilège.

⚡ Si vous ne reteniez que trois choses

  • Tout est fichier, tout part de /, tout est sensible à la casse.
  • r=4, w=2, x=1 — et sur un répertoire, x veut dire « traverser ».
  • Le moindre privilège : sudo pour une commande, un groupe pour un partage, jamais 777 ni le mot de passe root.

Sources exploitées

  • 1-Cours-Administration des systèmes Linux.pdf — le professeur
  • 1-1-Memo-Commande_base.pdf
  • 1-2-TP-Permission.pdf · 1-2-TP_accès_Sécurité_linux.pdf
  • Test Linux.pdf · Adresse IP statique sur Linux.pdf