Cách sử dụng lệnh whois trên Linux

Tác giả sysadmin, T.M.Một 01, 2023, 04:11:13 CHIỀU

« Chủ đề trước - Chủ đề tiếp »

0 Thành viên và 1 Khách đang xem chủ đề.

Cách sử dụng lệnh whois trên Linux


Bạn muốn biết ai sở hữu một tên miền internet? Tìm hiểu ngay từ dòng lệnh Linux của bạn!

  • Hệ thống whois chứa các bản ghi cung cấp thông tin về quyền sở hữu tên miền và bản thân chủ sở hữu. Tập đoàn Internet cấp số và tên miền (ICANN) quản lý việc đăng ký và quyền sở hữu tên miền, nhưng hồ sơ được nắm giữ bởi các công ty khác nhau được gọi là cơ quan đăng ký.
  • Bản ghi whois bao gồm thông tin liên hệ của người đăng ký (chủ sở hữu) và nhà đăng ký (tổ chức đã đăng ký tên miền), cũng như ngày đăng ký, cập nhật gần đây nhất và ngày hết hạn.
  • Với lệnh whois của Linux, bạn có thể thực hiện tra cứu trực tiếp từ dòng lệnh, điều này rất hữu ích cho các hệ thống không có giao diện người dùng đồ họa hoặc các tập lệnh shell. Lệnh này có thể được cài đặt trên Ubuntu, Fedora và Manjaro bằng các lệnh cụ thể được cung cấp.

Tra cứu whois sẽ cho bạn biết rất nhiều thông tin về người sở hữu tên miền internet. Trên Linux, bạn có thể chạy tra cứu whois từ dòng lệnh. Chúng tôi sẽ hướng dẫn bạn thực hiện điều đó.

1. Hệ thống whois

Hệ thống whois là danh sách các bản ghi chứa thông tin chi tiết về cả quyền sở hữu tên miền và chủ sở hữu. Tập đoàn Internet cấp số và tên miền (ICANN) quản lý việc đăng ký và quyền sở hữu tên miền, nhưng danh sách hồ sơ do nhiều công ty nắm giữ, được gọi là cơ quan đăng ký.

Bất cứ ai cũng có thể truy vấn danh sách các bản ghi. Khi bạn làm như vậy, một trong các cơ quan đăng ký sẽ xử lý yêu cầu của bạn và gửi cho bạn thông tin chi tiết từ bản ghi whois thích hợp.

Trước khi chúng ta tiến xa hơn, điều quan trọng là bạn phải làm quen với các thuật ngữ sau:

  • Cơ quan đăng ký: Một công ty quản lý danh sách chứa một bộ tên miền (có rất nhiều tên miền như vậy).
  • Người đăng ký: Chủ sở hữu hợp pháp của tên miền; nó đã được đăng ký cho người này.
  • Nhà đăng ký: Người đăng ký sử dụng nhà đăng ký để thực hiện đăng ký của mình.

Bản ghi whois chứa tất cả thông tin liên hệ được liên kết với cá nhân, công ty hoặc tổ chức khác đã đăng ký tên miền. Một số đăng ký chứa nhiều thông tin hơn những đăng ký khác và một số đăng ký trả về lượng thông tin khác nhau.

Một bản ghi whois điển hình sẽ chứa các thông tin sau:

  • Tên và thông tin liên hệ của người đăng ký: Chủ sở hữu tên miền.
  • Tên và thông tin liên hệ của nhà đăng ký: Tổ chức đã đăng ký tên miền.
  • Ngày đăng ký.
  • Thời điểm thông tin được cập nhật lần cuối.
  • Ngày hết hạn.

Bạn có thể thực hiện yêu cầu whois trên web, nhưng với whoislệnh Linux, bạn có thể thực hiện tra cứu ngay từ dòng lệnh. Điều này hữu ích nếu bạn cần thực hiện tra cứu từ máy tính không có giao diện người dùng đồ họa hoặc nếu bạn muốn thực hiện việc đó từ tập lệnh shell.

2. Đang cài đặt whois

Lệnh whois đã được cài đặt trên Ubuntu 20.04. Nếu bạn cần cài đặt nó trên phiên bản Ubuntu của mình, bạn có thể thực hiện bằng lệnh sau:

Mã nguồn [Chọn]
sudo apt-get install whois
Trên Fedora, sử dụng lệnh bên dưới:

Mã nguồn [Chọn]
sudo dnf install whois
Và cuối cùng, trên Manjaro, gõ như sau:

