{{tag>sysadmin cli ssh ssh-client}} ====== 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 : - Options spécifiée sur la ligne de commande ; - Options définies dans le fichier ''~/.ssh/config'' ; - Options définies dans le fichier ''/etc/ssh/ssh_config''. ===== Références ===== * [[https://linuxize.com/post/using-the-ssh-config-file/|Utiliser le fichier fichier SSH Config (linuxize.com) (en) ]]