Outils pour utilisateurs

Outils du site


sysadmin:linux:cli:ssh

SSH (client)

Notes concernant l'usage du client SSH.

Le fichier config

Pour ne pas avoir à définir systématiquement les options de connexion sur la ligne de commande, on peut s’appuyer sur le fichier .ssh/config avec la syntaxe suivante :

Host hostname1
    SSH_OPTION value
    SSH_OPTION value

Host hostname2
    SSH_OPTION value

Host * !excludePattern
    SSH_OPTION value
La directive Host peut contenir un ou plusieurs motifs permettant de sélectionner quelles options appliquer à l'hote.

Exemple de fichier ssh config

Host targaryen
    HostName 192.168.1.10
    User daenerys
    Port 7654
    IdentityFile ~/.ssh/targaryen.key

Host tyrell
    HostName 192.168.10.20

Host martell
    HostName 192.168.10.50

Host *ell
    user oberyn

Host * !martell
    LogLevel INFO

Host *
    User root
    Compression yes

Lorsqu'on invoque la commande ssh targaryen le client ssh consulte le fichier de configuration et applique les options définies spécifiquement pour l’hôte targaryen. Il continue de vérifier si d'autres motifs correspondent séquentiellement.

La correspondance suivante est * !martell qui désigne “tout hôte sauf martell”, l'option définie ici sera donc utilisée.

La dernière correspondance désigne “tous les hôtes”, mais client utilisera seulement l'option Compression car User a déjà été définie.

La liste complète des options utilisées par le client sera donc :

HostName 192.168.1.10
User daenerys
Port 7654
IdentityFile ~/.ssh/targaryen.key
LogLevel INFO
Compression yes

Redéfinition des options

Le client ssh détermine quelles options utiliser en évaluant les éléments suivants dans cet ordre :

  1. Options spécifiée sur la ligne de commande ;
  2. Options définies dans le fichier ~/.ssh/config ;
  3. Options définies dans le fichier /etc/ssh/ssh_config.

Références

sysadmin/linux/cli/ssh.txt · Dernière modification : 2025/11/09 12:52 de yoann