nom associé avec ip pour ssh?

32

Disons que j'ai juste une adresse IP pour un serveur et que je n'ai pas de domaine avec (c'est juste un serveur de base de données, donc il n'a pas besoin de domaine). Je ne veux pas avoir à me souvenir de l'adresse IP à chaque fois, alors y a-t-il un moyen d'utiliser la syntaxe comme ssh username@databaseou quelque chose?

Matthieu
la source
Il s'agit principalement d'une erreur de terminologie. Remplacez le mot «domaine» par un mot correct «nom» et vous le verrez immédiatement. "Je dis que le serveur n'a pas besoin d'un nom, donc je voudrais vraiment y faire référence par son nom" est une contradiction. Peut-être que vos vraies questions devraient être "Qu'est-ce qu'un domaine? Comment ajouter un nouveau nom à un domaine?"
kubanczyk

Réponses:

52

Si vous ne voulez que le nom de ssh et ssh uniquement, vous pouvez ajouter un nom à votre configuration ssh dans ~ / .ssh / config

Par exemple, votre fichier de configuration pourrait ressembler à ceci:

Host database
    HostName <real IP address or hostname here>
    User username

Ensuite, vous pouvez taper ssh databasesur la ligne de commande et ssh fera automatiquement ssh [email protected]pour vous.

David
la source
Si dans le champ HostName je ne peux mettre que le nom d'hôte ou l'IP, alors comment spécifier l'association hostname-IP?
Ramy Al Zuhouri
1
@RamyAlZuhouri vous mettriez le nom d'hôte dans le champ Host, comme "base de données" dans l'exemple, et (juste) l'adresse IP dans le champ HostName.
David
8

Ajoutez-y une entrée /etc/hostssur le système dont vous dépendez.

La syntaxe est

1.1.1.1 hostname

Cela fonctionne sur Linux et Mac. Pour Windows, le fichier est c:\windows\system\drivers\etc\hosts.

PaulR
la source
1
Cela fonctionnera certainement, mais sachez que le fichier hosts est parfois remplacé par les gestionnaires de réseau. Vous devez également avoir des privilèges root, ce n'est donc une option que si vous avez root.
Freedom_Ben
2

les clients ont 2 ou 3 façons d'associer un nom à une adresse IP.

1) DNS, mais cela implique un nom d'hôte et un domaine.

2) fichier hôte, vous pouvez ajouter n'importe quel nom dans le fichier hôte des clients et il sera ensuite utilisé. Ajoutez la ligne '192.168.1.1 database' dans / etc / hosts pour associer la base de données de noms à l'adresse 192.168.1.1. Voir http://en.wikipedia.org/wiki/Hosts_%28file%29 pour des détails plus spécifiques et des emplacements spécifiques au système d'exploitation.

3) NIS, les ordinateurs Solaris peuvent utiliser NIS pour partager des noms d'hôtes pour plusieurs clients.

Mike
la source
1
Ou LDAP. Ou mDNS. Ou tout mécanisme compatible NSS.
Ignacio Vazquez-Abrams
0

Vous avez juste besoin d'ajouter le databasemappage nom-IP à votre /etc/hostsfichier. Le fichier d'hôtes peut être facilement modifié. Vous y trouverez quelques entrées.

Ce nom peut être utilisé pour n'importe quelle connexion, pas seulement SSH.

Khaled
la source
0

Créez un DynDNS , c'est gratuit, en cinq minutes vous pouvez ajouter un enregistrement A qui pointe vers votre IP.

Par exemple: créez database1.dyndns.org comme un enregistrement A pointant votre ip
Vous pouvez y accéder de partout en utilisant:

ssh [email protected]

Matias Dominoni
la source