Comment configurer un nom de serveur d'alias


15

Je veux configurer un nom de serveur d'alias sur mon ordinateur portable (Linux). Je ne pas veux utiliser le /etc/hosts/fichier depuis l'adresse IP des changements de serveur distant . La raison pour laquelle je veux le faire est que le nom du serveur contient 27 caractères. Je veux faire ça:

ssh server

Au lieu de:

ssh server.subdomain.domain.com

J'ai plusieurs sous-domaines que j'utilise. Comment configurer cela?

PS: Je ne considère pas cela comme une dupe car d'autres réponses similaires ne traitent pas du fait qu'une adresse IP va changer.


~/.ssh/configet /etc/resolve.cnfci-dessous sont deux excellentes réponses.
Jess

Réponses:


20

Utiliser un fichier ~/.ssh/config

exemple de contenu:

Host jane
HostName long.server.name
User root

alors vous pouvez utiliser ssh janeau lieu dessh root@long.server.name

Si l'adresse IP change et que vous ne connaissez pas le revDNS de ce serveur, vous pouvez essayer d'utiliser la commande host 1.0.0.1où 1.0.0.1 est l'adresse IP - cela vous donnera le nom revDNS actuel que vous pourrez configurer.

Si le nom d'hôte (DNS inversé) change avec le changement d'IP ou si votre serveur est derrière un NAT - vous pouvez soit utiliser Dynamic Dns (dyndns.org) et / ou utiliser la redirection de port.


7

Pour utiliser le "serveur ssh" plus court au lieu de "ssh server.subdomain.domain.com", il vous suffit d'ajouter "subdomain.domain.com" au champ de recherche dans /etc/resolv.conf. S'il n'y a pas de champ de recherche, vous pouvez en créer un.

Par exemple, supposez que votre /etc/resolv.conf ressemble à ceci:

recherche domain1.com domain2.com domain3.com
serveur de noms 1.2.3.4
serveur de noms 5.6.7.8

Modifiez la ligne de recherche pour qu'elle ressemble à ceci:

recherche domain1.com domain2.com domain3.com subdomain.domain.com

Vous pouvez placer subdomain.domain.com au début de cette liste si vous souhaitez qu'il soit recherché en premier.


1
J'aime ta réponse. Puisqu'il permettra l'utilisation du nom du trieur du serveur sur plusieurs applications. Pourtant, je pense que cela pourrait générer plus de trafic DNS à chaque tentative de connexion - mais je ne parierais pas sur cela.
mnmnc

1
De nombreux systèmes d'exploitation modernes ont la capacité de mettre en cache localement les réponses aux requêtes DNS. La première fois que l'enregistrement est interrogé, la réponse proviendrait du DNS, mais les requêtes suivantes seraient traitées à partir du cache jusqu'à l'expiration du ttl de l'enregistrement. Vous pouvez afficher le contenu du cache dans les fenêtres avec "ipconfig / displaydns" et avec "sudo killall -INFO mDNSResponder", puis afficher le contenu de /var/log/system.log sur mac osx.
User123456

Donc, je suppose que si l'entrée est mise en cache et n'est pas expirée - si à ce stade, l'ip de la destination change - vous obtiendrez un délai de connexion. A moins que je manque quelque chose?
mnmnc


1

Vous pouvez ajouter un alias dans votre .bashrcou .zshrc:

alias server1='ssh server1'

Avec server1 ajouté dans votre ~/.ssh/configpar exemple:

Host server1
Hostname address
User username-on-this-server
En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.