Outils pour utilisateurs

Outils du site


personnaliser_le_client_ssh

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

personnaliser_le_client_ssh [19/04/2009 16:43] (Version actuelle)
Ligne 1: Ligne 1:
 +{{tag>​ssh configuration ubuntu debian}}
 +====== Personnaliser le client SSH ======
  
 +SSH est un outil très pratique dans le monde de [[linux|Linux]]. Il permet de faire beaucoup de choses entre machines via la ligne de commande, mais également via des interfaces graphiques grâce au X forwarding. On peut aussi faire des translation de port avec le port forwarding tout en restant sécurisé et crypté par la connexion SSH, sans oublier l'​authentification par clé publique et privée et la compression des données.
 +
 +Mais lorsque l'on collectionne les serveurs et les comptes utilisateurs cela devient vite problématique de savoir quelle clé utiliser, quel nom d'​utilisateur pour s'​identifier sur quel serveur...
 +
 +Il convient donc de définir des alias pour chaque serveur en spécifiant automatique les choses qui ne changeront pas, et cela est possible grâce au fichier ~/​.ssh/​config.
 +
 +Voyons ensemble ce qui est possible de faire dans ce fichier, pour que cela fonctionne il suffit tout simplement de coller les exemples dans votre fichier ~/​.ssh/​config.
 +
 +Si vous êtes administrateur d'un parc de serveur, vous pouvez également utiliser le fichier /​etc/​ssh/​ssh_config pour mettre les paramètres à la disposition de tout les utilisateurs de la machine.
 +
 +===== Un exemple simple =====
 +
 +La plupart du temps pour se connecter sur une machine nous faisons :
 +
 +$ ssh utilisateur@serveur.exemple.fr
 +
 +Pour effectuer la même chose nous pouvons ajouter ceci au fichier ~/​.ssh/​config :
 +
 +<​code>​Host serveur
 +Hostname serveur.exemple.fr
 +User utilisateur</​code>​
 +
 +Il suffit ensuite de lancer la commande suivante dans une ligne de commande :
 +
 +<​code>​$ ssh serveur</​code>​
 +
 +===== S'​authentifier avec une clé publique/​privée =====
 +
 +Par défaut, SSH cherche le fichier ~/​.ssh/​id_rsa ou ~/​.ssh/​id_dsa pour vous identifier sur un serveur. Mais si vous devez travailler avec plusieurs clés différentes,​ cela devient vite lassant de devoir spécifier le chemin vers le fichier par l'​option -i. Encore une fois la configuration du fichier ~/​.ssh/​config va nous être très utile. Si nous souhaitons faire ceci :
 +
 +$ ssh -i ~/​.ssh/​id_rsa_serveur_toto utilisateur@toto.exemple.fr
 +
 +Il suffit d'​ajouter ceci dans le fichier ~/​.ssh/​config :
 +
 +<​code>​Host toto
 +Hostname toto.exemple.fr
 +User utilisateur
 +IdentityFile ~/​.ssh/​id_rsa_serveur_toto</​code>​
 +
 +Au final, il suffit simplement de taper :
 +
 +<​code>​$ ssh toto</​code>​
 +
 +=====  Transfert de port =====
 +
 +Il est possible en ssh de faire des transferts de port, pour cela il faut lancer cette commande :
 +
 +$ ssh -L 9000:​localhost:​80 -i .ssh/​id_rsa_serveur utilisateur@serveur.exemple.fr
 +
 +En mettant ceci dans le fichier ~/​.ssh/​config :
 +
 +<​code>​Host serveur
 +Hostname serveur.exemple.fr
 +User utilisateur
 +IdentityFile ~/​.ssh/​id_rsa_serveur
 +Localforward 9000 127.0.0.1:​80</​code>​
 +
 +pour au final taper ceci :
 +
 +<​code>​$ ssh serveur</​code>​
 +
 +===== Plus d'​options =====
 +
 +Les 3 exemples ci-dessus présentent les options les plus utiles pour le client SSH mais beaucoup d'​autres existent et peut être certaines que vous avez l'​habitude d'​utiliser. Pour connaître la façon d'​ajouter votre option favorite dans le fichier ~/​.ssh/​config n'​hésitez pas à consulter le man :
 +
 +<​code>​$ man ssh_config</​code>​
personnaliser_le_client_ssh.txt · Dernière modification: 19/04/2009 16:43 (modification externe)