Comment utiliser la commande whois sous Linux

Une recherche whois vous fournira beaucoup d’informations sur le propriétaire d’un domaine Internet. Sous Linux, vous pouvez exécuter des recherches whois à partir de la ligne de commande. Nous allons vous guider à travers cela.

Le système whois

Le système whois est une liste d’enregistrements qui contient des détails sur la propriété des domaines et les propriétaires. le Internet Corporation pour les noms et numéros attribués (ICANN) réglemente l’enregistrement et la propriété des noms de domaine, mais la liste des enregistrements est détenue par de nombreuses entreprises, appelées registres.

Tout le monde peut interroger la liste des enregistrements. Lorsque vous le faites, l’un des registres traitera votre demande et vous enverra les détails de l’enregistrement whois approprié.

Avant d’aller plus loin, il est important que vous connaissiez les termes suivants:

Registre: une entreprise qui gère une liste contenant un ensemble de noms de domaine (il y en a beaucoup).
Titulaire: le propriétaire légal du domaine; il est enregistré auprès de cette personne.
Registraire: Un inscrit utilise un registraire pour faire son inscription.

Un enregistrement whois contient toutes les informations de contact associées à la personne, à l’entreprise ou à toute autre entité qui a enregistré le nom de domaine. Certains enregistrements contiennent plus d’informations que d’autres et certains registres renvoient des quantités d’informations différentes.

Un enregistrement whois typique contiendra les informations suivantes:

Le nom et les coordonnées du titulaire: Le propriétaire du domaine.
Le nom et les coordonnées du bureau d’enregistrement: l’organisation qui a enregistré le nom de domaine.
La date d’enregistrement.
Date de la dernière mise à jour des informations.
La date d’expiration.

Vous pouvez faire des requêtes whois sur le Web, mais, avec la commande whois Linux, vous pouvez effectuer des recherches directement depuis la ligne de commande. Ceci est utile si vous devez effectuer une recherche depuis un ordinateur sans interface utilisateur graphique, ou si vous souhaitez le faire à partir d’un script shell.

Installation du whois

La commande whois était déjà installée sur Ubuntu 20.04. Si vous devez l’installer sur votre version d’Ubuntu, vous pouvez le faire avec la commande suivante:

sudo apt-get install whois

Sur Fedora, utilisez la commande ci-dessous:

sudo dnf install whois

sudo dnf installe le whois dans une fenêtre de terminal.

Et enfin, sur Manjaro, tapez ce qui suit:

sudo pacman -Syu whois

sudo pacman -Syu whois dans une fenêtre de terminal.

Utilisation du whois avec un nom de domaine

Vous pouvez utiliser la commande whois avec des noms de domaine ou protocole Internet (IP) adresses. Un ensemble d’informations légèrement différent est renvoyé pour chacun d’eux.

Nous utiliserons un nom de domaine pour notre premier exemple:

whois cnn.com

whois cnn.com dans une fenêtre de terminal

La réponse du registre whois commence par un résumé, puis se répète avec des informations supplémentaires incluses. Nous avons inclus un exemple ci-dessous avec les déclarations de marque et les conditions d’utilisation supprimées:

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

Ceci est raisonnablement explicite. Nous voyons divers détails sur le bureau d’enregistrement et le registre, y compris les coordonnées, les dates d’enregistrement, etc. Il y a quelques entrées dans la liste que vous pourriez ne pas reconnaître.

le L’autorité d’assignation des numéros internet (IANA) supervise et coordonne des choses comme le plus haut niveau Système de noms de domaines zones, Protocole IP les systèmes d’adressage et le liste des registres. Ce registre porte le numéro 299, qui est indiqué dans la liste comme «IANA ID: 299».

Les lignes «état du domaine» montrent l’état dans lequel se trouve le domaine, et il peut en être plusieurs simultanément. Les états sont définis dans le Protocole de provisionnement extensible. Certains d’entre eux sont rarement vus, et d’autres sont limités à certaines situations, telles que les conflits juridiques.

Les états suivants sont attachés à cet enregistrement:

