8 Netcati (nc) käsk koos näidetega
Netcat (või lühidalt nc) on lihtne, kuid võimas võrgu käsurea tööriist, mida kasutatakse Linuxis mis tahes toimingute tegemiseks, mis on seotud TCP, UDP või UNIX-domeenipesadega.
Netcati saab kasutada pordi skaneerimiseks, pordi ümbersuunamiseks, pordikuulajana (sissetulevate ühenduste jaoks); seda saab kasutada ka kaugühenduste ja nii paljude muude asjade avamiseks. Pealegi saate seda kasutada tagauksena, et pääseda juurde sihtserverile.
Selles artiklis selgitame Netcati kasutuskäske näidetega.
Netcati installimine ja kasutamine Linuxis
Netcati paketi installimiseks oma süsteemi kasutage oma Linuxi levitamiseks vaikepaketi haldurit.
$ yum install nc [On CentOS/RHEL] $ dnf install nc [On Fedora 22+ and RHEL 8] $ sudo apt-get install Netcat [On Debian/Ubuntu]
Kui netcati pakett on installitud, saate jätkata, et õppida järgmistes näidetes käsu netcat kasutamist.
Netcati saab kasutada sadamate skannimiseks: selleks, et teada saada, millised sadamad on sihtmasinas avatud ja töötavad. See suudab skannida ühte või mitut avatud porti.
Siin on näide: valik -z
seab nc lihtsalt kuulama deemoneid otsima, ilma et neile tegelikult andmeid saadetaks. Valik -v
lubab üksikasjaliku režiimi ja -w
määrab ühenduse aegumise, mida ei saa luua.
$ nc -v -w 2 z 192.168.56.1 22 #scan a single port OR $ nc -v -w 2 z 192.168.56.1 22 80 #scan multiple ports OR $ nc -v -w 2 z 192.168.56.1 20-25 #scan range of ports
Netcat võimaldab teil faile üle kanda kahe Linuxi arvuti või serveri vahel ja mõlemas süsteemis peab olema nc installitud.
Näiteks ISO-pildifaili kopeerimiseks ühest arvutist teise ja ülekande edenemise jälgimiseks (utiliidi pv abil) käivitage saatja/serveri arvutis (kus ISO-fail on olemas) järgmine käsk.
See töötab nc kuulamisrežiimis ( -l
lipp) pordil 3000.
$ tar -zcf - debian-10.0.0-amd64-xfce-CD-1.iso | pv | nc -l -p 3000 -q 5
Ja käivitage vastuvõtja/klientarvutis faili saamiseks järgmine käsk.
$ nc 192.168.1.4 3000 | pv | tar -zxf -
Netcati abil saate luua ka kohese lihtsa käsurea sõnumserveri. Nagu eelmises kasutusnäites, peab nc olema installitud mõlemasse jututoa jaoks kasutatavasse süsteemi.
Vestlusserveri loomiseks porti 5000 käivitage ühes süsteemis järgmine käsk.
$ nc -l -vv -p 5000
Teises süsteemis käivitage järgmine käsk, et käivitada vestlusseanss arvutisse, kus töötab sõnumside server.
$ nc 192.168.56.1 5000
Alustage käsu nc suvandiga -l
, mida kasutatakse põhilise, ebaturvalise veebiserveri loomiseks staatiliste veebifailide õppimiseks. Selle näitamiseks looge .html
fail, nagu näidatud.
$ vim index.html
Lisage faili järgmised HTML-read.
<html> <head> <title>Test Page</title> </head> <body> <p>Serving this file using Netcat Basic HTTP server!</p> </body> </html>
Salvestage muudatused faili ja väljuge.
Seejärel esitage ülaltoodud fail HTTP kaudu, käivitades järgmise käsu, mis võimaldab HTTP-serveril pidevalt töötada.
$ while : ; do ( echo -ne "HTTP/1.1 200 OK\r\n" ; cat index.html; ) | nc -l -p 8080 ; done
Seejärel avage veebibrauser ja pääsete sisule juurde järgmise aadressi abil.
http://localhost:8080 OR http://SERVER_IP:8080
Pange tähele, et saate Netcati HTTP-serveri peatada, vajutades klahvi [Ctrl + C]
.
Teine kasulik Netcati kasutusviis on serveri ühenduse probleemide tõrkeotsing. Siin saate Netcati abil kontrollida, milliseid andmeid server saadab vastusena kliendi väljastatud käskudele.
Järgmine käsk tõmbab saidi example.com avalehe.
$ printf "GET / HTTP/1.0\r\n\r\n" | nc text.example.com 80
Ülaltoodud käsu väljund sisaldab veebiserveri saadetud päiseid, mida saab kasutada tõrkeotsingu eesmärgil.
Netcati saate kasutada ka pordibännerite hankimiseks. Sel juhul ütleb see teile, milline teenus töötab teatud pordi taga. Näiteks selleks, et teada saada, mis tüüpi teenus konkreetses serveris porti 22 taga töötab, käivitage järgmine käsk (asendage 192.168.56.110 sihtserveri IP-aadressiga). Lipp -n
tähendab DNS-i või teenuse otsingu keelamist.
$ nc -v -n 192.168.56.110 80
Netcat toetab ka UNIX-domeeni voogepesade loomist. Järgmine käsk loob ja kuulab UNIX-domeeni voo pistikupesa.
$ nc -lU /var/tmp/mysocket & $ ss -lpn | grep "/var/tmp/"
Netcati saate käivitada sama hästi kui tagauks. See nõuab siiski rohkem tööd. Kui Netcat on installitud sihtserverisse, saate seda kasutada tagaukse loomiseks, kaugkäskluse saamiseks.
Tagaukseks on vaja, et Netcat kuulaks sihtserveris valitud porti (nt port 3001) ja seejärel saate oma arvutiga selle porti ühendada järgmiselt.
See on käsk, mis on ette nähtud kaugserveris käitamiseks, kus valik -d
keelab stdinilt lugemise ja -e
määrab käsu, mida käivitada sihtsüsteemis.
$ nc -L -p 3001 -d -e cmd.exe
Ja lõpuks, Netcati saab kasutada erinevate teenuste/protokollide, sealhulgas HTTP, SSH ja paljude teiste puhverserverina. Lisateavet leiate selle man-lehelt.
$ man nc
Selles artiklis oleme selgitanud 8 praktilist Netcati käsu kasutamise näidet. Kui teate mõnda muud praktilist kasutust, jagage meiega allpool oleva tagasiside vormi kaudu. Võite ka küsimuse esitada.