У меня есть файл конфигурации ssh, который выглядит так:
Host my.host.com
HostName my.host.com
User michael
Port 1234
Если я наберу «ssh my.host.com» в командной строке, он правильно подключится к «my.host.com» с правильным именем пользователя и нестандартным портом.
Фактическое имя хоста довольно мало печатает, поэтому мне пришло в голову, что я могу сэкономить много печатания, создав хост с укороченным именем, поэтому я скопировал рабочий раздел выше и создал более короткое имя хоста:
Host m
HostName my.host.com
User michael
Port 1234
Но когда я пытаюсь подключиться, я получаю сообщение об ошибке:
ssh: Could not resolve hostname m: Name or service not known
Я попробовал это с -v
и не получил никакой полезной информации:
OpenSSH_6.6.1, OpenSSL 1.0.1f 6 Jan 2014 debug1: Reading configuration
data /root/.ssh/config debug1: Reading configuration data
/etc/ssh/ssh_config debug1: /etc/ssh/ssh_config line 19: Applying
options for * ssh: Could not resolve hostname m: Name or service not
known
Я пытался добавить больше -v
s, чтобы увидеть, даст ли он более подробный вывод, но никакой дополнительной информации не было показано.
Я пробовал бегать с -v
с другим псевдонимом я настроил для другого хоста и получил:
OpenSSH_6.6.1, OpenSSL 1.0.1f 6 Jan 2014
debug1: Reading configuration data /root/.ssh/config
debug1: /root/.ssh/config line 11: Applying options for z
Похоже, что по какой-то причине ssh игнорирует мои параметры для хоста "m", но не для хоста "z". Единственное различие между хостами, которое кажется потенциально значимым, заключается в том, что «z» находится в другом месте в Интернете, а «m» в локальной сети.
Моей первой мыслью было, может быть, мне пришлось что-то перезапустить, чтобы изменения вступили в силу, но это ssh, а не sshd.
/root/.ssh/config
а не другой пользователь$HOME/.ssh/config
? Я согласен, что перезагрузка не требуется.Ответы:
Проблема решена - как мы обсуждали в комментариях под вопросом причина того, что
m
псевдоним не работал вообще было несоответствие в файлы, которые были отредактированы и файлы, которые действительно использовалисьssh
команда.Изменить: В частности, убедитесь, что вы используете файл конфигурации в каталоге .ssh, принадлежащем текущему пользователю. Если вы установили HOME на что-то другое, тогда редактирование
~/.ssh/config
будет неправильный файл.источник
$HOME
, но он всегда использует дом, который определен вpasswd
,