Fichier de configuration SSH

Catégorie : Geekeries | Tag : , , , , ,
Share

((/public/SSH/ssh.png|SSH|L|SSH, août 2010)) [SSH|tag:SSH] est tout de même un protocole vraiment formidable pour accéder à un serveur distant. Une petite [ligne de commande|tag:Ligne de commande], un mot de passe (et/ou une clef publique) et hop, c’est comme si on était sur la machine qui se situe parfois à je ne sais quelle distance de nous, le tout sécurisé ! Que demander de plus ?%%% Cela dit, si vous êtes comme moi, vous en avez peut-être légèrement marre de taper la ligne de commande de connexion :%%% @@ssh username@monhostquiestparfoisuneadresseIPcompliquee@@%%% Ou pire s’il faut préciser une clef DSA ou RSA :%%% @@ssh -i cheminversmaclefengeneralpastrescourt/maclef username@monhostquiestparfoisuneadresseIPcompliquee@@%%%

Heureusement on peut configurer sa machine (celle sur laquelle on écrit la ligne de commande @@ssh …@@) pour nous faciliter la tâche. Sous [Windows|tag:Windows] ou [Linux|tag:Linux], il suffit de créer (ou modifier) un fichier nommé config dans @@~/.ssh/@@ (le tild ~ représente le répertoire de l’utilisateur. En vrai, sur mon Windows, j’ai dû le mettre dans C:/.ssh/config, mais j’ai installé mon Putty un peu bizarrement.) et de créer un alias pour tous les serveurs auxquels on souhaite se connecter facilement : /// Host alias Hostname monhostquiestparfoisuneadresseIPcompliquee User username Host autreServeur Hostname monAutreServeur User monusername /// Et avec ça, on n’a plus qu’à écrire : @@ssh alias@@ ou @@ssh autreServeur@@ pour se connecter à nos deux serveurs ! Ce qui est tout de même bien plus agréable, non ?%%% Pour préciser le chemin vers une clef publique (DSA ou RSA) : /// Host monServeur1 Hostname serveur1 User moi IdentityFile C:/Documents and Settings/moi/.ssh/cle_dsa /// Pour se connecter en SSH derrière un proxy HTTP : /// Host monServeur1 Hostname serveur1 User moi ProxyCommand connect-proxy -H adresse.du_proxy:port %h %p /// Bien sûr, il n’est pas obligatoire de préciser « Hostname » ou « User », Si je veux simplement configurer le chemin vers mon fichier contenant une clef publique, il me suffit d’utiliser directement le nom du serveur après « Host » et de préciser « IdentifyFile ». Comme suit : /// Host serveur1 IdentityFile C:/Documents and Settings/moi/.ssh/cle_dsa /// Du coup, à chaque fois que je tenterai de me connecter au serveur « serveur1″, la clef publique sera automatiquement utilisée.%%% %%% Bref, ce petit fichier de configuration, rapide à remplir, peut faire gagner pas mal de temps. A noter que sous Linux, on peut créer le fichier @@/etc/ssh/ssh_config@@ avec le même contenu, ce qui aura pour effet de rendre ces paramètres accessibles à tous les utilisateurs. !!! On en parle ailleurs * [Man page de ssh_config|http://www.delafond.org/traducmanfr/man/man5/ssh_config.5.html], en français * [Tout un tutoriel sur SSH|http://okki666.free.fr/docmaster/articles/linux123.html] * [Doc Ubuntu sur SSH|http://doc.ubuntu-fr.org/ssh], décidément la communauté d’Ubuntu est toujours aussi active. !!! A noter Je viens de faire un test des plus bizarres. Sur un serveur, lorsque j’écris @@IdentityFile « C:/Documents and Settings/moi/.ssh/cle_dsa »@@, ma clef est bien sauvegardé dans le fichier known_hosts, mais je ne peux accéder au serveur. Par contre, si j’écris @@IdentityFile C:/Documents and Settings/moi/.ssh/cle_dsa@@, ça fonctionne…

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *

*

Vous pouvez utiliser ces balises et attributs HTML : <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>