-------------------------------------------------
[25/03/2020] - ~4mins - #tips #ssh
-------------------------------------------------
Désolé désolé, j'ai oublié de vous écrire pendant ce confinement ces quelques jours.
Me revoilà \o/
Bon je vous avoue que j'ai pas grand-chose pour vous occuper.
J'ai fouillé fouillé (en vrai j'ai démarré l'ordi).
Et comme d'hab quand il est démarré, j'ai lancé ma connexion ssh vers mon client IRC, démarré mon ptit script pour la musique et lancé mon navigateur web.
Et là, PAF !
Je me suis dit que je pourrai vous écrire à propos des alias SSH.
J'en utilise pas mal, même presque tout le temps.
Dès que je dois me connecter plus de deux fois à une machine je me fais un alias.
Mais pas un alias au sens shell, mais direct dans la conf de mon client ssh.
Ça évite de retenir les détails et compagnie.
Bon là on va pas parler du protocole lui-même mais vraiment d'OpenSSH.
Ça ne sera pas forcément valide avec les autres clients.
Et je n'aborderai que la partie client.
La conf globale se trouve dans */etc/ssh/ssh_config* .
Ce que vous modifiez là-dedans sera appliqué à chaque connexion.
Ce fichier est commenté pour vous expliquer ça d'ailleurs.
Vous pouvez vous amuser à mettre de la conf spécifique à un hôte là-dedans mais c'est pas trop le but.
Il vaut mieux réserver ça à son fichier de conf personnel.
Le fichier de conf perso se trouve dans *~/.ssh/config* .
Il a la même syntaxe que le global mais ne s'applique qu'à votre utilisateur.
Les options que vous définissez ici auront la priorité par rapport au fichier global.
Et d'ailleurs si vous définissez des options directement dans la commande, elles auront la priorité par rapport aux fichiers.
En gros ce fichier va contenir plusieurs blocs de texte, chacun correspondant à un hôte vers lequel vous vous connecter.
La syntaxe est dans ce genre :
{{}}
Host le_nom_de_l'alias
option valeur
option valeur
option valeur
{{}}
Un exemple ultra basique :
{{}}
Host n2
hostname 10.0.0.253
user root
{{}}
Voilà, au lieu de me faire un ssh root@10.0.0.253 maintenant je fais ssh n2 et le tour est joué.
Dans les options les plus intéressantes à mettre dedans il y a :
- le **user** parcequ'on se rapelle jamais duquel c'est.
- le **Port** quand c'est pas celui par défaut.
- le **IdentityFile** car j'imagine que vous avez plusieurs clés SSH différentes.
- le **hostname** en y mettant l'IP comme ça même si le DNS est HS vous pourrez vous connecter en direct (me suis déjà brûlé).
- les **LocalForward** et **RemoteForward** quand vous utilisez des tunnels via SSH pour pas les réécrire à chaque fois.
Bon si vous êtes aussi ~~flem~~astucieux que moi, vous remarquerez vite qu'on peut jouer avec les asterisques.
Je m'explique : j'ai pas mal d'alias pour me connecter à différents containers et je leur donne un ptit nom explicite où je préfixe le nom de l'hyperviseur.
Par exemple j'ai un l'hôte des containers qui s'apelle *Z* et dedans j'ai mon client irc pour chatter.
Et bhé j'ai un alias *Zchat*, tout comme j'ai aussi *Zbackup* mais aussi *Zmail* …
Et bien, figurez-vous que c'est cool d'écrire ssh Zchat mais c'est encore trop long, du coup dans le fichier config j'ai fait un alias comme ça :
{{}}
Host zc*
# Z-Chat
option valeur
option valeur
{{}}
Comme ça je peux écrire ssh zchat ou bien ssh zcatacombes_du_net, vous voyez le genre.
Je peux tout aussi bien me contenter de ssh zc.
Bon c'est une mini-ruse de flemmard j'en conviens, on peut se contenter de définir zc mais quand on a utilisé zchat pendant des années ça permet de faire une transition en douceur.
---------
Voilà n'hésitez pas à abuser de ces alias ssh ça libère la mémoire et ça accélère un poil les affaires et ça permet d'utiliser différentes clé sans se contraindre.
Bon, voilà, c'était léger aujourd'hui.
C'est le bon moment pour aller faire un tour dehors… ha bha non.
------------------------------------
------------------------------------
[25/03/2020] - #tips #ssh
------------------------------------