Linux Systeembeheer/De gereedschapskist van een systeembeheerder
Leerdoelen
[bewerken]- Basiscommando's voor Linux systeembeheer kennen en kunnen gebruiken:
- info over het systeem opvragen: lsof, lspci, lsusb
- superuser: su [-] en sudo
- procesbeheer: ps, top, kill, killall
- probleemoplossen in een netwerk:
- bereikbaarheid van een systeem testen: ping, traceroute, mtr,
- bereikbaarheid van applicaties testen: nmap port scanner:
- de scantypes -sP, -sL, -sS, -sT, -sU, -O begrijpen en kunnen toepassen
- specifieke hosts en poorten scannen
- packet sniffer wireshark:
- promiscuous mode begrijpen,
- individuele pakketten kunnen identificeren en analyseren, de structuur van een pakket begrijpen,
- TCP streams kunnen identificeren, opvangen en bekijken,
- andere netwerktools: arp, dig, ifconfig, netstat, route, service (specifiek voor de RedHat-familie), ssh, telnet, whois
Systeeminformatie opzoeken
[bewerken]lsof
[bewerken]lsof , letterlijk list open files, is een commando dat een lijst weergeeft van geopende bestanden en door processen deze gebruikt worden. We verstaan onder geopende bestanden o.a. bestanden die op een opslagmedium zijn opgeslagen, netwerksockets en ook aangesloten randapparatuur. Als er een bestand in gebruik is kan men dit bestand niet wijzigen, of kan men een disk niet kan unmounten. Met lsof kan men dan gaan kijken waar het gebruikt wordt.
lsof /var toont de lijst van geopende bestanden in de map /var
$ lsof /var COMMAND [PID] USER FD TYPE DEVICE SIZE/OFF NODE NAME syslogd 350 root 5w VREG 222,5 0 440818 /var/adm/messages syslogd 350 root 6w VREG 222,5 339098 6248 /var/log/syslog cron 353 root cwd VDIR 222,5 512 254550 /var -- atjobs
Nuttige flags zijn:
- -i Toon sockets.
- -n Maak geen gebruik van dns.
- -P Toon poortnummers.
Met het volgende commando kunnen we zien dat bijvoorbeeld sendmail luistert naar de tcp-poort 25.
$ lsof -i -n -P | grep sendmail sendmail 31649 root 4u IPv4 521738 TCP *:25 (LISTEN)
lspci
[bewerken]lspci is een unix-commando dat informatie weergeeft van al de PCI-bussen en apparaten van het systeem. Het is gebaseerd op een gemeenschappelijke draagbare bibliotheek libpci die de toegang tot de PCI-configuratie ruimte biedt op verschillende besturingssystemen.
Als je het uitvoert krijg je een soortgelijke uitvoer:
00:00.0 Host bridge: Intel Corporation 82815 815 Chipset Host Bridge and Memory Controller Hub (rev 11) 00:02.0 VGA compatible controller: Intel Corporation 82815 CGC [Chipset Graphics Controller] (rev 11) 00:1e.0 PCI bridge: Intel Corporation 82801 Mobile PCI Bridge (rev 03) 00:1f.0 ISA bridge: Intel Corporation 82801BAM ISA Bridge (LPC) (rev 03) 00:1f.1 IDE interface: Intel Corporation 82801BAM IDE U100 (rev 03) 00:1f.2 USB Controller: Intel Corporation 82801BA/BAM USB (Hub #1) (rev 03) 00:1f.3 SMBus: Intel Corporation 82801BA/BAM SMBus (rev 03) 00:1f.4 USB Controller: Intel Corporation 82801BA/BAM USB (Hub #2) (rev 03) 00:1f.5 Multimedia audio controller: Intel Corporation 82801BA/BAM AC'97 Audio (rev 03) 01:03.0 CardBus bridge: O2 Micro, Inc. OZ6933/711E1 CardBus/SmartCardBus Controller (rev 01) 01:03.1 CardBus bridge: O2 Micro, Inc. OZ6933/711E1 CardBus/SmartCardBus Controller (rev 01) 01:0b.0 PCI bridge: Actiontec Electronics Inc Mini-PCI bridge (rev 11) 02:04.0 Ethernet controller: Intel Corporation 82557/8/9 [Ethernet Pro 100] (rev 08) 02:08.0 Communication controller: Agere Systems WinModem 56k (rev 01)
Met de optie -n krijg je in plaats van de namen van apparaten een identificatiecode, bijvoorbeeld:
00:00.0 0600: 8086:2a00 (rev 03) 00:01.0 0604: 8086:2a01 (rev 03) 00:1a.0 0c03: 8086:2834 (rev 03) 00:1a.1 0c03: 8086:2835 (rev 03) [...] 01:00.0 0300: 10de:0407 (rev a1) 0b:00.0 0280: 168c:0024 (rev 01) 0c:00.0 0200: 11ab:436a (rev 13) 0d:03.0 0c00: 104c:8025 (rev 02)
Op positie 01:00.0 vinden we een apparaat met code 10de:0407. De 10de staat voor de fabrikant (in dit geval nVidia), de 0407 voor het type apparaat (GeForce 8600M GT grafische kaart). Deze code is in sommige gevallen nuttig om drivers op te zoeken voor hardware die niet standaard ondersteund wordt door de Linuxdistributie.
lsusb
[bewerken]Het commando lsusb is analoog aan het lspci commando. Het geeft informatie weer van de usb apparaten die met het apparaat verbonden zijn.
hwinfo
[bewerken]hwinfo geeft informatie weer over al de geïnstalleerde hardware op het systeem. lshw geeft een verkorte lijst van hwinfo weer.
SubstituteUser & Sudo
[bewerken]Veel beheerscommando's kunnen niet uitgevoerd worden wanneer u niet als root bent ingelogd. Om die reden is het soms makkelijk om als een andere gebruiker in te loggen. Dat kan met het commando su (wat staat voor Substitute User).
su [USER]: Het path wijzigt niet, omgevingsvariabelen blijven bewaard en je blijft in je eigen shell. Je kan optioneel een gebruikersnaam meegeven om in te loggen als die gebruiker. Zonder opties word je root. Eigenlijk log je niet echt in, maar wordt enkel je UID veranderd.
$ su jasmien Password: $ _
$ su Password: $
su - [USER]: dit is equivalent met daadwerkelijk inloggen als root (su - root). Hierbij worden wel de omgevingsvariabelen aangenomen van de andere gebruiker (in dit geval root).
$ su Password: $ ifconfig ifconfig: command not found $ exit $ su - Password: $ ifconfig eth0 Link encap:Ethernet HWaddr 00:04:e2:2a:bf:45 [...]
Sudo kan een gebruiker toestaan om een commando als de superuser of een andere gebruiker uit te voeren. Standaard vereist sudo dat gebruikers zichzelf authenticeren met hun eigen wachtwoord. Zodra een gebruiker is geverifieerd, kan de gebruiker sudo gebruiken zonder een wachtwoord voor een korte periode van tijd (5 minuten, tenzij overschreven in bestand sudoers).
Instellen van het Sudo commando is enkel mogelijk als root. Door gebruik van het commando visudo kan aan een bepaalde gebruiker commando's toegewezen worden die anders enkel maar door de root uitvoerbaar zijn. De lijst van sudo gebruikers kan teruggevonden worden in /etc/sudoers. /etc/sudoers.tmp is de lockfile die toelaat om het visudo commando te gebruiken. Van zelfsprekend bezit enkel root deze rechten.
## Allow root to run any commands anywhere root ALL=(ALL) ALL student ALL=(ALL) NOPASSWD:ALL %students ALL=(ALL) ALL student localhost =(root) NOPASSWD : /usr/bin/nmap, /usr/bin/wireshark, /usr/sbin/tcpdump
visudo bestaat uit 3 kolommen. De eerste kolom kan een gebruiker zijn of een groep. De tweede kolom omvat 2 delen. De eerste variabele verwijst naar de toelatingen van de host. Dit is bijna altijd de localhost en het is veilig om ALL te gebruiken. De tweede variabele verwijst tussen de haakjes verwijst naar de uitvoerder van het commando. Men kan een sudo commando dus specifiek toewijzen. De derde kolom zijn de commando's die een bepaalde gebruiker of groep mag uitvoeren. Met NOPASSWD laat je toe de sudo gebruiker zijn commando uit te voeren zonder telkens zijn paswoord in te voeren.
Procesbeheer
[bewerken]ps (process status)
[bewerken]ps is een commando om informatie over actieve processen te tonen.
enkele opties voor het ps commando:
- -A: toon informatie over alle actieve processen. doet hetzelfde als optie -e (every)
- -a: toon informatie over alle actieve processen, behalve group leaders en processen zonder terminal
- -u UIDlijst: toon enkel processen geassocieerd met volgende UIDs.
- u: toon gedetailleerde informatie over het proces
- -p PIDlijst: toon enkel processen met volgende PIDs.
- x: toon processen zonder een terminal, bijvoorbeeld daemons
pstree is een gelijkwaardig programma op Unix systemen. Het toont de actieve processen in een boomdiagram om zodoende de relaties en hiërarchie tussen deze weer te geven.
top
[bewerken]Top geeft een real-time overzicht van al de actieve processen
kill
[bewerken]Het commando om een process te eindigen.
Stop allemogelijke processen.
$ kill -9 -1
Stopt het process met id nummer 450. (dit nummer wordt gevonden met top of ps)
$ kill -9 450
killall
[bewerken]Het commando killall stopt alle processen op commandonaam. Als er meer dan een proces het meegegeven commando gebruikt, dan worden ze allemaal afgesloten.
Flags:
- -g Sluit de procesgroep waarvan het proces deel uit maakt
- -v Toont na afsluiten van proces of het gelukt is en het proces ID.
Troubleshooting in een netwerk
[bewerken]Ping
[bewerken]Ping wordt gebruikt om te kijken of een computer bereikbaar is. Het stuurt een ICMP echo-request en krijgt dan een ICMP echo-response terug. Met ping kan je zowel de hostname als een IP-adres 'pingen'. Meest gebruikte parameters zijn -c om het aantal ping-pakketten aan te geven dat er mag gestuurd worden en -s die de grootte van de ping-pakketten specifieert.
$ ping -c 5 www.google.com PING www.l.google.com (209.85.229.106): 56 data bytes 64 bytes from 209.85.229.106: icmp_seq=0 ttl=54 time=28.390 ms 64 bytes from 209.85.229.106: icmp_seq=1 ttl=54 time=27.790 ms 64 bytes from 209.85.229.106: icmp_seq=2 ttl=54 time=28.098 ms 64 bytes from 209.85.229.106: icmp_seq=3 ttl=54 time=26.998 ms 64 bytes from 209.85.229.106: icmp_seq=4 ttl=54 time=28.805 ms --- www.l.google.com ping statistics --- 5 packets transmitted, 5 packets received, 0% packet loss round-trip min/avg/max/stddev = 26.998/28.016/28.805/0.609 ms
Traceroute
[bewerken]Traceroute geeft de route van de gebruikte host naar de meegegeven host weer. Het maakt gebruik van de TTL waarde (time to live) in de header van een IP-pakket. Routers onderweg verlagen het TTL-veld van passerende met 1 en de router die het op 0 zet, stuurt een ICMP-foutbericht (TTL exceeded). Traceroute start met de waarde 1 en verhoogt telkens met 1 tot het aan het bestemmingsadres bereikt is. Zo krijg je een voor een antwoorden terug met daarin het IP-adres van de volgende hop. Typisch wordt voor elke TTL-waarde 3 pakketten gestuurd.
Net als bij ping kan je zowel een hostname als een ip-adres gebruiken bij traceroute:
$ traceroute nl.wikipedia.org traceroute to nl.wikipedia.org (91.198.174.2), 30 hops max, 60 byte packets 1 Belgacom.lan (10.0.0.138) 0.533 ms 4.942 ms 9.952 ms 2 * * * 3 126.237-201-80.adsl-static.isp.belgacom.be (80.201.237.126) 59.782 ms 64.604 ms 69.678 ms 4 ge1-0.intlstr1.isp.belgacom.be (194.78.0.146) 246.682 ms ge0-0.intlstr1.isp.belgacom.be (194.78.0.46) 247.533 ms 248.542 ms 5 leaseweb.bnix.net (194.53.172.101) 98.550 ms 103.483 ms 108.281 ms 6 po100.sr1.evo.leaseweb.net (85.17.100.226) 111.513 ms 42.600 ms 47.323 ms 7 te-8-4.csw1-esams.wikimedia.org (85.17.163.241) 51.371 ms 56.267 ms 61.378 ms 8 rr.esams.wikimedia.org (91.198.174.2) 67.341 ms 51.634 ms 50.733 ms
Traceroute gebruikt normaal UDP of ICMP-berichten. Veel systeembeheerders blokkeren ICMP op hun routers uit veiligheidsoverwegingen. Daarom gebruikt men tegenwoordig ook vaak TCP connect-berichten op poort 80; dat lijkt op een webbrowser die een connectie wil openen met een webserver. Dit soort berichten raakt vaker door firewalls. Sommige versies van traceroute laten je toe om voor tcp-berichten te kiezen, of je kan ook alternatieven gebruiken, zoals tcptraceroute of tracepath. Die laatste heeft trouwens als voordeel dat je geen root moet zijn om het uit te voeren.
Mtr
[bewerken]Mtr combineert de functionaliteit van de traceroute en ping-programma's in een enkel diagnostisch command.
Wanneer mtr wordt uitgevoerd, onderzoekt het de netwerkverbinding tussen de host waar mtr op draait en de doelhost door het zenden van pakketten met lage TTL waarde. Het blijft pakketjes verzenden met een lage TTL, lettend op de reactietijd van de tussenliggende routers. Hierdoor kan mtr de responstijden en antwoordpercentages van alle hops op de route weergeven.
Voorbeeld output van mtr www.google.com:
My traceroute [v0.75] ilse.localdomain (0.0.0.0) Thu Dec 17 00:08:20 2009 Keys: Help Display mode Restart statistics Order of fields quit Packets Pings HOST: ilse.localdomain Loss% Snt Last Avg Best Wrst StDev 1. 10.0.2.2 0.0% 10 0.0 1.4 0.0 2.3 0.6 2. 12.118.134.5 2.0% 100 14.5 18.8 14.0 124.9 13.2 3. 12.17.165.97 0.0% 100 15.4 19.1 14.3 100.8 11.1 4. ....
Nmap
[bewerken]Nmap (“Network Mapper”) is een open source tool om een netwerk te verkennen en de beveiliging van het netwerk te monitoren. Nmap gebruikt ip-pakketten om het aantal hosts te bepalen op het netwerk alsook om de services te zien die deze hosts aanbieden , op welk operating system ze draaien, welk type firewalls en filters in gebruik zijn etc. Nmap wordt over het algemeen gebruikt door netwerkbeheerders om hun eigen netwerk te kunnen monitoren en om een eventueel beveiligingslek te vinden en dichten. Er bestaan ook enkele grafische interfaces voor nmap , zoals Zenmap. Voor de meeste opties heb je root-rechten nodig.
Gebruik
$ nmap [Scan Type(s)][Options] {target specification} # target kan een IP-adres, hostnaam of netwerk zijn. # bv: microsoft.com , 192.168.0.1 , 10.0.0-255.1-254
Host Discovery
[bewerken]Wanneer er geen opties meegegeven zijn dan stuurt Nmap een ICMP echo request, een TCP SYN pakket naar poort 443, een TCP ACK pakket naar poort 80 en een ICMP timestamp request.
-sL: List Scan: geeft een lijst van alle IP-addressen op het netwerk weer zonder pakketjes naar de hosts te sturen. -sP: Skip port Scan: normale ping scan, zonder de poorten te scannen. -PN: No Ping. -PE;-PP;-PM : ICMP ping types: Nmap kan verschillende type's pakketjes verzenden afhankelijk van de opties. -PE: ICMP type 8 (echo request). -PP: Timestamp Request. -PM: Address Mask Query. -PR: ARP Ping : Nmap zoekt hosts op een LAN via ARP (snel).
Scan Techniques
[bewerken]-sS: TCP SYN scan (standaard scantype als root). -sT: TCP connect scan (standaard scantype als gewone gebruiker). -sU: UDP scan. -sA: TCP ACK scan. -sO: IP protocol scan: Geeft weer welke IP protocollen ondersteund worden door het doel.
Port Specification and Scan Order
[bewerken]-p <Port ranges>: Scant alleen maar de gespecifieerde poorten. -F: Fast scan: Nmap scant maar 100 poorten ipv 1000 standaard.
Men kan ook wildcards gebruiken, bijvoorbeeld:
$ nmap -p ftp,http* {target specification} # scant alle ftp poorten en poorten die beginnen met http
Service/Version Detection
[bewerken]-sV:Geeft weer welke services de host aanbiedt.
Script Scan
[bewerken]-sC: Geeft weer welke scripts er draaien op de host. --script “scriptnaam”: Voert een specifiek script uit.
OS Detection
[bewerken]-O: Geeft weer welk OS er draait op de host.
Timing and Performance
[bewerken]Manueel instellen hoe aggressief of snel Nmap de hosts moet scannen (-T4< of -T aggressive is normaal op een breedbandverbinding)
-T paranoid|sneaky|polite|normal|aggressive|insane
Firewall/IDS Evasion and Spoofing
[bewerken]-f: Fragment Packets: Nmap gebruikt mini gefragmenteerde IP pakketjes verhoogd de “sneakyness”. -D <decoy1>[,<decoy2>]: Nmap gebruikt decoys zodat het lijkt voor de host alsof de decoys ook het netwerk aan het scannen zijn wat het moeilijker maakt voor de host om de source de ontdekken. -S <Ip_address>: Spoof IP-adres: Uw eigen IP-adres verbergen en een vals gebruiken.
Output
[bewerken]-oN <filespec>: normal output. -oX <filespec>: XML output. -oG <filespec>: grepable output. -oA <basename>: Output in alle formaten. -v: increase verbosity level , Nmap schrijft meer details weg over de scans.
Misc
[bewerken]-6: Enable Ipv6 Scanning. -A: Aggressive Scan Options. -V: Geeft de huidige versie van Nmap weer. -h: Help.
Voorbeelden
[bewerken]Scant al de gereserveerde TCP poorten op de machine scanme.nmap.org en geeft uitgebreide informatie.
$ nmap -v scanme.nmap.org
Lanceert een SYN en OS scan naar elke machine die online is in het netwerk waar scanme.nmap.org zich bevindt.
$ nmap -sS -O scanme.nmap.org/24
Nmap scant 4096 IP's op zoek naar webservers zonder deze te pingen en bewaart de output in grepable en XML formaten.
$ nmap -PN -p80 -oX logs/pb-port80scan.xml -oG logs/pb-port80scan.gnmap 216.163.128.20/20
Andere netwerktools
[bewerken]Ifconfig
[bewerken]De opdracht ifconfig wordt gebruikt om een netwerkinterface te configureren. Men kan o.a. het ip-adres, het subnetmask wijzigen of bijvoorbeeld een netwerkinterface in- of uitschakelen.
De opdracht
ifconfig eth0 address=192.168.1.2 mask=255.255.255.0
stelt de interface eth0 in met ipadres 192.168.1.2 en subnetmasker 255.255.255.0.
Als er geen argumenten met ifconfig worden meegegeven, dan wordt getoond wat de huidige instellingen zijn.
Voorbeeldoutput:
eth0 Link encap:Ethernet HWaddr 00:0F:20:CF:8B:42 inet addr:192.168.1.2 Bcast:192.168.1.255 Mask:255.255.255.0 UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:2472694671 errors:1 dropped:0 overruns:0 frame:0 TX packets:44641779 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1000 RX bytes:1761467179 (1679.8 Mb) TX bytes:2870928587 (2737.9 Mb) Interrupt:28
Netstat
[bewerken]Netstat wordt gebruikt om de status van alle netwerkverbindingen te bekijken. Het gaat dan om openstaande verbindingen (handig om te detecteren of iemand op uw systeem aan het werk is), de routing-tabel en netwerkinterfaces. Het verwarrende aan netstat is dat het niet alleen informatie weergeeft over openstaande verbindingen, maar ook over sockets die in gebruik zijn. Het commando netstat zonder argumenten laat dus heel veel informatie zien over interne processen die actief zijn.
Enkele handige flags:
- -t: Weergave van welke (TCP-)verbindingen er naar uw computer open staan
- -l: Toon enkel de serverpoorten ("luisterende" poorten)
- -n: Geef enkel IP-adressen weer, probeer niet om te zetten naar hostnamen (zo vermijd je DNS-requests die lang kunnen duren)
- -u: Welke UDP-verbindingen open staan
- -r: Lees de kernel routing tables uit.
- -s: Display beknopte statistieken voor elk protocol.
- --interface=iface , -i: Toon een tabel met alle netwerk interfaces, of de opgegeven iface.
Een voorbeeld:
$ netstat -l -t -n Active Internet connections (only servers) Proto Recv-Q Send-Q Local Address Foreign Address State tcp 0 0 127.0.0.1:60618 0.0.0.0:* LISTEN tcp 0 0 0.0.0.0:111 0.0.0.0:* LISTEN tcp 0 0 127.0.0.1:631 0.0.0.0:* LISTEN tcp 0 0 0.0.0.0:17500 0.0.0.0:* LISTEN tcp 0 0 0.0.0.0:40573 0.0.0.0:* LISTEN tcp6 0 0 :::139 :::* LISTEN tcp6 0 0 ::1:631 :::* LISTEN tcp6 0 0 :::445 :::* LISTEN
Route
[bewerken]Route manipuleert of toont de kernel IP-routing tabellen. Het primaire gebruik is het aanmaken van statische routes naar specifieke hosts of netwerken via een interface nadat deze is geconfigureerd met het ifconfig programma.
Wanneer de 'add' of 'del' opties worden gebruikt, wijzigt route de routing tabellen. Zonder deze opties, geeft route de huidige inhoud van de routing tabellen. In dat geval is de optie -n nuttig, die probeert niet om hostnamen op te zoeken via DNS-requests.
Toegang tot individuele computer host gespecificeerd via netwerkkaart eth1:
route add -host 123.213.221.231 eth1
Stel de default gateway in voor toegang tot remote network via interface card eth0:
route add default gw 201.51.31.1 eth0
SSH
[bewerken]SSH ("secure shell") is een protocol dat vanop afstand op een veilige manier inloggen op een linux systeem mogelijk maakt. Het is de opvolger van telnet en onderscheidt zich door het gebruik van encryptie. De standaardpoort voor SSH is 22.
Gebruik Standaard probeert de openSSH client in te loggen op het doel ip-adres met de gebruikersnaam van de gebruiker die ssh uitvoert, je kan een gebruikersnaam specifiëren met de -l vlag.
$ ssh [-l gebruikersnaam] doel-ip
Clients Op alle Unix systemen (Linux, OSX, BSD, Solaris, ...) is er een standaard een SSH client aanwezig. Er bestaat ook een open source SSH client voor Windows die geen installatie vereist: PuTTY
De server daemon Het ssh daemon proces heet sshd. Deze start bij RedHat-systemen standaard op en heeft een uitzondering in de firewall. De configuratie is te vinden in /etc/ssh/sshd_config, waar je bijvoorbeeld de volgende beveiligingsmaatregel kan nemen om rechtstreekse logins met de root gebruikersnaam te verhinderen:
PermitRootLogin no
Handig om weten
bestanden kopiëren via ssh:
scp bestand naam@server:/home/user
scp naam@server:/home/user/bestand
inloggen zonder wachtwoord
– stap 1: publiek/privaat sleutelpaar aanmaken
ssh-keygen
– stap 2: publieke sleutel kopiëren naar server
ssh-copy-id
user@localhost $ ssh user@server
Password:
user@server $ exit
user@localhost $ ssh-keygen -t rsa
user@localhost $ ssh-copy-id -i ~/.ssh/id_rsa.pub user@server
Password:
user@lilith $ ssh user@server
user@server $
Telnet
[bewerken]Telnet is een netwerkprotocol dat het mogelijk maakt op afstand in te loggen op een machine en die via een opdrachtregel te besturen. Als gebruiker ziet dit er hetzelfde uit als SSH. Tekstregels die de gebruiker intikt, evenals het antwoord van de server, worden via een eenvoudige TCP-verbinding doorgestuurd, zonder versleuteling. Telnet wordt daarom als een belangrijk beveiligingsrisico gezien, omdat wie dit netwerkverkeer kan onderscheppen gevoelige data, o.a. wachtwoorden kan lezen. Een systeembeheerder zal telnet dus ook ten allen tijde vermijden.
Whois
[bewerken]Zoek in een whois-database naar een domeinnaam, IP-adres of netwerkkaart naam. De geretourneerde informatie varieert, maar bestaat meestal uit administratieve en technische contacten, zodat u een persoon die problemen op dat domein kan behandelen kan vinden. Standaard retourneert het commando informatie over .Com, .Net, en .Edu-domeinen, maar andere hosts voor andere domeinen kunnen ook worden opgevraagd met behulp van de host of -h optie.
Voorbeeld:
$ whois sf.net Whois Server Version 2.0 Domain names in the .com and .net domains can now be registered with many different competing registrars. Go to https://www.internic.net for detailed information. Domain Name: SF.NET Registrar: TUCOWS INC. Whois Server: whois.tucows.com Referral URL: https://domainhelp.opensrs.net Name Server: NS-1.CH3.SOURCEFORGE.COM Name Server: NS-1.SOURCEFORGE.COM Name Server: NS-2.CH3.SOURCEFORGE.COM Status: ok Updated Date: 26-oct-2010 Creation Date: 22-dec-1994 Expiration Date: 21-dec-2011 >>> Last update of whois database: Sat, 15 Jan 2011 13:23:22 UTC <<< [...]