Невозможно подключиться по ssh к Ubuntu Server по имени хоста

16

Я только что установил Ubuntu 12.04 Server на старой коробке, подключенной к маршрутизатору через Ethernet. Я настроил openssh-сервер в соответствии с инструкциями для удаленного доступа, но я не могу войти в него с моего ноутбука, используя имя хоста.

Странно, однако, я могу SSH в него, используя IP-адрес. Я действительно хотел бы исправить это для удобства. Я заметил, что есть несколько похожих вопросов, но, похоже, все эти люди имели некоторое представление о том, в каком направлении двигаться, чтобы решить проблему, и задавали несколько более конкретные, технически сформулированные версии моих вопросов.

Как полный новичок в домашних сетях, я был бы очень признателен, если бы кто-то сказал мне, куда идти отсюда.

Ричард Стоукс
источник

Ответы:

15

Если вы не сконфигурируете имена хостов в центральном расположении, ваш ноутбук не сможет узнать имя хоста, которое вы настроили на сервере Ubuntu.

Таким образом, если вы установили сервер Ubuntu и назвали его «Bonkers», понятно, что на ноутбуке ssh bonkersничего не будет делать, так как ноутбук не знает об этом имени хоста.

Возможные решения:

  • На вашем ноутбуке (вы не сказали, в какой ОС он работает?) Добавьте строку в файле / etc / hosts для IP-адреса вашего сервера Ubuntu, что-то вроде этого (используйте фактический IP-адрес вашего сервера Ubuntu):

    10.15.30.41 ubuntu-server

    Тогда вы можете сделать, ssh ubuntu-serverи это должно работать. Обратите внимание, что расположение файла hosts зависит от того, какая ОС установлена ​​на вашем ноутбуке; Я не уверен, где это находится на Windows, например.

  • Установите пакет avahi-daemon на свой сервер Ubuntu. При этом используется протокол mDNS для «объявления» его имени хоста в вашей локальной сети. После того, как он установлен и запущен, вы сможете ssh ubuntu-server.local(заметить .localдомен) и получить доступ к серверу. Опять же, если ваш ноутбук работает под управлением Windows, я не могу сказать, поддерживает ли он mDNS; Я знаю Ubuntu (и любой другой Linux с установленным avahi-daemon) и Mac OS X поддерживает его из коробки.

roadmr
источник
1
Настройка DNS также является опцией, но это немного похоже на ручную гранату на слепня. (И не всегда возможно).
Jackweirdy
2

У меня была похожая проблема, и я попытался ее решить, установив Avahi-daemon, как и предполагал roadmr, но безрезультатно. Потом набрал

host myhostname

и терминал ответил мне:

myhostname.lan has address 192.168.1.68
Host myhostname.lan not found: 3(NXDOMAIN)

В гостевой машине я использовал в качестве имени хоста myhostname.lan и это просто сработало. Пока я не связан с DHCP. С назначенным IP не работает ...

Notte
источник
Я также обнаружил, что команда «host» не работает ни с host <system>, ни с host <system> .local, даже если установлен avahi-daemon. Однако я смог это сделать, ssh <system>.localи это сработало. Поэтому я предполагаю, что команда host не работает с mDNS / avahi.
bgoodr