Wykorzystanie usługi whois pozwala na uzyskanie wielu informacji o właścicielach domen internetowych. W systemie Linux zapytania whois można wykonywać bezpośrednio z terminala. Poniżej przedstawiamy szczegółowe instrukcje.
Czym jest system whois?
System whois to zbiór rekordów, który dostarcza szczegółowe dane dotyczące własności domen oraz ich właścicieli. Regulacje dotyczące rejestracji i własności nazw domen są nadzorowane przez Internet Corporation for Assigned Names and Numbers (ICANN), natomiast same rekordy są przechowywane przez różne firmy, zwane rejestrami.
Każdy może wystąpić z zapytaniem o te rekordy. Kiedy to zrobisz, jeden z rejestrów zrealizuje Twoje żądanie i przekaże szczegółowe dane z odpowiedniego rekordu whois.
Przed kontynuacją warto zapoznać się z poniższymi terminami:
Rejestr: organizacja zarządzająca listą nazw domen (istnieje wiele takich firm).
Abonent: osoba prawna, która jest zarejestrowana jako właściciel domeny.
Rejestrator: firma, która dokonuje rejestracji domeny w imieniu abonenta.
Rekord whois zawiera wszystkie dane kontaktowe związane z osobą lub firmą, która zarejestrowała daną nazwę domeny. Niektóre rejestracje oferują więcej informacji niż inne, a różni rejestrzy mogą udostępniać różne zakresy danych.
Typowy rekord whois może zawierać następujące elementy:
Nazwa i dane kontaktowe rejestrującego: właściciela domeny.
Nazwa i dane kontaktowe rejestratora: organizacji, która zarejestrowała daną domenę.
Data rejestracji.
Data ostatniej modyfikacji informacji.
Data wygaśnięcia.
Możesz przeprowadzać zapytania whois w sieci, ale korzystając z polecenia whois w systemie Linux, masz możliwość wykonania wyszukiwania bezpośrednio z wiersza poleceń. To przydatne, jeśli chcesz zrealizować zapytanie z komputera bez interfejsu graficznego lub w ramach skryptów powłoki.
Jak zainstalować whois?
W systemie Ubuntu 20.04 polecenie whois jest już zainstalowane. Jeśli chcesz zainstalować je w swojej wersji Ubuntu, użyj poniższego polecenia:
sudo apt-get install whois
Dla systemu Fedora zastosuj poniższe polecenie:
sudo dnf install whois
Aby zainstalować whois w Manjaro, wpisz:
sudo pacman -Syu whois
Jak korzystać z whois dla domeny?
Możesz używać polecenia whois zarówno z nazwami domen, jak i z adresami IP. Wyniki będą się różniły w zależności od tego, co podasz.
whois cnn.com
Odpowiedź z serwera whois zaczyna się od podsumowania, a następnie zawiera dodatkowe informacje. Poniżej przedstawiamy przykład z usuniętymi informacjami dotyczącymi znaków towarowych i warunków użytkowania:
Domain Name: CNN.COM Registry Domain ID: 3269879_DOMAIN_COM-VRSN Registrar WHOIS Server: whois.corporatedomains.com Registrar URL: http://www.cscglobal.com/global/web/csc/digital-brand-services.html Updated Date: 2018-04-10T16:43:38Z Creation Date: 1993-09-22T04:00:00Z Registry Expiry Date: 2026-09-21T04:00:00Z Registrar: CSC Corporate Domains, Inc. Registrar IANA ID: 299 Registrar Abuse Contact Email: domainabuse@cscglobal.com Registrar Abuse Contact Phone: 8887802723 Domain Status: clientTransferProhibited https://icann.org/epp#clientTransferProhibited Domain Status: serverDeleteProhibited https://icann.org/epp#serverDeleteProhibited Domain Status: serverTransferProhibited https://icann.org/epp#serverTransferProhibited Domain Status: serverUpdateProhibited https://icann.org/epp#serverUpdateProhibited Name Server: NS-1086.AWSDNS-07.ORG Name Server: NS-1630.AWSDNS-11.CO.UK Name Server: NS-47.AWSDNS-05.COM Name Server: NS-576.AWSDNS-08.NET DNSSEC: unsigned
Widzimy tu różne szczegóły dotyczące rejestratora oraz rejestru, w tym dane kontaktowe oraz daty rejestracji. Znajdują się tam także pozycje, które mogą być nieznane dla niektórych użytkowników.
IANA (Urząd ds. Numerów przydzielonych w Internecie) zarządza i koordynuje takie elementy, jak najwyższy poziom System nazw domen, czy adresację w Protokole IP oraz prowadzi listę rejestrów. Rejestr ten ma przypisany numer 299, co jest uwzględnione w informacji jako „IANA ID: 299”.
Linie „status domeny” informują o aktualnym stanie domeny, który może przybrać różne formy. Statusy są zdefiniowane w Extensible Provisioning Protocol. Niektóre z nich są rzadko spotykane, inne dotyczą specyficznych sytuacji, takich jak spory prawne.
W przypadku tej rejestracji wskazano następujące statusy:
clientTransferProhibited: Rejestr domeny odrzuca żądania przeniesienia domeny do innego rejestratora.
serverDeleteProhibited: domeny nie można usunąć.
serverTransferProhibited: domeny nie można przenieść do innego rejestratora.
serverUpdateProhibited: domeny nie można zaktualizować.
Ostatnie trzy statusy są zwykle wprowadzane na żądanie rejestrującego lub w przypadku sporu prawnego. W przypadku CNN najprawdopodobniej takie zabezpieczenia zostały wprowadzone, aby „zablokować” domenę.
„! DNSSEC” odnosi się do Rozszerzeń zabezpieczeń systemu nazw domen, które umożliwiają kryptograficzne potwierdzenie integralności danych z strefy DNS.
Poniżej przedstawiamy dłuższą część odpowiedzi:
Domain Name: cnn.com Registry Domain ID: 3269879_DOMAIN_COM-VRSN Registrar WHOIS Server: whois.corporatedomains.com Registrar URL: www.cscprotectsbrands.com Updated Date: 2018-04-10T16:43:38Z Creation Date: 1993-09-22T04:00:00Z Registrar Registration Expiration Date: 2026-09-21T04:00:00Z Registrar: CSC CORPORATE DOMAINS, INC. Registrar IANA ID: 299 Registrar Abuse Contact Email: domainabuse@cscglobal.com Registrar Abuse Contact Phone: +1.8887802723 Domain Status: clientTransferProhibited http://www.icann.org/epp#clientTransferProhibited Domain Status: serverDeleteProhibited http://www.icann.org/epp#serverDeleteProhibited Domain Status: serverTransferProhibited http://www.icann.org/epp#serverTransferProhibited Domain Status: serverUpdateProhibited http://www.icann.org/epp#serverUpdateProhibited Registry Registrant ID: Registrant Name: Domain Name Manager Registrant Organization: Turner Broadcasting System, Inc. Registrant Street: One CNN Center Registrant City: Atlanta Registrant State/Province: GA Registrant Postal Code: 30303 Registrant Country: US Registrant Phone: +1.4048275000 Registrant Fax: +1.4048271995 Registrant Email: tmgroup@turner.com Registry Admin ID: Admin Name: Domain Name Manager Admin Organization: Turner Broadcasting System, Inc. Admin Street: One CNN Center Admin City: Atlanta Admin State/Province: GA Admin Postal Code: 30303 Admin Country: US Admin Phone: +1.4048275000 Admin Fax: +1.4048271995 Admin Email: tmgroup@turner.com Registry Tech ID: Tech Name: TBS Server Operations Tech Organization: Turner Broadcasting System, Inc. Tech Street: One CNN Center Tech City: Atlanta Tech State/Province: GA Tech Postal Code: 30303 Tech Country: US Tech Phone: +1.4048275000 Tech Fax: +1.4048271593 Tech Email: hostmaster@turner.com Name Server: ns-576.awsdns-08.net Name Server: ns-1086.awsdns-07.org Name Server: ns-47.awsdns-05.com Name Server: ns-1630.awsdns-11.co.uk DNSSEC: unsigned
To dostarcza nam praktycznie te same informacje, co podsumowanie, z dodatkowymi sekcjami dotyczącymi szczegółów rejestrującego oraz jego danych kontaktowych do celów administracyjnych i technicznych.
Nazwa rejestrującego to „Menedżer nazw domen”. Firmy czasami umożliwiają swojemu rejestratorowi rejestrację domeny w swoim imieniu pod ogólną nazwą, którą rejestrator utrzymuje. Możliwe, że tak jest w tym przypadku. Jednak ponieważ adres rejestrującego to „1 CNN Center”, to oczywiste, kto jest rejestrującym.
Jak korzystać z whois dla adresu IP?
Użycie whois dla adresu IP jest równie proste jak dla nazwy domeny. Wystarczy podać adres IP po poleceniu whois, na przykład:
whois 205.251.242.103
Oto wynik zapytania whois:
NetRange: 205.251.192.0 - 205.251.255.255 CIDR: 205.251.192.0/18 NetName: AMAZON-05 NetHandle: NET-205-251-192-0-1 Parent: NET205 (NET-205-0-0-0-0) NetType: Direct Allocation OriginAS: AS16509, AS39111, AS7224 Organization: Amazon.com, Inc. (AMAZON-4) RegDate: 2010-08-27 Updated: 2015-09-24 Ref: https://rdap.arin.net/registry/ip/205.251.192.0 OrgName: Amazon.com, Inc. OrgId: AMAZON-4 Address: 1918 8th Ave City: SEATTLE StateProv: WA PostalCode: 98101-1244 Country: US RegDate: 1995-01-23 Updated: 2020-03-31 Ref: https://rdap.arin.net/registry/entity/AMAZON-4 OrgAbuseHandle: AEA8-ARIN OrgAbuseName: Amazon EC2 Abuse OrgAbusePhone: +1-206-266-4064 OrgAbuseEmail: abuse@amazonaws.com OrgAbuseRef: https://rdap.arin.net/registry/entity/AEA8-ARIN OrgNOCHandle: AANO1-ARIN OrgNOCName: Amazon AWS Network Operations OrgNOCPhone: +1-206-266-4064 OrgNOCEmail: amzn-noc-contact@amazon.com OrgNOCRef: https://rdap.arin.net/registry/entity/AANO1-ARIN OrgRoutingHandle: ADR29-ARIN OrgRoutingName: AWS Dogfish Routing OrgRoutingPhone: +1-206-266-4064 OrgRoutingEmail: aws-dogfish-routing-poc@amazon.com OrgRoutingRef: https://rdap.arin.net/registry/entity/ADR29-ARIN OrgRoutingHandle: IPROU3-ARIN OrgRoutingName: IP Routing OrgRoutingPhone: +1-206-266-4064 OrgRoutingEmail: aws-routing-poc@amazon.com OrgRoutingRef: https://rdap.arin.net/registry/entity/IPROU3-ARIN OrgTechHandle: ANO24-ARIN OrgTechName: Amazon EC2 Network Operations OrgTechPhone: +1-206-266-4064 OrgTechEmail: amzn-noc-contact@amazon.com OrgTechRef: https://rdap.arin.net/registry/entity/ANO24-ARIN RTechHandle: ROLEA19-ARIN RTechName: Role Account RTechPhone: +1-206-266-4064 RTechEmail: ipmanagement@amazon.com RTechRef: https://rdap.arin.net/registry/entity/ROLEA19-ARIN RAbuseHandle: ROLEA19-ARIN RAbuseName: Role Account RAbusePhone: +1-206-266-4064 RAbuseEmail: ipmanagement@amazon.com RAbuseRef: https://rdap.arin.net/registry/entity/ROLEA19-ARIN RNOCHandle: ROLEA19-ARIN RNOCName: Role Account RNOCPhone: +1-206-266-4064 RNOCEmail: ipmanagement@amazon.com RNOCRef: https://rdap.arin.net/registry/entity/ROLEA19-ARIN
Pierwsza sekcja zawiera informacje na temat organizacji, która jest właścicielem danego adresu IP (w tym przypadku Amazon). Otrzymujemy również identyfikatory używane przez rejestr do wewnętrznej identyfikacji Amazon.com, Inc.
Druga sekcja zawiera dane adresowe i nazwę rejestrującego, czyli Amazon.com, Inc. Adres w polu „Ref:” prowadzi do danych w Notacji obiektu JavaScript (JSON).
Kolejne sekcje oferują dane kontaktowe, które umożliwiają zgłaszanie problemów związanych z nadużyciami, operacjami sieciowymi, routingiem i innymi kwestiami.
Wykorzystanie whois w skryptach
Aby wykorzystać whois w skrypcie, załóżmy, że mamy kilka domen, dla których chcemy sprawdzić daty wygaśnięcia. Możemy to osiągnąć za pomocą prostego skryptu powłoki.
Wprowadź poniższy kod w edytorze i zapisz jako „get-expiry.sh”:
#!/bin/bash DOMAIN_LIST="newsblog.pl reviewgeek.com lifesavvy.com cloudsavvyit.com" echo "Daty wygaśnięcia:" for domain in $DOMAIN_LIST do echo -n "$domain :: " whois $domain | grep 'Expiration' | awk '{print $5}' done
Aby ustawić skrypt jako wykonywalny, użyj polecenia chmod:
chmod +x get-expiry.sh
Aby uruchomić skrypt, wywołaj go w terminalu:
./get-expiry.sh
Data wygaśnięcia każdej domeny jest wydobywana z odpowiedzi whois przy użyciu polecenia grep, które wyszukuje wiersze zawierające ciąg „Wygaśnięcie”, a następnie awk do drukowania piątej pozycji tej linii.
Zalety używania whois
Możesz również przeprowadzać wyszukiwania whois online, ale korzystanie z polecenia whois w terminalu oraz w skryptach zapewnia wygodę, elastyczność i umożliwia automatyzację wielu procesów.