Jakie są konsekwencje ustawienia nazwy hosta?

13

Mam kilka serwerów Amazon EC2 i używam Chef do zarządzania konfiguracją. Chciałbym ustawić nazwę hosta, aby domyślny monit bash był bardziej pomocny.

W tej chwili po uruchomieniu nowego serwera jest on ustawiony jako:

root@ip-10-123-123-123

Ponieważ używam Ubuntu 12 na tych polach, przejrzałem odpowiednią stronę podręcznika dla nazwy hosta . Zawiera wiele dobrych informacji o tym, jak to ustawić, i mówi trochę o nazwie hosta i fqdn, ale tak naprawdę nie mówi mi, co chcę wiedzieć:

Jakie są konsekwencje ustawienia nazwy hosta?

Chciałbym założyć, że ustawienie nazwy hosta jest w większości wygodnym rozwiązaniem dla użytkowników i administratorów, nadając skrzynce twarz / miłą nazwę, dzięki czemu można ją łatwiej rozpoznać wewnętrznie (za pomocą wiersza polecenia, wysyłanych wiadomości e-mail, itp.), ale nie jestem pozytywna.

Nie widzę nazwy hosta wymienionej w /etc/hostspliku, co wydaje się dobrym znakiem, że zmiana nie wpłynie negatywnie:

127.0.0.1 localhost
# The following lines are desirable for IPv6 capable hosts
::1 ip6-localhost ip6-loopback
fe00::0 ip6-localnet
ff00::0 ip6-mcastprefix
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters
ff02::3 ip6-allhosts

Czy jestem na dobrej drodze? Jakie są konsekwencje ustawienia nazwy hosta?

Aktualizacja

Próbowałem zmienić nazwę hosta w mojej instancji ec2 z ip-10-123-123-123na webserveri hostname --fqdnjuż nie działa. Jeśli odłożę to z powrotem, to działa dobrze. Apache daje mi również błąd przy uruchomieniu, że nie może wiarygodnie określić fqdn. Podejrzewam, że musi być jakiś sposób na ustawienie nazwy hosta bez zepsucia fqdn.

cwd
źródło
Znalazłem również Czy możemy ustawić łatwe do zapamiętania nazwy hostów dla instancji EC2? i opublikował odpowiedź na podstawie tego, co znalazłem, ale wciąż ma w sobie pewne dziury.
cwd 15.10.12

Odpowiedzi:

15

Chciałem tylko dodać, że nazwa hosta powinna być rozwiązywana przez DNS lub / etc / hosts. Jeśli tak nie jest, wiele narzędzi może wykazywać duże opóźnienia z powodu nieudanego wyszukiwania nazwy hosta. Miałem ten problem z wieloma programami GUI.

Daniel Kullmann
źródło
To bardzo ważny punkt. Głosowałbym więcej niż raz, gdybym mógł. Dziękuję Ci!
cwd 12.10.12
To rzeczywiście robi odpowiedzieć na pytanie. Jeśli zmienisz nazwę hosta na coś, co faktycznie rozwiązuje, hostname --fqdnnadal działa.
bryant
12

Nazwa hosta (ustawiona i wyświetlona przez hostnamepolecenie i zazwyczaj przechowywana w /etc/hostname) jest używana przez aplikacje lokalne. Nie jest znany innym maszynom i nie można go użyć do skontaktowania się z hostem. Nazwa hosta zwykle pojawia się w monitach powłoki i różne aplikacje mogą jej używać do rejestrowania, na przykład w oprogramowaniu do kontroli wersji podczas zatwierdzania.

Nie ma technicznego połączenia między nazwą hosta a jakąkolwiek nazwą, której inne maszyny mogą użyć do oznaczenia twojego komputera. DNS jest to, co jest zwykle używany, aby wymienić maszynę w kontekście Internetu (a dokładniej interfejs sieciowy). Dobrym pomysłem jest, jeśli nazwa hosta jest identyczna z pierwszym składnikiem nazwy DNS interfejsu sieciowego twojego komputera, który widzi większość świata. Na przykład, jeśli twój serwer jest podłączony do reszty świata przez eth0interfejs Ethernet, a adres IP eth0ma nazwę foo.example.com, dobrym pomysłem jest wybranie foonazwy hosta. Jeśli to zrobisz, foo.example.comczęsto nazywa się FQDN(w pełni kwalifikowana nazwa domeny) twojego komputera. Ale możesz pozostawić im niedopasowane; rozbieżność może być myląca dla administratora, ale nie ma znaczenia dla oprogramowania.

Nazwa hosta może być używana przez niektóre protokoły sieciowe do identyfikacji hosta. Jeśli tak, musi zostać wysłany przez proces lokalny uruchomiony na hoście. Na przykład w niektórych konfiguracjach klient DHCP wysyła nazwę hosta do serwera DHCP w celu uzyskania adresu IP; serwer DHCP może użyć deklarowanej nazwy hosta, aby zdecydować, który adres IP przypisać klientowi. W takich konfiguracjach nazwa hosta musi być zgodna z nazwą DNS.

Powiązane: Dlaczego moja nazwa hosta jest inna w Emacsie? ; Jak udostępnić maszynę z sieci LAN za pomocą jej nazwy hosta

Gilles „SO- przestań być zły”
źródło
1
Nie jest prawdą, że nie jest znana innej maszynie. Ta nazwa hosta jest wysyłana przez wiele systemów operacyjnych do serwera DHCP podczas żądania dzierżawy DHCP, a wiele serwerów DHCP / DNS używa jej do aktualizacji lokalnej strefy DNS. Nazwa hosta jest używana przez mDNS, jest używana przez sambę (w większości domyślnych instalacji samby), pojawia się na serwerze HTTP ...
Stéphane Chazelas
@sch Dobra uwaga na temat DHCP. Nie rozumiem o httpd: jest to proces lokalny, który może zdecydować o wysłaniu nazwy hosta przez sieć, ale nazwa hosta nadal nie jest znana innym komputerom, chyba że host ją wysłał.
Gilles „SO- przestań być zły”
Myślę, że to dobra odpowiedź, ale po odrobinie zabawy nie jestem pewien, czy jest kompletna. Wygląda na to, że jeśli zmienię nazwę hosta (ip-10-123-123-123) na cokolwiek innego, to hostname --fqdnnie będzie już działał na instancji ec2, a apache ostrzega podczas uruchamiania, że ​​nie może wiarygodnie określić fqdn. Nie jestem pewien, gdzie szukać więcej informacji na temat tego, jak wszystkie te rzeczy się ze sobą wiążą. Dzięki za rozpoczęcie.
cwd 12.10.12
1
hostname --fqdn(DNS) wydaje się być używany do logowania. unix.stackexchange.com/questions/319737/…
sourcejedi