Votre serveur privé virtuel vient d'être livré : vous avez une adresse IP, un accès root et un système Linux tout neuf. C'est le moment idéal pour poser des bases solides. Un VPS exposé sur Internet reçoit en effet des tentatives de connexion automatisées très peu de temps après sa mise en ligne : des robots testent en permanence des mots de passe courants sur toutes les adresses IP qu'ils trouvent.
Sécuriser un VPS Linux n'a rien de compliqué si l'on suit un ordre logique. Voici les dix premières choses à faire après la livraison, avec les commandes correspondantes pour Debian et Ubuntu, les distributions les plus répandues sur les VPS. Les principes restent les mêmes sur les autres distributions ; seules certaines commandes changent.
Avant de commencer : deux précautions
- Gardez toujours une session ouverte lorsque vous modifiez la configuration SSH ou le pare-feu. Testez la nouvelle configuration dans une deuxième fenêtre avant de fermer la première : c'est la meilleure assurance contre le blocage hors de votre propre serveur.
- Repérez la console de secours proposée par votre hébergeur. Elle permet d'accéder au serveur même lorsque SSH ne répond plus.
Étapes 1 à 3 : mettre à jour et préparer le système
1. Mettre à jour le système
L'image installée par l'hébergeur peut dater de plusieurs semaines. Commencez par appliquer toutes les mises à jour disponibles :
apt update && apt upgrade -y
Si un nouveau noyau a été installé, redémarrez le serveur avec la commande reboot.
2. Créer un utilisateur d'administration
Travailler en permanence avec le compte root est risqué : la moindre erreur a des conséquences immédiates. Créez un utilisateur personnel et donnez-lui les droits d'administration via sudo :
adduser jean
usermod -aG sudo jean
Remplacez « jean » par le nom de votre choix et choisissez un mot de passe long et unique. Vous utiliserez désormais sudo pour les commandes d'administration.
3. Régler le nom d'hôte et le fuseau horaire
Un nom d'hôte explicite et une heure correcte facilitent la lecture des journaux, indispensable en cas d'incident :
sudo hostnamectl set-hostname srv1.exemple.cm
sudo timedatectl set-timezone Africa/Douala
Étapes 4 et 5 : sécuriser l'accès SSH
4. Se connecter avec une clé SSH
Une clé SSH est bien plus robuste qu'un mot de passe. Les outils utilisés ici font partie d'OpenSSH, installé sur la quasi-totalité des serveurs Linux. Sur votre ordinateur, générez une paire de clés, puis copiez la clé publique sur le serveur :
ssh-keygen -t ed25519 -C "jean@ordinateur"
ssh-copy-id jean@ADRESSE_IP_DU_VPS
Protégez votre clé privée par une phrase de passe et ne la partagez jamais. Vérifiez ensuite que la connexion par clé fonctionne avec ssh jean@ADRESSE_IP_DU_VPS.
5. Interdire la connexion root et les mots de passe
Une fois la connexion par clé validée, éditez le fichier /etc/ssh/sshd_config et assurez-vous que ces deux lignes sont présentes et non commentées :
PermitRootLogin no
PasswordAuthentication no
Vérifiez la syntaxe de la configuration, puis redémarrez le service :
sudo sshd -t
sudo systemctl restart ssh
Sur certaines distributions, le service s'appelle sshd. Ouvrez une nouvelle connexion pour confirmer que tout fonctionne avant de fermer votre session actuelle.
Étapes 6 et 7 : pare-feu et protection contre la force brute
6. Activer un pare-feu
Le principe est simple : tout bloquer en entrée, sauf les services réellement utilisés. Avec UFW, autorisez SSH avant d'activer le pare-feu :
sudo apt install ufw
sudo ufw default deny incoming
sudo ufw default allow outgoing
sudo ufw allow OpenSSH
sudo ufw allow 80/tcp
sudo ufw allow 443/tcp
sudo ufw enable
sudo ufw status verbose
N'ouvrez les ports 80 et 443 que si le serveur héberge un site web. Pour vérifier quels services écoutent réellement, utilisez sudo ss -tulpn.
7. Installer fail2ban
Fail2ban surveille les journaux et bannit temporairement les adresses IP qui accumulent les échecs de connexion :
sudo apt install fail2ban
sudo systemctl enable --now fail2ban
sudo fail2ban-client status sshd
Pour ajuster le comportement, créez un fichier /etc/fail2ban/jail.local plutôt que de modifier les fichiers d'origine, qui peuvent être remplacés lors des mises à jour.
Étapes 8 à 10 : automatiser, sauvegarder, surveiller
8. Activer les mises à jour de sécurité automatiques
Les failles sont corrigées régulièrement ; encore faut-il installer les correctifs. Sur Debian et Ubuntu, le paquet unattended-upgrades applique automatiquement les mises à jour de sécurité :
sudo apt install unattended-upgrades
sudo dpkg-reconfigure --priority=low unattended-upgrades
9. Mettre en place des sauvegardes
La sécurité ne consiste pas seulement à empêcher les intrusions : il faut aussi pouvoir repartir après un incident, une erreur de manipulation ou une panne. Combinez des instantanés du serveur avec une copie régulière de vos données (fichiers, bases de données, configurations) vers un stockage situé ailleurs. Et surtout, testez la restauration : une sauvegarde jamais restaurée reste une hypothèse. Notre article sur la règle du 3-2-1 pour les sauvegardes détaille une méthode simple et fiable.
10. Surveiller le serveur
Mettez en place une surveillance externe de la disponibilité de vos services, et prenez l'habitude de contrôler régulièrement quelques indicateurs :
- l'espace disque avec
df -het la mémoire avecfree -h; - les dernières connexions avec
last; - les journaux du service SSH avec
sudo journalctl -u ssh; - les ports ouverts avec
sudo ss -tulpn.
Sécuriser un VPS Linux : récapitulatif des dix étapes
| Étape | Objectif | Outil ou commande |
|---|---|---|
| 1. Mises à jour | Corriger les failles connues | apt update, apt upgrade |
| 2. Utilisateur sudo | Ne plus travailler en root | adduser, usermod |
| 3. Nom d'hôte et heure | Des journaux lisibles | hostnamectl, timedatectl |
| 4. Clés SSH | Une authentification robuste | ssh-keygen, ssh-copy-id |
| 5. Configuration SSH | Fermer les accès les plus visés | sshd_config |
| 6. Pare-feu | N'exposer que l'utile | ufw |
| 7. Anti force brute | Bloquer les attaques répétées | fail2ban |
| 8. Mises à jour automatiques | Rester protégé dans la durée | unattended-upgrades |
| 9. Sauvegardes | Pouvoir tout restaurer | Instantanés et copie externe |
| 10. Surveillance | Détecter vite les problèmes | Supervision externe, journaux |
Questions fréquentes
Faut-il changer le port SSH ?
Changer le port réduit le bruit dans les journaux, mais ne remplace en rien les clés SSH et la désactivation des mots de passe. Si vous le faites, autorisez le nouveau port dans le pare-feu avant de redémarrer SSH.
Ces commandes fonctionnent-elles sur AlmaLinux ou Rocky Linux ?
Les principes sont identiques, mais les outils diffèrent : dnf remplace apt, le groupe d'administration s'appelle wheel et le pare-feu se gère généralement avec firewalld.
Je me suis bloqué hors de mon serveur, que faire ?
Utilisez la console de secours de votre hébergeur pour corriger la configuration SSH ou les règles du pare-feu. Si vous n'y parvenez pas, contactez le support avec un maximum de détails sur la dernière modification effectuée.
Un VPS non géré est-il adapté à mon entreprise ?
Oui si une personne de votre équipe maîtrise l'administration Linux et peut y consacrer du temps. Sinon, une offre d'infogérance vous évite de porter seul la sécurité et les mises à jour. Pour comparer les formules, consultez notre guide hébergement mutualisé, VPS ou serveur dédié.
Un VPS sûr dès le premier jour
Ces dix étapes sont rapides à mettre en place et vous protègent efficacement contre les attaques automatisées les plus courantes. Pour démarrer sur de bonnes bases, découvrez nos VPS Linux, et si vous préférez déléguer la sécurité, les mises à jour et la surveillance, notre service d'infogérance prend le relais. Pour aller plus loin, la documentation officielle d'Ubuntu Server couvre chaque outil en détail. Une question technique ? Contactez notre équipe.

