Les systèmes Linux sont conçus avec une sécurité robuste par défaut et intègrent des outils d'administration puissants. Néanmoins, leur protection repose ultimement sur les pratiques de l'administrateur.
Les débutants en administration système mettent souvent des années à maîtriser les meilleures politiques de sécurité. C'est pourquoi nous partageons ces 10 conseils essentiels de durcissement Linux, testés et éprouvés, pour vous aider à sécuriser efficacement votre machine dès aujourd'hui.
Les mots de passe constituent la méthode d'authentification principale sur la plupart des systèmes. Que vous soyez un utilisateur domestique ou professionnel, imposer des mots de passe robustes est impératif. Commencez par désactiver les mots de passe vides, encore trop courants.
awk -F: '($2 == "") { print $1 }' /etc/shadowExécutez cette commande en root pour identifier les comptes concernés. Verrouillez-les immédiatement avec :
passwd -l USERNAMEConfigurez également le vieillissement des mots de passe pour éviter la réutilisation d'anciens. Vérifiez les paramètres actuels :
chage -l USERNAMEPour imposer une expiration après 30 jours :
chage -M 30 USERNAMELes gestionnaires de mots de passe intégrés à Linux facilitent la sécurisation des comptes en ligne.

Si vos données sont critiques, mettez en place des sauvegardes régulières. Cela permet une récupération rapide en cas de panne. Choisissez une méthode adaptée à votre usage pour renforcer le durcissement Linux.
Pour un usage domestique, un clonage sur disque externe suffit souvent. Les entreprises requièrent des solutions avancées avec restauration rapide.
Linux supporte de nombreuses protocoles de communication distante, mais les services legacy comme telnet, rlogin et FTP présentent des vulnérabilités majeures. Supprimez-les pour minimiser les risques.
Sur Ubuntu/Debian :
apt-get --purge remove xinetd nis tftpd tftpd-hpa telnetd rsh-server rsh-redone-serverSur systèmes RPM (CentOS/RHEL) :
yum erase xinetd ypserv tftp-server telnet-server rsh-serverSSH est le protocole recommandé pour l'accès distant sous Linux. Renforcez la configuration de votre serveur sshd en éditant /etc/ssh/sshd_config. Voici des directives essentielles :
PermitRootLogin no # Désactive la connexion root
MaxAuthTries 3 # Limite les tentatives d'authentification
PasswordAuthentication no # Désactive l'authentification par mot de passe
PermitEmptyPasswords no # Interdit les mots de passe vides
X11Forwarding no # Désactive le forwarding X11
DebianBanner no # Supprime la bannière informative
AllowUsers *@XXX.X.XXX.0/24 # Restreint aux IPs spécifiquesRedémarrez sshd après modifications : systemctl restart sshd.
Cron est un planificateur de tâches puissant. Limitez son accès pour éviter les abus. Listez les jobs d'un utilisateur :
crontab -l -u USERNAME
Vérifiez tous les utilisateurs. Pour autoriser uniquement votre compte :
echo $(whoami) >> /etc/cron.d/cron.allow
# echo ALL >> /etc/cron.d/cron.denyLes modules PAM (Pluggable Authentication Modules) offrent une authentification flexible. Limitez la réutilisation des mots de passe, par exemple :
# CentOS/RHEL
echo 'password sufficient pam_unix.so use_authtok md5 shadow remember=5' >> /etc/pam.d/system-auth
# Ubuntu/Debian
echo 'password sufficient pam_unix.so use_authtok md5 shadow remember=5' >> /etc/pam.d/common-passwordCela interdit les 5 derniers mots de passe. Explorez d'autres politiques PAM pour des couches supplémentaires.
Éliminez les paquets inutiles pour réduire la surface d'attaque. Listez les installés :
yum list installed # CentOS/RHEL
apt list --installed # Ubuntu/Debian
Pour supprimer VLC :
yum remove vlc # CentOS/RHEL
apt remove vlc # Ubuntu/DebianUtilisez sysctl ou éditez /etc/sysctl.conf pour ces paramètres essentiels :
kernel.randomize_va_space = 2 # ASLR pour mmap, heap et stack
kernel.panic = 10 # Redémarrage auto après 10s en cas de panic
net.ipv4.icmp_ignore_bogus_error_responses = 1 # Ignore les erreurs ICMP bogus
net.ipv4.ip_forward = 0 # Désactive le forwarding IPAppliquez avec sysctl -p. Adaptez selon votre expérience.
iptables interagit avec Netfilter pour filtrer le trafic. Voici des règles de base sécurisées :
-A INPUT -j REJECT
-A FORWARD -j REJECT
-A INPUT -i lo -j ACCEPT
-A OUTPUT -o lo -j ACCEPT
# ICMP (ping sortant)
-A OUTPUT -p icmp -j ACCEPT
# Connexions établies/connexes
-A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
-A OUTPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
# DNS
-A OUTPUT -p udp --dport 53 -j ACCEPT
# HTTP/HTTPS
-A OUTPUT -p tcp --dport 80 -m state --state NEW -j ACCEPT
-A OUTPUT -p tcp --dport 443 -m state --state NEW -j ACCEPT
# SSH
-A INPUT -p tcp --dport 22 -j ACCEPT
-A OUTPUT -p tcp --dport 22 -j ACCEPTLes logs révèlent les activités suspectes. Fichiers clés :
Durcir un système Linux est accessible avec ces pratiques. Appliquez-les pour une sécurité renforcée, et gagnez en expertise au fil du temps.
[]