skojarzyć nazwę z ip dla ssh?

32

Powiedzmy, że mam tylko adres IP serwera i nie mam z nim domeny (to tylko serwer bazy danych, więc nie potrzebuje domeny). Nie chcę za każdym razem zapamiętywać adresu IP, więc czy istnieje sposób, w jaki mógłbym nadal używać składni ssh username@databaselub czegoś takiego?

Mateusz
źródło
Jest to błąd przede wszystkim w terminologii. Zastąp słowo „domena” poprawnym słowem „nazwa”, a natychmiast je zobaczysz. „Mówię, że serwer nie potrzebuje nazwy, więc naprawdę chciałbym się do niej odwoływać po nazwie” to sprzeczność. Być może twoje prawdziwe pytania powinny brzmieć „Co to jest domena? Jak dodać nową nazwę do domeny?”
kubańczyk

Odpowiedzi:

52

Jeśli chcesz tylko nazwę dla ssh i ssh, możesz dodać nazwę do swojej konfiguracji ssh w ~ / .ssh / config

Na przykład plik konfiguracyjny może wyglądać następująco:

Host database
    HostName <real IP address or hostname here>
    User username

Następnie możesz wpisać ssh databasew wierszu poleceń, a ssh zrobi to automatycznie ssh [email protected].

David
źródło
Jeśli w polu HostName mogę wpisać tylko nazwę hosta lub adres IP, to jak określić powiązanie nazwa hosta-IP?
Ramy Al Zuhouri,
1
@RamyAlZuhouri umieściłbyś nazwę hosta w polu Host, na przykład „baza danych” w przykładzie i (tylko) adres IP w polu HostName.
David
8

Dodaj wpis /etc/hostsw systemie, z którego korzystasz.

Składnia jest następująca

1.1.1.1 hostname

Działa to w systemach Linux i Mac. W przypadku systemu Windows plik to c:\windows\system\drivers\etc\hosts.

PaulR
źródło
1
To na pewno zadziała, ale pamiętaj, że menedżerowie sieci czasami nadpisują plik hosts. Musisz także mieć uprawnienia roota, więc jest to opcja tylko jeśli masz root.
Freedom_Ben
2

klienci mają 2 lub 3 sposoby na powiązanie nazwy z adresem IP.

1) DNS, ale oznacza to nazwę hosta i domenę.

2) plik hosta, możesz dodać dowolną nazwę do pliku hosta klienta, a następnie zostanie on użyty. Dodaj wiersz „Baza danych 192.168.1.1” w / etc / hosts, aby powiązać bazę nazw z adresem 192.168.1.1. Zobacz http://en.wikipedia.org/wiki/Hosts_%28file%29, aby uzyskać bardziej szczegółowe informacje i lokalizacje specyficzne dla systemu operacyjnego.

3) NIS, komputery Solaris mogą używać NIS do udostępniania nazw hostów dla wielu klientów.

Mikrofon
źródło
1
Lub LDAP. Lub mDNS. Lub dowolny mechanizm obsługujący NSS.
Ignacio Vazquez-Abrams
0

Musisz tylko dodać databasemapowanie nazwy IP do swojego /etc/hostspliku. Plik hosts można łatwo edytować. Znajdziesz tam kilka wpisów.

Tej nazwy można używać do dowolnego połączenia, nie tylko SSH.

Khaled
źródło
0

Utwórz DynDNS , to nic nie kosztuje, w pięć minut możesz dodać rekord A wskazujący na twoje IP.

Na przykład: utwórz bazę danych database1.dyndns.org jako rekord A wskazujący twój ip
Możesz uzyskać dostęp z dowolnego miejsca za pomocą:

ssh nazwa uż[email protected]

Matias Dominoni
źródło