Merci le cours de READ qui m'a appris ça !
TLDR
S'il n'existe pas, on crée le fichier .ssh/config
dans lequel on peut ajouter un host pour faciliter les connexions en ssh. Exemple :
Host hpc
HostName hpc.pedago.ensiie.fr
User prenom.nom
On se connecte alors en ssh plus aisément.
ssh -Y hpc
scp -r hpc:S4/READ/Cours/ .
sftp -r pedago-ext:S4/READ/Cours/ .
Problème
Au début, pour faciliter mes connexions en ssh sur ma session HPC de l'école, j'avais créé un alias
dans mon .zshrc
.
alias hpc = "ssh prenom.nom@hpc.pedago.ensiie.fr
De ce fait, je pouvais me connecter juste en tapant hpc
dans mon terminal.
C'est sympa, mais quand je souhaitais copier en ssh des fichiers ou des dossiers avec la commande scp
, je devenais vite limité.
Solution
De ce fait, il existe une solution qui consiste à enregistrer un Host
dans OpenSSH, dans lequel on peut préciser le nom de l'host (qui serait l'adresse à laquelle on souhaite accéder) ainsi qu'un nom d'utilisateur.
Host host_raccourci
HostName nom_host
User nom_utilisateur
Le nom de host_raccourci
est libre. nom_host
est une adresse (par exemple ou hpc.pedago.ensiie.fr
ou perso3.iiens.net
) et nom_utilisateur
est votre nom d'utilisateur associé au host (par exemple prenom.nom
ou ariseid
).
On peut ajouter de telles configurations dans le fichier ~/.ssh/config
(je ne l'avais pas par défaut sur MacOS, donc on peut le créer nous-même).
En clair, imaginons que je configure :
Host hpc
HostName hpc.pedago.ensiie.fr
User prenom.nom
Au lieu de faire à chaque connexion en ssh la commande :
ssh prenom.nom@hpc.pedago.ensiie.fr
On peut faire simplement :
ssh hpc
Joli gain de temps, n'est-ce pas ? :p
Ce qui est pratique aussi, c'est pour effectuer des copies en ssh. En effet, au lieu, par exemple, de faire la commande :
scp -r prenom.nom@hpc.pedago.ensiie.fr:S4/READ/Cours/ .
On peut faire :
scp -r hpc:S4/READ/Cours/ .
Bien évidemment, on peut ajouter autant de host qu'on le souhaite.