Mã nguồn [Chọn]
sudo pacman -Syu whois
3. Sử dụng whois với tên miền

Bạn có thể sử dụng whoislệnh với tên miền hoặc địa chỉ Giao thức Internet (IP). Một tập hợp thông tin hơi khác nhau được trả về cho mỗi thông tin này.

Chúng tôi sẽ sử dụng tên miền cho ví dụ đầu tiên của mình:

Mã nguồn [Chọn]
whois cnn.com
Phản hồi từ sổ đăng ký whois bắt đầu bằng một bản tóm tắt, sau đó lặp lại với thông tin bổ sung đi kèm. Chúng tôi đã đưa vào một ví dụ bên dưới với tuyên bố nhãn hiệu và điều khoản sử dụng đã bị xóa:

Mã nguồn [Chọn]
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: [email protected]
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

Điều này là hợp lý tự giải thích. Chúng tôi thấy nhiều thông tin chi tiết khác nhau về nhà đăng ký và cơ quan đăng ký, bao gồm chi tiết liên hệ, ngày đăng ký, v.v. Có một số mục trong danh sách mà bạn có thể không nhận ra.

Cơ quan cấp số hiệu Internet (IANA) giám sát và điều phối những thứ như vùng Hệ thống tên miền cấp cao nhất, hệ thống đánh địa chỉ giao thức IP và danh sách cơ quan đăng ký. Sổ đăng ký này có số 299, được biểu thị trong danh sách là "ID IANA: 299."

Các dòng "trạng thái tên miền" hiển thị trạng thái của tên miền và nó có thể ở nhiều trạng thái đồng thời. Các trạng thái được xác định trong Giao thức cung cấp mở rộng. Một số trong số này hiếm khi được nhìn thấy và một số khác bị hạn chế trong một số tình huống nhất định, chẳng hạn như tranh chấp pháp lý.

Các tiểu bang sau đây được đính kèm với đăng ký này:

  • clientTransferProhibited: Cơ quan đăng ký tên miền sẽ từ chối yêu cầu chuyển tên miền từ nhà đăng ký hiện tại sang nhà đăng ký khác.
  • serverDeleteProhibited: Không thể xóa miền.
  • serverTransferProhibited: Không thể chuyển miền sang nhà đăng ký khác.
  • serverUpdateProhibited: Không thể cập nhật tên miền

Ba tính năng cuối cùng thường được kích hoạt theo yêu cầu của người đăng ký hoặc nếu đang xảy ra tranh chấp pháp lý. Trong trường hợp này, CNN có thể đã yêu cầu thực thi những điều này để "khóa" tên miền của công ty.

"!DNSSEC" là viết tắt của Tiện ích mở rộng bảo mật hệ thống tên miền, một sơ đồ cho phép trình phân giải tên DNS kiểm tra bằng mật mã xem dữ liệu mà nó nhận được từ vùng DNS có hợp lệ và không bị giả mạo hay không.

Phần dài hơn của phản hồi được hiển thị bên dưới:

Mã nguồn [Chọn]
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: [email protected]
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 Phone Ext:
Registrant Fax: +1.4048271995
Registrant Fax Ext:
Registrant Email: [email protected]
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 Phone Ext:
Admin Fax: +1.4048271995
Admin Fax Ext:
Admin Email: [email protected]
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 Phone Ext:
Tech Fax: +1.4048271593
Tech Fax Ext:
Tech Email: [email protected]
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

Điều này cung cấp cho chúng tôi ít nhiều thông tin giống như bản tóm tắt, với các phần bổ sung về người đăng ký và chi tiết liên hệ của họ cho mục đích quản trị và kỹ thuật.

Tên người đăng ký được đặt là "Trình quản lý tên miền". Đôi khi, với một khoản phí, các công ty chọn để nhà đăng ký của họ đăng ký tên miền thay mặt họ dưới tên chung mà nhà đăng ký duy trì cho mục đích này. Đó dường như là trường hợp ở đây. Tuy nhiên, vì địa chỉ của người đăng ký là "Trung tâm 1 CCN", nên rõ ràng người đăng ký là ai.

4. Sử dụng whois với địa chỉ IP

Sử dụng whoisđịa chỉ IP cũng đơn giản như sử dụng địa chỉ đó với tên miền. Chỉ cần chỉ định một địa chỉ IP sau whois, như vậy:

Mã nguồn [Chọn]
whois 205.251.242.103
Đây là đầu ra được trả về bởi whois:

