Si vous accédez fréquemment à de nombreux systèmes distants différents via SSH, cette astuce vous fera gagner du temps. Vous pouvez créer un alias SSH pour les systèmes fréquemment consultés via SSH. De cette façon, vous n'avez pas besoin de vous souvenir de tous les différents noms d'utilisateur, noms d'hôte, numéros de port ssh et adresses IP, etc. s).
Créer un alias SSH sous Linux
Avant de connaître cette astuce, je me connecte généralement à un système distant via SSH en utilisant l'une des méthodes suivantes.
Utilisation de l'adresse IP :
$ ssh 192.168.225.22
Ou en utilisant le numéro de port, le nom d'utilisateur et l'adresse IP :
$ ssh -p 22 [email protected]
Ou en utilisant le numéro de port, le nom d'utilisateur et le nom d'hôte :
$ ssh -p 22 [email protected]
Ici,
22
est le numéro de port,sk
est le nom d'utilisateur du système distant,192.168.225.22
est l'IP de mon système distant,server.example.com
est le nom d'hôte du système distant.
Je pense que la plupart des utilisateurs et/ou administrateurs débutants de Linux utiliseraient SSH dans un système distant de cette façon. Cependant, si vous utilisez SSH sur plusieurs systèmes différents, mémoriser tous les noms d'hôte/adresses IP, les noms d'utilisateur sont un peu difficiles, sauf si vous les écrivez sur un papier ou les enregistrez dans un fichier texte. Pas de soucis! Cela peut être facilement résolu en créant un alias (ou un raccourci) pour les connexions SSH.
Nous pouvons créer un alias pour les commandes SSH de deux manières.
Méthode 1 - Utilisation du fichier de configuration SSH
C'est ma façon préférée de créer des alias.
Nous pouvons utiliser le fichier de configuration par défaut SSH pour créer un alias SSH. Pour ce faire, modifiez ~/.ssh/config
fichier (si ce fichier n'existe pas, créez-en un) :
$ vi ~/.ssh/config
Ajoutez tous les détails de vos hôtes distants comme ci-dessous :
Host webserver HostName 192.168.225.22 User sk Host dns HostName server.example.com User root Host dhcp HostName 192.168.225.25 User ostechnix Port 2233
Remplacez les valeurs de Host
, Hostname
, User
et Port
avec le vôtre. Une fois que vous avez ajouté les détails de tous les hôtes distants, enregistrez et quittez le fichier.
Vous pouvez maintenant vous connecter en SSH aux systèmes avec les commandes :
$ ssh webserver
$ ssh dns
$ ssh dhcp
C'est aussi simple que cela.
Regardez la capture d'écran suivante.
Voir? Je n'ai utilisé que le nom d'alias (c'est-à-dire webserver ) pour accéder à mon système distant dont l'adresse IP est 192.168.225.22 .
Veuillez noter que cela s'applique uniquement à l'utilisateur actuel. Si vous souhaitez rendre les alias disponibles pour tous les utilisateurs (à l'échelle du système), ajoutez les lignes ci-dessus dans /etc/ssh/ssh_config
fichier.
Vous pouvez également ajouter de nombreuses autres choses dans le fichier de configuration SSH. Par exemple, si vous avez configuré l'authentification basée sur une clé SSH , mentionnez l'emplacement du fichier clé SSH comme ci-dessous.
Host ubuntu HostName 192.168.225.50 User senthil IdentityFIle ~/.ssh/id_rsa_remotesystem
Assurez-vous d'avoir remplacé le nom d'hôte, le nom d'utilisateur et le chemin du fichier clé SSH par les vôtres.
Connectez-vous maintenant au serveur distant avec la commande :
$ ssh ubuntu
De cette façon, vous pouvez ajouter autant d'hôtes distants auxquels vous souhaitez accéder via SSH et y accéder rapidement en utilisant leur nom d'alias.
Méthode 2 - Utilisation des alias Bash
C'est un moyen rapide et sale de créer des alias SSH pour une communication plus rapide. Vous pouvez utiliser la commande alias pour rendre cette tâche beaucoup plus facile.
Ouvrez ~/.bashrc
ou ~/.bash_profile
fichier :
Ajoutez des alias pour chaque connexion SSH une par une comme ci-dessous.
alias webserver='ssh [email protected]' alias dns='ssh [email protected]' alias dhcp='ssh [email protected] -p 2233' alias ubuntu='ssh [email protected] -i ~/.ssh/id_rsa_remotesystem'
Encore une fois, assurez-vous d'avoir remplacé l'hôte, le nom d'hôte, le numéro de port et l'adresse IP par les vôtres. Enregistrez le fichier et quittez.
Ensuite, appliquez les modifications à l'aide de la commande :
$ source ~/.bashrc
Ou,
$ source ~/.bash_profile
Dans cette méthode, vous n'avez même pas besoin d'utiliser "ssh alias-name"
commande. Au lieu de cela, utilisez uniquement le nom d'alias comme ci-dessous.
$ webserver $ dns $ dhcp $ ubuntu
Ces deux méthodes sont très simples, mais utiles et beaucoup plus pratiques pour ceux qui utilisent souvent SSH dans plusieurs systèmes différents. Utilisez l'une des méthodes susmentionnées qui vous convient pour accéder rapidement à vos systèmes Linux distants via SSH.
Suggestion de lecture :
- Autoriser ou refuser l'accès SSH à un utilisateur ou à un groupe particulier sous Linux
- Comment se connecter en SSH à un répertoire particulier sous Linux
- Comment empêcher la session SSH de se déconnecter sous Linux
- 4 façons de maintenir une commande en cours d'exécution après la déconnexion de la session SSH
- SSLH :partager un même port pour HTTPS et SSH
- Comment savoir si un utilisateur utilise une authentification SSH basée sur un mot de passe ou une clé sous Linux