Pourquoi sécuriser son serveur ?
Un serveur exposé sur Internet reçoit en moyenne des milliers de tentatives de connexion frauduleuses par jour. Sans mesures de sécurité, il peut être compromis en quelques heures.
1. Mettre à jour le système
sudo apt update && sudo apt upgrade -y
sudo apt install unattended-upgrades
sudo dpkg-reconfigure unattended-upgrades
Les mises à jour automatiques de sécurité protègent contre les vulnérabilités connues.
2. Configurer SSH de manière sécurisée
Éditez /etc/ssh/sshd_config :
Port 2222 # Changer le port par défaut
PermitRootLogin no # Interdire la connexion root
PasswordAuthentication no # Clés SSH uniquement
MaxAuthTries 3 # Limiter les tentatives
AllowUsers deploy # Restreindre les utilisateurs
Redémarrez SSH :
sudo systemctl restart sshd
3. Firewall avec UFW
sudo ufw default deny incoming
sudo ufw default allow outgoing
sudo ufw allow 2222/tcp # Nouveau port SSH
sudo ufw allow 80/tcp # HTTP
sudo ufw allow 443/tcp # HTTPS
sudo ufw enable
4. Fail2ban
sudo apt install fail2ban -y
Créez /etc/fail2ban/jail.local :
[sshd]
enabled = true
port = 2222
maxretry = 3
bantime = 3600
findtime = 600
sudo systemctl enable fail2ban
sudo systemctl start fail2ban
5. Désactiver les services inutiles
sudo ss -tlnp # Lister les ports en écoute
sudo systemctl disable --now SERVICE_INUTILE
6. Installer un IDS (optionnel)
sudo apt install rkhunter
sudo rkhunter --check
Checklist de sécurité
- ✅ Mises à jour automatiques activées
- ✅ SSH sur port personnalisé + clés uniquement
- ✅ Firewall UFW configuré
- ✅ Fail2ban installé et actif
- ✅ Connexion root désactivée
- ✅ Services inutiles arrêtés