Sécuriser votre VPS : hardening, Lynis et un rythme de maintenance
Avec Sécuriser votre VPS : les cinq premières minutes, vous posez les bases : mises à jour, connexion par clé, pare-feu et fail2ban. Mais un serveur n'est jamais terminé. Les logiciels vieillissent, les certificats expirent et les disques se remplissent. Vous découvrirez ici comment renforcer ensuite votre serveur étape par étape (hardening), comment le contrôler avec Lynis et quel rythme de maintenance vous aide.
Quatre principes
- Une surface d'attaque réduite. Ce qui n'existe pas ne peut pas fuiter. Supprimez les services et paquets que vous n'utilisez pas, et ne laissez ouverts depuis l'extérieur que les ports vraiment nécessaires. Consultez Quels services écoutent sur votre VPS, et qu'est-ce qui est accessible depuis l'extérieur ?
- Des droits minimaux. Pas de travail quotidien en root, des services sous leur propre utilisateur, jamais de
chmod 777. Consultez Lire et définir correctement les droits des fichiers sur votre VPS. - Une défense en profondeur. Partez du principe qu'une mesure peut échouer. Une base de données qui n'écoute que sur
127.0.0.1, se trouve derrière un pare-feu et possède un mot de passe robuste reste sécurisée si l'une de ces trois protections fait défaut. - Voir ce qui se passe. Journaux, surveillance et sauvegardes. Sans ces trois éléments, vous ne remarquez un problème que lorsqu'il est trop tard.
Les CIS Benchmarks en bref
Le Center for Internet Security (CIS) publie les CIS Benchmarks : des listes de paramètres recommandés par produit, notamment pour Debian et Ubuntu. Ils se divisent en Level 1 (mesures de base sans grands inconvénients, l'objectif pour la plupart des serveurs) et Level 2 (plus strict, peut coûter des fonctionnalités ou des performances). Utilisez-les comme référence : comprenez une recommandation avant de l'appliquer, modifiez une seule chose à la fois et notez pourquoi vous choisissez délibérément de ne pas appliquer quelque chose. Méfiez-vous des scripts prêts à l'emploi qui appliquent « tout le CIS » en une seule fois : vous risquez facilement de vous bloquer l'accès.
Contrôler avec Lynis
Lynis est un programme open source gratuit qui examine votre serveur de l'intérieur. Il ne modifie rien lui-même, il se contente de produire un rapport.
sudo apt install lynis sudo lynis audit system
Sur AlmaLinux et Rocky Linux, vous l'installez depuis EPEL avec sudo dnf install lynis. Voici comment lire le résultat :
- Les Warnings doivent vraiment être examinés, par exemple des paquets présentant des failles connues (des mises à jour sont alors en attente).
- Les Suggestions sont des conseils. Beaucoup sont utiles, certaines ne conviennent pas à votre serveur. Une suggestion visant à désactiver
AllowTcpForwardingcasse par exemple vos tunnels SSH. Ne les suivez pas aveuglément. - Chaque message comporte un code entre crochets, comme
[SSH-7408]. Il vous permet de retrouver dans/var/log/lynis.logce qui a été testé précisément. - Le hardening index (un nombre jusqu'à 100) est un indicateur de direction, pas une note à poursuivre à tout prix.
Créez un snapshot avant de modifier quoi que ce soit à la suite de Lynis, consultez Snapshots et sauvegardes de votre VPS, et sachez comment ouvrir la console si vous vous bloquez malgré tout l'accès.
Un rythme de maintenance
Voici un exemple pour un petit serveur. Adaptez-le à votre propre situation et inscrivez ces moments dans votre agenda.
| Quand | Quoi |
|---|---|
| Chaque semaine | Passer en revue les alertes de votre surveillance ; systemctl --failed ; redémarrer si /var/run/reboot-required existe |
| Chaque mois | apt list --upgradable (quelque chose reste-t-il bloqué ?) ; mettre à jour les conteneurs ; espace disque ; erreurs dans le journal avec journalctl -p err --since "1 month ago" |
| Chaque trimestre | Effectuer une restauration de test d'une sauvegarde ; passer en revue les utilisateurs et authorized_keys ; relancer Lynis |
| Chaque année | Vérifier la date de fin de support de votre version et planifier une mise à niveau ; mettre à jour security.txt si vous en avez un ; mettre à jour votre dossier serveur |
Aide pour chaque élément : Mises à jour et mises à jour automatiques, Surveillance depuis l'extérieur et l'intérieur, Sauvegardes avec restic vers un autre emplacement, Révoquer l'accès SSH à votre VPS pour un ancien collaborateur ou un ordinateur portable perdu et Mettre à niveau votre VPS vers une nouvelle version de Debian ou Ubuntu.
Un dossier serveur
Rédigez pour chaque serveur un court document et conservez-le en dehors du serveur, par exemple dans votre gestionnaire de mots de passe :
- nom, adresses IP, système d'exploitation et date de fin de support de cette version ;
- ce qui tourne (services, conteneurs, sites web) et quels ports sont ouverts pour cela ;
- où se trouvent les sauvegardes, comment les restaurer et quand vous l'avez testé pour la dernière fois ;
- quels secrets se trouvent sur le serveur (pas les secrets eux-mêmes, mais lesquels et où les remplacer) ;
- qui y a accès, et ce que vous avez délibérément fait différemment de la configuration standard.
Ce dossier vous aide en cas de panne, lors d'une mise à niveau et lorsque quelqu'un d'autre reprend la gestion.
timedatectl que l'horloge est synchronisée : avec une heure incorrecte, les journaux sont inutilisables et des certificats peuvent être considérés comme invalides.Votre VPS est entièrement autogéré : vous vous chargez vous-même du hardening et de la maintenance à l'intérieur du serveur. Nous vous aidons pour la partie WebOké, comme l'écran VPS, le réseau, les snapshots et les sauvegardes quotidiennes.
Envie d'en savoir plus ? Suivez le cours gratuit VPS et administration de serveurs Linux, leçon 10.1 Hardening et principes CIS ou leçon 10.4 Contrôle final : votre serveur passé au crible.
