Linux

Comment configurer un serveur SSH sécurisé sous Linux

Configurez un serveur SSH sécurisé sous Linux en six étapes : installation, utilisateur sudo, clés SSH, désactivation root et mot de passe.

Suggestions populaires
Ctrl K ouvrir · esc fermer
Voir toutes les formations →
4,9/5 · +100 avis
Qualiopi · depuis 2024
511+ villes · 25 pays
OPCO et FNE
Par ··8 min de lecture
← Retour au blogComment configurer un serveur SSH sécurisé sous Linux

Ce que vous allez faire

À la fin de ce tutoriel vous disposerez d'un serveur Linux accessible uniquement par clé SSH. Un utilisateur non-root avec sudo sera créé, la connexion root et l'authentification par mot de passe seront désactivées. L'ensemble prend moins d'une heure sur une machine fraîche.

Prérequis

  • Serveur Linux avec accès root initial (Debian, Ubuntu ou dérivé récent)
  • Terminal ouvert et connexion SSH existante
  • Droits sudo ou root
  • Clé publique/privée générée sur votre poste client

Étape 1 — Installer OpenSSH

L'installation du paquet openssh-server active le service et crée les clés hôte. C'est la base pour configurer un serveur ssh sécurisé sous linux.

bash
sudo apt update && sudo apt install openssh-server -y
sudo systemctl enable --now ssh

Étape 2 — Créer un utilisateur non-root avec sudo

Évitez de travailler en root permanent. Créez un utilisateur dédié et ajoutez-le au groupe sudo.

bash
sudo adduser deploy
sudo usermod -aG sudo deploy

Étape 3 — Générer et copier la clé SSH

Sur votre poste client, générez une paire de clés Ed25519 puis copiez la clé publique sur le serveur.

bash
ssh-keygen -t ed25519 -C "deploy@serveur"
ssh-copy-id deploy@IP_DU_SERVEUR

Étape 4 — Configurer sshd_config

Modifiez le fichier de configuration pour renforcer la sécurité. Gardez toujours une session ouverte pendant les tests.

bash
sudo nano /etc/ssh/sshd_config
ini
PermitRootLogin no
PasswordAuthentication no
PubkeyAuthentication yes
PermitEmptyPasswords no
ClientAliveInterval 300
ClientAliveCountMax 2

Étape 5 — Appliquer les changements et tester

Redémarrez le service et vérifiez que la nouvelle configuration est prise en compte.

bash
sudo systemctl restart ssh
sudo sshd -t

Étape 6 — Configurer le pare-feu UFW

Limitez l'accès au port 22 uniquement depuis les adresses nécessaires.

bash
sudo ufw allow from VOTRE_IP to any port 22
sudo ufw enable

Vérifier que tout fonctionne

Depuis votre poste client, ouvrez une nouvelle connexion et confirmez que l'authentification par mot de passe est refusée.

bash
ssh -o PasswordAuthentication=no deploy@IP_DU_SERVEUR

Erreurs fréquentes

Permission denied (publickey)

La clé n'a pas été copiée ou les permissions sur ~/.ssh sont incorrectes. Exécutez chmod 700 ~/.ssh et chmod 600 ~/.ssh/authorized_keys sur le serveur.

Connection refused après redémarrage SSH

Une erreur de syntaxe dans sshd_config bloque le service. Vérifiez avec sudo sshd -t avant de redémarrer.

Accès coupé après modification du pare-feu

UFW bloque le port 22. Depuis la console physique du serveur, exécutez sudo ufw allow 22.

Aller plus loin

Ajoutez fail2ban, configurez des certificats SSH ou mettez en place un bastion pour plusieurs serveurs.

Se former avec Learni

Maîtriser PuTTY : Le client SSH et Telnet pour l’administration à distance

Administrateurs système et techniciens réseau. Installer, configurer PuTTY et établir des connexions sécurisées. 1 journée, niveau Novice, distanciel, 1400 € HT par participant. Détails

Maîtriser PuTTY : Sécuriser et Gérer ses Connexions SSH

Administrateurs système débutants. Gérer les clés SSH et authentification via PuTTYgen. 1 journée, niveau Novice, distanciel, 1400 € HT par participant. Détails

Maîtriser SSH : Connexion Sécurisée aux Serveurs Linux

Administrateurs systèmes et développeurs. Configurer un serveur SSH et gérer les authentifications avancées. 1 journée, niveau Intermédiaire, distanciel, 1400 € HT par participant. Détails

Besoin d'un accompagnement sur mesure ? Devis sous 48 h.

FAQ

Combien de temps faut-il pour configurer un serveur SSH sécurisé sous Linux ?

Moins d'une heure si les prérequis sont réunis. Les six étapes se suivent sans interruption.

Quelles distributions Linux sont compatibles ?

Toutes les distributions basées sur Debian ou Ubuntu récentes. Les commandes apt sont identiques.

Puis-je conserver l'accès root après la configuration ?

Non. La désactivation de PermitRootLogin est obligatoire pour réduire la surface d'attaque.

Que faire si je perds l'accès après modification de sshd_config ?

Reconnectez-vous via la console physique du serveur ou via un autre utilisateur encore valide.

Aller plus loin

Se former sur ce sujet avec Learni

Ce tutoriel couvre l'essentiel. Ces trois formations intra-entreprise vont plus loin : cas réels, environnement de votre SI, formateur praticien.

Maîtriser PuTTY : Le client SSH et Telnet pour l’administration à distance

1 journée · distanciel · Novice

1400 € HT / participant

Voir la formation

Maîtriser PuTTY : Sécuriser et Gérer ses Connexions SSH

1 journée · distanciel · Novice

1400 € HT / participant

Voir la formation

Maîtriser SSH : Connexion Sécurisée aux Serveurs Linux

1 journée · distanciel · Intermédiaire

1400 € HT / participant

Voir la formation

Une équipe à former sur ce sujet ? Devis sous 48 h

Votre formation professionnelle partout

Construisons
votre prochain
parcours.

30 minutes avec un conseiller formation. Sans engagement. Sans argumentaire commercial maquillé en démo.

Réponse sous 24 h · Qualiopi · OPCO
WhatsApp