Qu’est-ce que SSH ?

SSH (Secure Shell) est un protocole qui vous permet de vous connecter à votre serveur à distance de manière sécurisée et d’exécuter des commandes en ligne de commande.

Se connecter en SSH

Depuis Linux ou macOS

Ouvrez un terminal et entrez :
ssh root@VOTRE_IP_VPS
Si vous avez changé le port SSH (recommandé) :
ssh -p VOTRE_PORT root@VOTRE_IP_VPS

Depuis Windows

Option 1 : PowerShell ou Invite de commandes (Windows 10/11)
ssh root@VOTRE_IP_VPS
Option 2 : PuTTY (client graphique)
  1. Téléchargez PuTTY sur putty.org
  2. Entrez l’adresse IP dans le champ Host Name
  3. Port : 22
  4. Cliquez sur Open

Authentification par clé SSH

L’authentification par clé SSH est plus sécurisée que le mot de passe. Elle consiste en une paire de clés : une clé privée (sur votre ordinateur) et une clé publique (sur le serveur).

Générer une paire de clés

# Générer une clé ED25519 (recommandé)
ssh-keygen -t ed25519 -C "votre@email.com"

# Ou une clé RSA 4096 bits
ssh-keygen -t rsa -b 4096 -C "votre@email.com"
Appuyez sur Entrée pour accepter l’emplacement par défaut (~/.ssh/id_ed25519). Définissez une passphrase pour une sécurité maximale.

Copier la clé sur le serveur

# Méthode automatique
ssh-copy-id -i ~/.ssh/id_ed25519.pub root@VOTRE_IP_VPS

# Méthode manuelle
cat ~/.ssh/id_ed25519.pub | ssh root@VOTRE_IP_VPS "mkdir -p ~/.ssh && cat >> ~/.ssh/authorized_keys"

Désactiver l’authentification par mot de passe

Une fois les clés configurées, désactivez les connexions par mot de passe :
# Sur votre serveur
sudo nano /etc/ssh/sshd_config

# Modifier :
PasswordAuthentication no
ChallengeResponseAuthentication no

# Redémarrer SSH
sudo systemctl restart sshd
Avant de désactiver les mots de passe, vérifiez que votre connexion par clé fonctionne dans une session SSH séparée. Sinon vous serez bloqué hors de votre serveur.

Fichier de configuration SSH local

Créez ~/.ssh/config sur votre ordinateur pour simplifier les connexions :
~/.ssh/config
Host mon-vps
    HostName VOTRE_IP_VPS
    User votre-utilisateur
    Port 22
    IdentityFile ~/.ssh/id_ed25519
Connectez-vous ensuite simplement avec :
ssh mon-vps

Transférer des fichiers via SCP ou SFTP

SCP (copie sécurisée)

# Envoyer un fichier vers le serveur
scp fichier-local.txt root@VOTRE_IP_VPS:/chemin/destination/

# Télécharger un fichier depuis le serveur
scp root@VOTRE_IP_VPS:/chemin/fichier.txt ./fichier-local.txt

# Transférer un dossier entier
scp -r dossier-local/ root@VOTRE_IP_VPS:/chemin/destination/

SFTP avec FileZilla

Configurez FileZilla avec SFTP et vos clés SSH pour un transfert graphique de fichiers. Voir les instructions →

Console VNC (accès d’urgence)

Si vous perdez l’accès SSH (mauvaise configuration du firewall, service SSH arrêté), utilisez la console VNC depuis votre espace client KennHosting :
  1. Espace client → votre VPS → Console VNC
  2. Une fenêtre de console s’ouvre directement dans votre navigateur
  3. Connectez-vous avec vos identifiants et corrigez le problème

Résolution de problèmes SSH

Connexion refusée (Connection refused) :
  • Vérifiez que le service SSH est démarré : systemctl status sshd
  • Vérifiez le firewall : ufw status — assurez-vous que le port SSH est autorisé
Timeout (pas de réponse) :
  • Votre firewall bloque peut-être le port SSH
  • Utilisez la console VNC pour débloquer la situation
Permission denied (publickey) :
  • Vérifiez que votre clé publique est bien dans ~/.ssh/authorized_keys sur le serveur
  • Vérifiez les permissions : chmod 700 ~/.ssh && chmod 600 ~/.ssh/authorized_keys