Як налаштувати ім'я сервера псевдоніму


15

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

ssh server

Замість:

ssh server.subdomain.domain.com

У мене є кілька субдоменів, якими я користуюся. Як це встановити?

PS: Я не вважаю це дурдом, оскільки інші подібні відповіді не стосуються факту зміни IP-адреси.


~/.ssh/configі /etc/resolve.cnfнижче - обидва відмінні відповіді.
Джесс

Відповіді:


20

Використовувати файл ~/.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 виглядає так:

пошук домену1.com domain2.com domain3.com
сервер імен 1.2.3.4
сервер імен 5.6.7.8

Змініть рядок пошуку таким чином:

пошук domain1.com domain2.com domain3.com subdomain.domain.com

Ви можете розмістити subdomain.domain.com вгорі цього списку, якщо ви хочете, щоб його шукали спочатку.


1
Мені подобається ваша відповідь. Оскільки це дозволить використовувати назву сортувальника сервера в декількох додатках. Тим не менш, я думаю, що це може генерувати більше DNS-трафіку з кожною спробою з'єднання - але я не став би на це робити ставку.
mnmnc

1
Багато сучасних операційних систем мають можливість кешувати відповіді на dns-запити локально. Перший раз, коли запит запитується, відповідь буде надходити з dns, але наступні запити відповідатимуть з кешу, поки не закінчиться ttl запису. Ви можете переглядати вміст кешу у вікнах з "ipconfig / displaydns" та "sudo killall -INFO mDNSResponder", а потім переглядати вміст /var/log/system.log на mac osx.
Користувач123456

Тому я здогадуюсь, якщо запис буде кешовано, а термін дії не закінчився - якщо в цей момент ip пункту призначення зміниться - ви отримаєте час очікування з'єднання. Якщо я щось не пропускаю?
mnmnc

1

Якщо це лише для ssh, ви можете налаштувати ім'я 'скорочення' у ~/.ssh/config

Після цього ssh serverбуде працювати кожен раз, припускаючи, що fqdn вирішує IP-адресу.

Докладні відомості див. На http://kb.mediatemple.net/questions/1625/Using+an+SSH+Config+File або на сторінці man для ssh_config.


1

Ви можете додати псевдонім у своєму .bashrcабо .zshrc:

alias server1='ssh server1'

~/.ssh/configНаприклад, у вашому прикладі доданий сервер1 :

Host server1
Hostname address
User username-on-this-server
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.