14

Я хочу настроить псевдоним сервера на моем ноутбуке (Linux). Я не хочу использовать файл /etc/hosts/ так как IP-адрес удаленного сервера меняется. Причина, по которой я хочу это сделать, заключается в том, что имя сервера имеет длину 27 символов. Я хочу сделать это:

ssh server

Вместо:

ssh server.subdomain.domain.com

У меня есть несколько поддоменов, которые я использую. Как мне это настроить?

PS: я не считаю это обманом, потому что другие подобные ответы не учитывают тот факт, что IP-адрес изменится.

4 ответа4

19

Используйте файл ~/.ssh/config

пример содержания:

Host jane
HostName long.server.name
User root

тогда вы можете использовать ssh jane вместо ssh root@long.server.name

Если IP-адрес изменяется, и вы не знаете revDNS этого сервера, вы можете попробовать использовать команду host 1.0.0.1 где 1.0.0.1 - это IP-адрес - это даст вам текущее имя revDNS, которое вы сможете настроить.

Если имя хоста (обратный DNS) изменяется с изменением ip или ваш сервер находится за NAT - вы можете использовать Dynamic Dns (dyndns.org) и / или использовать переадресацию портов.

7

Чтобы использовать более короткий "ssh сервер" вместо «ssh server.subdomain.domain.com», вам просто нужно добавить «subdomain.domain.com» в поле поиска в /etc/resolv.conf. Если нет поля поиска, вы можете создать его.

Например - предположим, что ваш /etc/resolv.conf выглядит так:

search domain1.com domain2.com domain3.com
nameserver 1.2.3.4
nameserver 5.6.7.8

Измените строку поиска, чтобы она выглядела так:

search domain1.com domain2.com domain3.com subdomain.domain.com

Вы можете разместить subdomain.domain.com в начале этого списка, если вы хотите, чтобы его сначала искали.

1

Если это только для ssh, вы можете настроить «сокращенное» имя в ~/.ssh/config

После этого ssh server будет работать каждый раз, предполагая, что fqdn преобразуется в IP-адрес.

Для получения дополнительной информации см. Http://kb.mediatemple.net/questions/1625/Using+an+SSH+Config+File или справочную страницу для ssh_config.

1

Вы можете добавить псевдоним в ваш .bashrc или .zshrc:

alias server1='ssh server1'

С добавленным server1 в вашем ~/.ssh/config например:

Host server1
Hostname address
User username-on-this-server

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .