Fiche mémo

Linux essentiel

Les emplacements, journaux et commandes à connaître pour administrer, enquêter ou répondre à un incident sur une machine Linux.

CJCADéfense

Fichiers et dossiers clés

CheminContenu
/etc/passwdComptes utilisateurs (sans mots de passe)
/etc/shadowHash des mots de passe, lisible par root seulement
/etc/groupGroupes et leurs membres
/etc/sudoersDroits sudo (à éditer avec visudo)
/etc/crontab, /etc/cron.*Tâches planifiées du système
/etc/systemd/systemServices et timers systemd
/etc/hostsRésolution de noms locale
~/.ssh/authorized_keysClés publiques autorisées à se connecter
~/.bash_historyHistorique des commandes de l'utilisateur
/tmp, /dev/shmDossiers temporaires accessibles en écriture à tous
/procInformations sur les processus en cours

Journaux

JournalContenu
/var/log/auth.logAuthentifications, sudo, SSH (Debian, Ubuntu)
/var/log/secureÉquivalent sur RHEL, CentOS, Fedora
/var/log/syslogJournal général du système (Debian, Ubuntu)
/var/log/messagesJournal général (RHEL et dérivés)
/var/log/wtmpHistorique des connexions (lu avec last)
/var/log/btmpConnexions échouées (lu avec lastb)
/var/log/audit/audit.logÉvénements auditd
journalctlJournal de systemd

Permissions

NotationSignification
r / w / xLecture (4) / écriture (2) / exécution (1)
755rwxr-xr-x : tout pour le propriétaire, lecture et exécution pour les autres
644rw-r--r-- : fichier classique
600rw------- : réservé au propriétaire (clés privées)
SUID (4000)Le programme s'exécute avec les droits de son propriétaire
SGID (2000)Exécution avec les droits du groupe ; héritage du groupe sur un dossier
Sticky bit (1000)Dans un dossier, seul le propriétaire peut supprimer ses fichiers (/tmp)

Commandes d'investigation

# Qui est connecté, qui s'est connecté
w ; last -a | head ; lastb | head
# Processus et arborescence
ps auxf
# Connexions réseau et ports en écoute
ss -tulpn
# Tâches planifiées de tous les utilisateurs
ls -la /etc/cron.* ; for u in $(cut -d: -f1 /etc/passwd); do crontab -l -u "$u" 2>/dev/null; done
# Services et timers actifs
systemctl list-units --type=service --state=running ; systemctl list-timers
# Fichiers modifiés ces dernières 24 h
find / -xdev -mtime -1 -type f 2>/dev/null
# Journal SSH depuis hier
journalctl -u ssh --since yesterday