Commande Linux
ssh
secure shell
"Se connecter à un serveur distant de façon sécurisée. La téléportation des informaticiens."
Réseau ⭐⭐ Intermédiaire 🔥 Très fréquente

C'est quoi, ssh ?

SSH (Secure Shell) établit une connexion chiffrée entre ton ordinateur et un serveur distant. Tu obtiens un terminal sur le serveur, exactement comme si tu y étais physiquement.

💡 L'analogie : ssh, c'est comme téléporter ton clavier et ton écran dans la salle serveur à l'autre bout du monde — avec un tunnel chiffré inviolable.
Connexion basique
# Syntaxe : ssh utilisateur@adresse
$ ssh ubuntu@141.145.222.61

# Avec un port différent (défaut = 22)
$ ssh -p 2222 ubuntu@monserveur.com

# Avec une clé privée (recommandé)
$ ssh -i ~/.ssh/ma-cle.pem ubuntu@monserveur.com

Les clés SSH — l'authentification sans mot de passe

Les clés SSH remplacent les mots de passe par un système cryptographique. Plus sécurisé, plus pratique.

Configurer les clés SSH
# 1. Générer une paire de clés
$ ssh-keygen -t ed25519 -C "mon@email.fr"

# 2. Envoyer la clé publique sur le serveur
$ ssh-copy-id ubuntu@monserveur.com

# 3. Connexion sans mot de passe !
$ ssh ubuntu@monserveur.com
Welcome to Ubuntu 22.04 LTS

Port forwarding — les tunnels SSH

Tunnels SSH
# Accéder à un port distant via localhost
$ ssh -L 8080:localhost:80 user@serveur
# → http://localhost:8080 accède au port 80 du serveur

# Tunnel en arrière-plan (sans shell)
$ ssh -N -f -L 5432:localhost:5432 user@serveur
# → Accès à PostgreSQL distant comme s'il était local

Fichier de config SSH

~/.ssh/config
# Créer des alias de connexion
Host oracle
  HostName 141.145.222.61
  User ubuntu
  IdentityFile ~/.ssh/ma-cle.pem

# Ensuite, connexion simplifiée :
$ ssh oracle # au lieu de ssh -i ~/.ssh/ma-cle.pem ubuntu@141.145.222.61
← Précédent
chmod
Suivant →
scp