Nie można ssh do Ubuntu Server według nazwy hosta

16

Właśnie skonfigurowałem Ubuntu 12.04 Server na starym pudełku, podłączonym do mojego routera przez Ethernet. Skonfigurowałem openssh-server zgodnie z instrukcją zdalnego dostępu, ale nie mogę ssh do niego z mojego laptopa za pomocą nazwy hosta.

O dziwo, mogę ssh do niego za pomocą adresu IP. Naprawdę chciałbym to naprawić ze względu na wygodę. Zauważam, że istnieje kilka podobnych pytań, ale wydaje się, że wszyscy ci ludzie mieli pojęcie o tym, w jakim kierunku pójść, aby rozwiązać problem, i zadawali nieco bardziej szczegółowe, technicznie sformułowane wersje moich pytań.

Jako kompletny początkujący do sieci domowych, byłbym bardzo wdzięczny, gdyby ktoś powiedział mi, gdzie mam się udać.

Richard Stokes
źródło

Odpowiedzi:

15

O ile nie skonfigurujesz nazw hostów w centralnej lokalizacji, Twój laptop nie będzie mógł poznać nazwy hosta skonfigurowanej na serwerze Ubuntu.

Więc jeśli zainstalowałeś serwer ubuntu, nazwałeś go „bonkers”, zrozumiałe jest, że na laptopie ssh bonkersnic nie zrobi, ponieważ laptop nie ma pojęcia o tej nazwie hosta.

Możliwe rozwiązania:

  • Na swoim laptopie (nie powiedziałeś, który system operacyjny działa?) Dodaj wiersz w pliku / etc / hosts dla adresu IP serwera Ubuntu, coś takiego (użyj rzeczywistego adresu IP z serwera Ubuntu):

    10.15.30.41 ubuntu-server

    Więc możesz to zrobić ssh ubuntu-serveri powinno działać. Pamiętaj, że lokalizacja pliku hosts zależy od systemu operacyjnego twojego laptopa; Na przykład nie jestem pewien, gdzie jest w systemie Windows.

  • Zainstaluj pakiet avahi-daemon na serwerze Ubuntu. Wykorzystuje protokół mDNS do „reklamowania” swojej nazwy hosta w sieci lokalnej. Po zainstalowaniu i uruchomieniu powinieneś mieć możliwość ssh ubuntu-server.local(zwróć uwagę na .localdomenę) i uzyskać dostęp do serwera. Znowu, jeśli twój laptop ma system Windows, nie mogę powiedzieć, czy obsługuje mDNS; Wiem, że Ubuntu (i każdy inny Linux z zainstalowanym demonem avahi) i Mac OS X obsługują go od razu po wyjęciu z pudełka.

roadmr
źródło
1
Konfiguracja DNS jest również opcją, ale to trochę jak użycie granatu ręcznego na koniu. (I nie zawsze jest to możliwe).
jackweirdy
2

Miałem podobny problem i próbowałem go rozwiązać, instalując demona Avahi, tak jak sugerował roadmr, ale najwyraźniej bez rezultatu. Potem napisałem

host myhostname

a terminal odpowiedział mi:

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

W maszynie gościa użyłem jako hostname myhostname.lan i po prostu działało. Do czasu połączenia z DHCP. Przy przypisanym adresie IP nie działa ...

Notte
źródło
Odkryłem również, że polecenie „host” nie działa z hostem <system> ani z hostem <system> .local, nawet jeśli jest zainstalowany demon avahi. Byłem jednak w stanie to zrobić ssh <system>.locali zadziałało. Więc przypuszczam, że polecenie hosta nie działa z rzeczami mDNS / avahi.
bgoodr