Mã nguồn [Chọn]
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: [email protected]
OrgAbuseRef: https://rdap.arin.net/registry/entity/AEA8-ARIN

OrgNOCHandle: AANO1-ARIN
OrgNOCName: Amazon AWS Network Operations
OrgNOCPhone: +1-206-266-4064
OrgNOCEmail: [email protected]
OrgNOCRef: https://rdap.arin.net/registry/entity/AANO1-ARIN

OrgRoutingHandle: ADR29-ARIN
OrgRoutingName: AWS Dogfish Routing
OrgRoutingPhone: +1-206-266-4064
OrgRoutingEmail: [email protected]
OrgRoutingRef: https://rdap.arin.net/registry/entity/ADR29-ARIN

OrgRoutingHandle: IPROU3-ARIN
OrgRoutingName: IP Routing
OrgRoutingPhone: +1-206-266-4064
OrgRoutingEmail: [email protected]
OrgRoutingRef: https://rdap.arin.net/registry/entity/IPROU3-ARIN

OrgTechHandle: ANO24-ARIN
OrgTechName: Amazon EC2 Network Operations
OrgTechPhone: +1-206-266-4064
OrgTechEmail: [email protected]
OrgTechRef: https://rdap.arin.net/registry/entity/ANO24-ARIN

RTechHandle: ROLEA19-ARIN
RTechName: Role Account
RTechPhone: +1-206-266-4064
RTechEmail: [email protected]
RTechRef: https://rdap.arin.net/registry/entity/ROLEA19-ARIN

RAbuseHandle: ROLEA19-ARIN
RAbuseName: Role Account
RAbusePhone: +1-206-266-4064
RAbuseEmail: [email protected]
RAbuseRef: https://rdap.arin.net/registry/entity/ROLEA19-ARIN

RNOCHandle: ROLEA19-ARIN
RNOCName: Role Account
RNOCPhone: +1-206-266-4064
RNOCEmail: [email protected]
RNOCRef: https://rdap.arin.net/registry/entity/ROLEA19-ARIN

Phần đầu tiên chứa thông tin liên quan đến tổ chức sở hữu địa chỉ IP mà chúng tôi đã tìm kiếm (trong trường hợp này là một trong nhiều địa chỉ do Amazon sở hữu). Chúng tôi cũng được cơ quan đăng ký cấp một số mã nhận dạng dùng để nhận dạng nội bộ   Đăng nhập để xem liên kết, Inc..

Phần thứ hai chứa địa chỉ và tên của người đăng ký,   Đăng nhập để xem liên kết, Inc. Địa chỉ web trong trường "Ref:" chứa thông tin này ở định dạng Ký hiệu đối tượng JavaScript (JSON).

Các phần khác chứa thông tin liên hệ cho phép bạn báo cáo các vấn đề liên quan đến lạm dụng, vận hành mạng, định tuyến lưu lượng, v.v.

5. Sử dụng whois trong tập lệnh

Để sử dụng whois trong tập lệnh, giả sử chúng ta có một tập hợp các miền mà chúng ta cần kiểm tra ngày hết hạn. Chúng ta có thể thực hiện điều này bằng một tập lệnh shell nhỏ.

Nhập nội dung này vào trình chỉnh sửa và lưu dưới dạng "get-expiry.sh":

Mã nguồn [Chọn]
#!/bin/bash

DOMAIN_LIST="vietnetwork.vn vietnetwork.com vietnetwork.net"

echo "Expiration dates:"

for domain in $DOMAIN_LIST
do
  echo -n "$domain :: "
  whois $domain | grep 'Expiration' | awk '{print $5}'
done

Đặt tập lệnh để có quyền thực thi bằng cách sử dụng chmodlệnh, như hiển thị bên dưới:

Mã nguồn [Chọn]
chmod +x get-expiry.sh
Chạy tập lệnh bằng cách gọi nó bằng tên:

Mã nguồn [Chọn]
./get-expiry.sh
Ngày hết hạn cho mỗi miền được trích xuất từ phản hồi whoisbằng cách sử dụng grepđể tìm các dòng có chứa chuỗi "Hết hạn" và sử dụng awkđể in mục thứ năm từ dòng đó.

6. Tiện lợi và tự động hóa

Có, bạn cũng có thể thực hiện tra cứu whois trực tuyến. Tuy nhiên, việc có whois sẵn lệnh trong cửa sổ terminal và tập lệnh mang lại sự tiện lợi, linh hoạt và cung cấp cho bạn tùy chọn tự động hóa một số khối lượng công việc của bạn.