Я установил псевдонимы хостов в .ssh/config
, который отлично работает:
Host my-web
HostName 515.346.96.21
Итак, я могу сделать это:
ssh my-web
Но в браузере мне все равно нужно ввести "http://515.346.96.21
". Было бы здорово иметь возможность"http://my-web
".
За исключением использования динамического DNS или написания сценария для синхронизации изменений с /etc/hosts
, есть ли способ более широко использовать псевдонимы в SSH? Я довольно часто создаю и уничтожаю ВМ с разными IP, поэтому постоянно обновляю ~/.ssh/config
.
Вы не можете повторно использовать псевдоним HostName из ~ / .ssh / config в другом месте. Что вы можете сделать, так это обновить файл / etc / hosts записями для ваших хостов, например.
515.346.96.21 myweb
Если подумать, это похоже на путь:
В /etc/hosts
:
192.168.0.27 my-server
В ~/.ssh/config
:
Host my-server
IdentityFile ~/foo.pem
User ubuntu
Вам все равно нужно отредактировать два файла, но, по крайней мере, вы не дублируете никакой информации. Если IP изменится, вы обновите / etc / hosts. Если ключ или пользователь меняются, ваш обновленный .ssh / config. Кроме того, подстановочные знаки имени хоста по-прежнему работают:
/etc/hosts
:
company-server1: 192.168.0.44
company-server2: 192.168.0.45
company-server3: 192.168.0.46
~/.ssh/config
:
Host company-*
IdentityFile ~/foo.pem
User ubuntu
Вы можете просто забыть о настройке псевдонимов где угодно, если используете что-то вроде Авахи. Это позволяет вашей рабочей станции и серверам (даже виртуальным, если вы объединили виртуальную сеть) находить друг друга и обращаться друг к другу по имени.