SSH est la porte d’entree de votre serveur Linux. Chaque serveur expose a internet recoit des milliers de tentatives de connexion par force brute quotidiennement. Ce guide vous accompagne a travers 12 etapes concretes pour renforcer SSH.
Etape 1 : Desactiver la Connexion Root
PermitRootLogin no
Etape 2 : Utiliser l’Authentification par Cle
ssh-keygen -t ed25519 -C "votrenom@poste"
ssh-copy-id -i ~/.ssh/id_ed25519.pub user@ip-serveur
Etape 3 : Desactiver l’Authentification par Mot de Passe
PasswordAuthentication no
Etape 4 : Changer le Port SSH
Port 2222
Etape 5 : Protocole SSH 2 Uniquement
Protocol 2
Etape 6 : Limiter l’Acces Utilisateur
AllowUsers deployer admin
AllowGroups sshusers
Etape 7 : Timeout d’Inactivite
ClientAliveInterval 300
ClientAliveCountMax 2
Etape 8 : Algorithmes de Chiffrement Forts
KexAlgorithms curve25519-sha256,curve25519-sha256@libssh.org
Ciphers chacha20-poly1305@openssh.com,aes256-gcm@openssh.com
Etape 9 : Installer Fail2ban
sudo apt install fail2ban -y
Etape 10 : Configurer UFW
sudo ufw default deny incoming
sudo ufw allow 2222/tcp comment 'SSH'
sudo ufw enable
Etape 11 : Authentification a Deux Facteurs
sudo apt install libpam-google-authenticator -y
google-authenticator
Etape 12 : Fichier SSH Config
Host monserveur
HostName 203.0.113.50
Port 2222
User deployer
IdentityFile ~/.ssh/id_ed25519
Conclusion
Le renforcement SSH n’est pas optionnel pour tout serveur expose a internet. Les etapes les plus impactantes sont l’authentification par cle (Etape 2), la desactivation des mots de passe (Etape 3) et l’installation de fail2ban (Etape 9). Combinees, elles eliminent plus de 99% des attaques SSH courantes.