Sécuriser un VPS Linux : UFW, fail2ban, clé SSH, root
Guide pour sécuriser un VPS Linux Lordhosting : firewall UFW, protection brute-force fail2ban, authentification par clé SSH et désactivation du login root.
Un VPS exposé sur Internet est scanné en permanence. Sans configuration minimale, vous risquez des tentatives de brute-force SSH, des intrusions et la compromission de vos services. Ce guide pose les bases d'un VPS Debian/Ubuntu sécurisé en moins de 30 minutes.
⚙️ Prérequis
- Un VPS Lordhosting (Debian 11/12 ou Ubuntu 22.04/24.04 recommandé)
- Un client SSH (Terminal sur macOS/Linux, PowerShell ou PuTTY sur Windows)
- Vos identifiants
rootreçus par email à la livraison
⚙️ 1. Connexion SSH initiale
Connectez-vous une dernière fois en root pour préparer la suite :
ssh root@votre_ip
⚙️ 2. Mise à jour du système
Toujours commencer par patcher les paquets installés :
apt update && apt upgrade -y
⚙️ 3. Créer un utilisateur sudo
Désactiver root est dangereux sans utilisateur de remplacement. Créez-en un avec les privilèges sudo :
adduser lordadmin
usermod -aG sudo lordadmin
Remplacez lordadmin par le nom d'utilisateur de votre choix.
⚙️ 4. Configurer l'authentification par clé SSH
Sur votre machine locale, générez une paire de clés si vous n'en avez pas déjà :
ssh-keygen -t ed25519 -C "votre_email@example.com"
Acceptez le chemin par défaut (~/.ssh/id_ed25519) et choisissez une passphrase forte.
Copiez ensuite la clé publique sur le VPS :
ssh-copy-id lordadmin@votre_ip
Si ssh-copy-id n'est pas disponible (Windows), copiez manuellement le contenu de ~/.ssh/id_ed25519.pub dans /home/lordadmin/.ssh/authorized_keys sur le VPS.
Testez la connexion par clé dans une nouvelle fenêtre :
ssh lordadmin@votre_ip
Si elle fonctionne sans demander de mot de passe, continuez. Sinon, ne touchez à rien et corrigez l'authentification d'abord.
⚙️ 5. Désactiver le login root et par mot de passe
Toujours connecté en tant que lordadmin, ouvrez la config SSH :
sudo nano /etc/ssh/sshd_config
Modifiez ou ajoutez les lignes suivantes :
PermitRootLogin no
PasswordAuthentication no
PubkeyAuthentication yes
Sauvegardez (Ctrl+O, Entrée, Ctrl+X) puis rechargez SSH :
sudo systemctl restart ssh
⚠️ Ne fermez pas votre session active avant d'avoir vérifié, dans une nouvelle fenêtre, que vous arrivez bien à vous reconnecter en
lordadminavec votre clé. Si ça ne marche pas, vous êtes encore connecté et pouvez revenir en arrière.
⚙️ 6. Installer et configurer UFW (firewall)
UFW (Uncomplicated Firewall) est un wrapper simple autour d'iptables.
sudo apt install -y ufw
sudo ufw default deny incoming
sudo ufw default allow outgoing
sudo ufw allow OpenSSH
sudo ufw enable
Vérifiez l'état :
sudo ufw status verbose
Pensez à ouvrir les ports nécessaires à vos services. Quelques exemples :
sudo ufw allow 80/tcp # HTTP
sudo ufw allow 443/tcp # HTTPS
sudo ufw allow 25565/tcp # Minecraft Java
sudo ufw allow 19132/udp # Minecraft Bedrock
⚙️ 7. Installer et configurer fail2ban
fail2ban bannit automatiquement les IP qui multiplient les tentatives de connexion échouées :
sudo apt install -y fail2ban
Créez une config locale (ne pas modifier jail.conf directement) :
sudo nano /etc/fail2ban/jail.local
Collez ceci :
[DEFAULT]
bantime = 1h
findtime = 10m
maxretry = 5
[sshd]
enabled = true
port = ssh
logpath = %(sshd_log)s
backend = %(sshd_backend)s
Démarrez le service :
sudo systemctl enable --now fail2ban
Pour voir les IP bannies en temps réel :
sudo fail2ban-client status sshd
⚙️ 8. Vérification finale
- ✅ Connexion SSH par clé uniquement (pas de mot de passe)
- ✅ Login root désactivé
- ✅ UFW actif avec règles minimales
- ✅ fail2ban surveille SSH
Vous pouvez maintenant installer vos services (web, Pterodactyl, bots Discord, etc.) sur un terrain assaini. Pour aller plus loin, pensez à activer les mises à jour automatiques de sécurité avec unattended-upgrades et à mettre en place une sauvegarde régulière de votre VPS.
Un point que ce guide ne couvre pas, parce qu'il ne se règle pas depuis la machine : les attaques par saturation. UFW et fail2ban filtrent ce qui arrive jusqu'à vous, pas un volume qui sature le lien. Ce filtrage se fait en amont, sur le réseau - chez LordHosting, le filtrage Netrix volumétrique (L3/L4) est actif par défaut sur les offres de serveurs de jeu, sans surcoût ni option à ajouter, et la couche applicative (L7) s'ajoute sur les offres FiveM.
Guides similaires
Comment surveiller le trafic réseau sur un VPS : Guide complet & Outils
Apprenez à surveiller le trafic réseau sur votre VPS avec tcpdump, netstat, Wireshark. Contrôlez serveurs, détectez alertes et sécurisez vos réseaux.
Configurer le pare-feu UFW sur un VPS Linux
Configurez UFW sur votre VPS Linux : autoriser SSH avant d'activer, ouvrir vos ports de jeu, limiter par IP et vérifier les règles sans perdre l'accès.
Installer AzuraCast sur un VPS KVM Lordhosting
Guide complet pour installer automatiquement la dernière version stable d’AzuraCast avec Docker sur un VPS KVM Lordhosting.
Installer Azuriom sur un VPS
Tutoriel complet pour installer le CMS Azuriom sur un VPS KVM Lordhosting : prérequis, configuration Apache/Nginx, base de données MySQL et déploiement final.

