Il y a quelques destinations SSH auxquelles je vais souvent me connecter et je me demande si, plutôt que de me souvenir de l'adresse IP, je peux créer un alias d'hôte pour elles. J'aimerais pouvoir utiliser ...
ssh -p xx [email protected]
J'ai essayé d'établir cet hôte dans /etc/hosts
et à moins qu'il y ait un service dont j'ai besoin pour le redémarrer, cela n'a aucun effet.
Parfois, il est plus pratique d’avoir des fichiers de configuration dans notre répertoire personnel. Cela évite d'avoir à être root pour éditer des fichiers, mais ceux-ci peuvent également être configurés de manière à ce que les autres utilisateurs n'aient pas accès à ces données. De plus, cette configuration sera sauvegardée avec notre maison et "survivra" à une mise à niveau du système d'exploitation.
Pour ce faire, nous pouvons créer un fichier de configuration ssh, nano ~/.ssh/config
, dans lequel nous pouvons mettre des informations utiles pour une connexion. Une entrée simple peut avoir le contenu suivant:
Host myremote # any name for the Host
HostName 192.168.178.05 # IP, .local, or hostname if defined
User username # your username
Port 22 # port to listen
Il existe de nombreuses autres options, y compris utilisateur et authentification, que vous pouvez donner ici (voir page de manuel de ssh_config )
Nous pouvons alors simplement émettre ce qui suit pour vous connecter à 192.168.178.05 sur le port 22:
ssh myremote
Vous pouvez utiliser une gemme Ruby appelée sshez
. Cela interfère avec votre fichier de configuration et facilite l'ajout d'alias ssh.
Installez gem
gem install sshez
Ajoutez un alias my_alias
par exemple
sshez add my_alias [email protected] -p 1022
Supprimez my_alias
de votre fichier de configuration
sshez remove my_alias
Lister les alias
sshez list
Vous pouvez maintenant vous connecter à ssh my_alias
sans vous soucier d’éditer vous-même votre fichier de configuration.