Есть несколько SSH-адресов, к которым я буду часто подключаться, и мне интересно, смогу ли я, вместо того, чтобы запомнить IP-адрес, создать для них псевдоним хоста. Я хотел бы иметь возможность использовать ...
ssh -p xx user@domain.ssh
Я пытался установить этот хост в /etc/hosts
, и если нет службы, которая мне нужна для перезапуска, она не имела никакого эффекта.
Иногда удобнее иметь файлы конфигурации в нашем домашнем каталоге. Это позволяет избежать необходимости быть пользователем root для редактирования файлов, а также их можно настроить таким образом, чтобы другие пользователи не имели доступа к этим данным. Кроме того, эта конфигурация будет сохранена в нашем доме, а также «выживет» при обновлении ОС.
Для этого мы можем создать конфигурационный файл ssh nano ~/.ssh/config
, в который мы можем вставить ценную информацию для соединения. Простая запись может иметь следующее содержание:
Host myremote # any name for the host
HostName 192.168.178.05 # IP, .local, or hostname if defined
User username # your username
Port 22 # port to listen
Есть много других опций, включая пользователя и аутентификацию, которые вы можете указать здесь (см. manpage для ssh_config )
Мы затем можно просто выполнить следующее для подключения к 192.168.178.05 через порт 22:
ssh myremote
Вы можете использовать рубиновый камень под названием sshez
. Он взаимодействует с вашим конфигурационным файлом и облегчает добавление псевдонимов ssh.
Установить гем
gem install sshez
Добавить псевдоним my_alias
, например,
sshez add my_alias root@example.com -p 1022
Удалить my_alias
из вашего файла конфигурации
sshez remove my_alias
Список псевдонимов
sshez list
Теперь вы можете подключиться к ssh my_alias
, не беспокоясь о редактировании вашего файла конфигурации самостоятельно.