clientTransferProhibited: le registre du domaine rejettera les demandes de transfert du domaine du registraire actuel vers un autre.
serverDeleteProhibited: le domaine ne peut pas être supprimé.
serverTransferProhibited: le domaine ne peut pas être transféré vers un autre registraire.
serverUpdateProhibited: le domaine ne peut pas être mis à jour

Les trois derniers sont généralement activés à la demande du déclarant, ou si un litige juridique est en cours. Dans ce cas, CNN a probablement demandé que celles-ci soient appliquées pour «verrouiller» le domaine de l’entreprise.

«! DNSSEC» signifie Extensions de sécurité du système de noms de domaine, un schéma qui permet à un résolveur de noms DNS de vérifier cryptographiquement que les données qu’il a reçues de la zone DNS sont valides et n’ont pas été falsifiées.

La partie la plus longue de la réponse est illustrée ci-dessous:

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 Phone Ext:
Registrant Fax: +1.4048271995
Registrant Fax Ext:
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 Phone Ext:
Admin Fax: +1.4048271995
Admin Fax Ext:
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 Phone Ext:
Tech Fax: +1.4048271593
Tech Fax Ext:
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

Cela nous donne plus ou moins les mêmes informations que le résumé, avec des sections supplémentaires sur le déclarant et ses coordonnées à des fins administratives et techniques.

Le nom du titulaire est indiqué sous la forme «Gestionnaire de noms de domaine». Parfois, moyennant des frais, les entreprises choisissent de laisser leur bureau d’enregistrement enregistrer le domaine en leur nom sous un nom générique qu’il gère à cette fin. Cela semble être le cas ici. Cependant, comme l’adresse du déclarant est «1 CCN Center», l’identité du déclarant est évidente.

Utilisation du whois avec une adresse IP

Utiliser whois avec une adresse IP est aussi simple que de l’utiliser avec un nom de domaine. Spécifiez simplement une adresse IP après whois, comme ceci:

whois 205.251.242.103

whois 205.251.242.103 dans une fenêtre de terminal.

Voici la sortie renvoyée par 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

La première section contient des informations sur l’organisation qui possède l’adresse IP que nous avons recherchée (dans ce cas, l’une des nombreuses appartenant à Amazon). Le registre nous donne également certains identifiants utilisés pour identifier Amazon.com, Inc. en interne.

La deuxième section contient l’adresse et le nom du titulaire, Amazon.com, Inc. L’adresse Web dans le champ «Ref:» contient ces informations dans Notation d’objets JavaScript (JSON).

Les autres sections contiennent des informations de contact qui vous permettent de signaler des problèmes d’abus, de fonctionnement du réseau, de routage du trafic, etc.

Utilisation du whois dans un script

Pour utiliser whois dans un script, supposons que nous ayons un ensemble de domaines pour lesquels nous devons vérifier les dates d’expiration. Nous pouvons accomplir cela avec un petit script shell.

Tapez ceci dans un éditeur et enregistrez-le sous «get-expiry.sh»:

#!/bin/bash

DOMAIN_LIST="howtogeek.com reviewgeek.com lifesavvy.com cloudsavvyit.com"

echo "Expiration dates:"

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

Définir le script pour avoir des autorisations exécutables en utilisant la commande chmod, comme indiqué ci-dessous:

chmod +x get-expiry.sh

chmod + x get-expiry.sh dans une fenêtre de terminal.

Exécutez le script en l’appelant par son nom:

./get-expiry.sh

./get-expiry.sh dans une fenêtre de terminal.

La date d’expiration de chaque domaine est extraite de la réponse du whois en utilisant grep pour trouver les lignes qui contiennent la chaîne « Expiration » et utilisation de awk pour imprimer le cinquième élément de cette ligne.

Commodité et automatisation

Oui, vous pouvez également effectuer des recherches whois en ligne. Cependant, avoir la commande whois disponible dans la fenêtre du terminal et les scripts offre commodité, flexibilité et vous donne la possibilité d’automatiser une partie de votre charge de travail.