Secure Shell — protocole de connexion à distance sécurisé. Ce guide couvre l'installation, la configuration par mot de passe et par clé, ainsi que les bonnes pratiques de sécurité.
Sur Debian / Ubuntu, installez le paquet openssh-server :
sudo apt update
sudo apt install openssh-server -y
Activer et démarrer le service :
sudo systemctl enable ssh
sudo systemctl start ssh
Vérifier que le service est actif :
sudo systemctl status ssh
Le fichier principal de configuration SSH se trouve à l'emplacement suivant :
/etc/ssh/sshd_config
Pour éditer le fichier avec les droits nécessaires :
sudo nano /etc/ssh/sshd_config
Configuration minimale pour autoriser la connexion par mot de passe :
Port 2201
LoginGraceTime 20
PermitRootLogin no
MaxAuthTries 2
AllowUsers votre_utilisateur
PasswordAuthentication yes
PubkeyAuthentication yes
ChallengeResponseAuthentication no
UsePAM yes
1 — Générer une paire de clés sur votre machine cliente :
ssh-keygen -t ed25519 -a 100
-a 100 renforce la dérivation de la clé privée (KDF rounds).
Voir la documentation officielle.
2 — Copier la clé publique sur le serveur :
ssh-copy-id -p 2201 utilisateur@IP_DU_SERVEUR
3 — Configuration sécurisée côté serveur (après validation de la clé) :
Port 2201
PermitRootLogin no
MaxAuthTries 2
AllowUsers votre_utilisateur
PasswordAuthentication no
PubkeyAuthentication yes
ChallengeResponseAuthentication no
UsePAM yes
PasswordAuthentication pour renforcer considérablement la sécurité.
Configuration recommandée pour un VPS ou un serveur exposé sur Internet :
# ── Réseau ──────────────────────────────────
Port 2201
AddressFamily inet
ListenAddress 0.0.0.0
# ── Authentification ────────────────────────
PermitRootLogin no
MaxAuthTries 2
LoginGraceTime 20
AllowUsers votre_utilisateur
PasswordAuthentication no
PubkeyAuthentication yes
AuthenticationMethods publickey
# ── Sécurité ────────────────────────────────
X11Forwarding no
AllowTcpForwarding no
ClientAliveInterval 300
ClientAliveCountMax 2
UseDNS no
sudo systemctl restart ssh