Un VPS exposé sur Internet reçoit en moyenne 3 000 à 10 000 tentatives de connexion SSH par jour, principalement des bots qui essaient des couples user/password classiques. Voici la checklist actionnable à appliquer dans la première heure suivant la création.
1. Mettre à jour immédiatement
sudo apt update && sudo apt upgrade -y && sudo apt autoremove -y
2. Créer un utilisateur sudo (et bannir root)
sudo adduser mathis
sudo usermod -aG sudo mathis
3. SSH par clés uniquement
Depuis votre machine locale :
ssh-keygen -t ed25519 -C "mathis@helloserv"
ssh-copy-id mathis@VOTRE-VPS-IP
Puis durcissez /etc/ssh/sshd_config :
PermitRootLogin no
PasswordAuthentication no
PubkeyAuthentication yes
PermitEmptyPasswords no
X11Forwarding no
MaxAuthTries 3
ClientAliveInterval 300
ClientAliveCountMax 0
AllowUsers mathis
sudo systemctl restart ssh
4. Changer le port SSH (optionnel mais utile)
Passer du 22 à un port haut (ex: 2222) réduit massivement les scans automatisés :
Port 2222
5. UFW (firewall)
sudo ufw default deny incoming
sudo ufw default allow outgoing
sudo ufw allow 2222/tcp comment "SSH"
sudo ufw allow 80/tcp comment "HTTP"
sudo ufw allow 443/tcp comment "HTTPS"
sudo ufw enable
sudo ufw status verbose
6. Fail2ban pour bannir les attaquants
sudo apt install -y fail2ban
sudo cp /etc/fail2ban/jail.conf /etc/fail2ban/jail.local
Éditez /etc/fail2ban/jail.local :
[sshd]
enabled = true
port = 2222
bantime = 86400
findtime = 600
maxretry = 3
sudo systemctl enable --now fail2ban
sudo fail2ban-client status sshd
7. Mises à jour automatiques sécurité
sudo apt install -y unattended-upgrades
sudo dpkg-reconfigure --priority=low unattended-upgrades
8. Désactiver les services inutiles
sudo systemctl list-unit-files --state=enabled
sudo systemctl disable --now NomDuService
9. Sysctl : durcissements réseau
Dans /etc/sysctl.d/99-security.conf :
net.ipv4.tcp_syncookies = 1
net.ipv4.conf.all.rp_filter = 1
net.ipv4.icmp_echo_ignore_broadcasts = 1
net.ipv4.conf.all.log_martians = 1
net.ipv6.conf.all.disable_ipv6 = 0
kernel.kptr_restrict = 2
sudo sysctl --system
10. Audit régulier
- Lynis : audit complet du système (
sudo apt install lynis && sudo lynis audit system) - ClamAV : antivirus en cas de webserver exposé
- logwatch : résumé quotidien des logs par email
Anti-DDoS : pas oublier la couche réseau
Toutes ces protections sont applicatives. Pour le DDoS volumétrique, vous dépendez de votre hébergeur. Nos VPS HelloServ incluent Anti-DDoS Netrix 10 Tbps+ par défaut, sans coût supplémentaire.
Bonus : monitoring
Installez netdata ou Grafana + Prometheus pour surveiller CPU, RAM, disque, réseau en temps réel. Un pic de trafic inhabituel est souvent le premier signal d\'une attaque.
Conclusion
Cette checklist prend environ 30 minutes à appliquer et élimine 99 % des attaques opportunistes. Pour les attaques ciblées, un audit Lynis trimestriel et une veille CVE sont les bonnes pratiques.