Un VPS a une adresse IP publique : dans l’heure qui suit sa mise en service, des robots essaient déjà de s’y connecter. Trois mesures suffisent à écarter l’immense majorité de ces tentatives, et une quatrième vous évite de découvrir une panne par un client mécontent.
Comment configurer le pare-feu de mon VPS Linux ?
Avec ufw sur Debian et Ubuntu, firewalld sur AlmaLinux, Rocky et CentOS Stream : on refuse tout par défaut, puis on ouvre uniquement SSH et les ports réellement publics.
Sur Debian et Ubuntu, avec ufw :
apt install ufw
ufw default deny incoming
ufw default allow outgoing
ufw allow 22/tcp
ufw allow 80,443/tcp
ufw enable
ufw status verbose
Sur AlmaLinux, Rocky et CentOS Stream, avec firewalld :
dnf install firewalld
systemctl enable --now firewalld
firewall-cmd --permanent --add-service=ssh
firewall-cmd --permanent --add-service=http --add-service=https
firewall-cmd --reload
firewall-cmd --list-all
Autorisez SSH avant d’activer le pare-feu. L’ordre des commandes ci-dessus n’est pas décoratif : activer une politique restrictive sans règle SSH vous coupe l’accès sur-le-champ. Si cela arrive, la console de secours reste votre porte d’entrée.
N’ouvrez que les ports de services réellement publics. Une base de données ne doit presque jamais écouter sur l’extérieur : faites-la écouter sur 127.0.0.1 et passez par un tunnel SSH pour l’administrer.
Comment bloquer les tentatives de connexion répétées avec fail2ban ?
fail2ban lit les journaux, repère les échecs d’authentification répétés et bannit l’adresse fautive au niveau du pare-feu.
apt install fail2ban # Debian, Ubuntu
dnf install fail2ban # AlmaLinux, Rocky, CentOS Stream
Créez /etc/fail2ban/jail.local — ne modifiez jamais jail.conf, il est écrasé aux mises à jour :
[DEFAULT]
bantime = 1h
findtime = 10m
maxretry = 5
ignoreip = 127.0.0.1/8 VOTRE_IP_PERSONNELLE
[sshd]
enabled = true
Puis :
systemctl enable --now fail2ban
fail2ban-client status sshd
Renseigner ignoreip avec votre propre adresse évite de vous bannir vous-même après quelques essais malheureux.
Comment installer les mises à jour de sécurité de mon serveur ?
Manuellement avec apt upgrade ou dnf upgrade, ou automatiquement avec unattended-upgrades sur Debian et Ubuntu et dnf-automatic sur AlmaLinux, Rocky et CentOS Stream.
Manuellement, régulièrement :
apt update && apt upgrade # Debian, Ubuntu
dnf upgrade # AlmaLinux, Rocky, CentOS Stream
Automatiquement, pour les seuls correctifs de sécurité :
apt install unattended-upgrades && dpkg-reconfigure -plow unattended-upgrades
dnf install dnf-automatic && systemctl enable --now dnf-automatic.timer
L’automatisation ne dispense pas de regarder : certains correctifs demandent un redémarrage de service ou du noyau pour être réellement actifs.
systemctl list-units --failed
needrestart # Debian, Ubuntu
Comment surveiller ce qui tourne sur mon VPS ?
Avec systemctl et journalctl pour l’état des services et leurs journaux, df -h pour l’espace disque, et l’onglet Graphiques de l’espace client pour la vue d’ensemble.
systemctl status nginx # état d'un service
journalctl -u nginx -n 50 # ses 50 dernières lignes de journal
journalctl -p err -b # les erreurs depuis le démarrage
df -h # espace disque
Un disque saturé est la panne la plus fréquente et la plus discrète : les journaux cessent de s’écrire, les bases de données refusent les écritures, et rien ne le signale tant que personne ne regarde. Surveillez df -h et purgez les journaux anciens avec journalctl --vacuum-time=14d.
L’onglet Graphiques de l’espace client complète utilement : une courbe CPU au plafond pendant des heures, un trafic réseau sortant inhabituel ou une saturation mémoire s’y voient immédiatement.
Les sauvegardes de mon VPS sont-elles assurées par By-Hoster ?
L’espace client ne propose pas de service de sauvegarde pour les VPS. Les snapshots disponibles dans l’onglet du même nom sont un filet pour une opération risquée, pas une sauvegarde : ils vivent sur le même stockage que la machine. Prévoyez une copie de vos données réellement irremplaçables hors du VPS, et testez une restauration de temps en temps.