Hva er netcat?
NetCat er et nettverksverktøy som lar brukerne skrive og lese data til og fra datanettverk. Vanligvis bruker den TCP eller UDP for denne funksjonen. Netcat gjør det enkelt å sende og motta meldinger på Linux og dens back-Ends-lignende natur, som gjør at den kan brukes av andre skript og programmer. Videre er det tverrplattform og forhåndsinstallert på mange populære Linux-distroder som Debian, Ubuntu og Centos. Det er et nyttig verktøy som gjør informasjonsdeling, eller mer generelt datanettverk, mulig og enkelt.
Installere Netcat
La oss se på hva det grunnleggende om Netcat er og hvordan du kan begynne å bruke det til nettverk. Som vi nevnte tidligere, er det stort sett forhåndsinstallert i Ubuntu (Linux -distroen vi vil bruke for å demonstrere bruk av NC) og andre populære Linux -systemer, så du trenger ikke å installere det sannsynligvis. Imidlertid, hvis du er en Centos 7/8 eller Redhat -bruker, er følgende korte opplæring om installasjonen for deg.
Det første trinnet er å sørge for at du har YUM -kommandoen som allerede er installert på datamaskinen din, da det er det vi hovedsakelig vil bli brukt til å installere NetCat. Når det er sagt, må du oppdatere alle pakkene dine før du fortsetter videre.
$ yum oppdatering -y
Når det er gjort, er alt som er igjen å gjøre å installere Netcat -pakken. Kjør følgende kommando for å gjøre det.
$ yum installasjon -y nc
Til slutt kan du bekrefte om installasjonen gikk greit ved å kjøre en RPM -kommando.
$ RPM -QA | grep -i rmap -ncat
På Ubuntu, hvis du av en eller annen grunn ikke allerede har det forhåndsinstallert, kjør kommandoen nedenfor for å få det.
$ sudo apt install netcat
Det burde være det for installasjonsinstruksjonene. Når du er sikker, har du Netcat i gang på Linux -systemet ditt, fortsett til neste avsnitt.
Hvordan du bruker netcat?
Hvis du er en Linux -nybegynner eller noen som aldri har brukt Netcat før, kan det være litt forvirrende og skremmende i starten. Men bekymre deg ikke, da vi skal lede deg gjennom hvert trinn i prosessen. Så først og fremst, hva er den generelle syntaksen til Netcat -kommandoen?
$ nc [-46cddfhklnnrstuuvz] [-c certfile] [-e name] [-h hash] [-i lengde] [-i intervall] [-k keyfile] [-m ttl] [-m minttl] [-o lengde ] [-o staplefile] [-p proxy_usname] [-p source_port] [-r cafile] [-s source] [-t nøkkelord] [-v rtable] [-w timeout] [-x proxy_protocol] [-x proxy_address [: port]] [destinasjon] [port]
Riktignok ser det skremmende ut hvis du nettopp begynner med datanettverk. La oss forenkle det litt og bringe det ned til et tamer, mer tilgjengelig nivå.
$ NC [Alternativer] vertsport
Det er bedre. Nå skal du ikke bruke alle alternativene samtidig, så kommandoene vi skal takle vil ikke være så kompliserte. Hovedmålet med denne opplæringen er å vise deg hvordan du kan sende og motta meldinger med Netcat, som vi kommer til så snart du er kjent med det grunnleggende.
Vi har tre argumenter i den generelle syntaksen - nemlig alternativer, vert og port. Som standard vil Netcat etablere en TCP -forbindelse med verten og porten du skriver inn, men du kan endre den til UDP ved å sende -u til kommandoen, som vist nedenfor.
$ nc -u vertshavn
Deretter kan vi teste om Netcat fungerer riktig eller ikke ved å prøve å koble til Google.
$ nc -vz google.com 443
Her -v spesifiserer verbositetsnivået, Z står for null inngang/utgangsmodus, Google er verten, og 443 er porten. Enkelt nok, ikke sant?
Sette opp en chatteserver
Nå som vi gikk over det grunnleggende om Netcat og fikk en god forståelse av hvordan det fungerer, er det på tide at vi begynner å sette opp en chatteserver. Det er enklere enn du skulle tro. For et toveis nettverk trenger vi en server og en klient. Når serveren kjører, er vi i virksomhet så snart klienten kobles til den.
Vi kan starte en netcat -server i lyttemodus ved å kjøre følgende kommando. (-P spesifiserer port)
$ nc -l -p 12345
For demonstrasjonsformål vil vi sette opp serveren og klienten på samme datamaskin, og derfor gjøre Localhost til vertsnavnet. For å koble til serveren, må vi legge inn klientmodus. Dette kan gjøres med en kommando med den generelle syntaksen til
$ nc vertsnavn port
La oss koble til vertsnavnet og porten til vår tidligere definerte server ved å kjøre følgende kommando.
$ NC Localhost 12345
Når det er gjort, er chatteserveren klar og klar til å gå. Alt som er igjen er å sende og motta meldinger frem og tilbake mellom serveren og klienten. La oss se hvordan vi gjør det.
Sende og mottar meldinger
Som vi nevnte tidligere, er serveren og klienten i vårt tilfelle på samme maskin. Det betyr at vi kan sende og motta meldinger gjennom forskjellige terminalvinduer og legge inn forskjellige modus - server og klient. Så la oss starte opp et annet terminalvindu og begynne å sende hverandre noen tekstmeldinger.
Alt du trenger å gjøre er å skrive inn meldingen din og treffe Enter; Dette vises på bildene nedenfor.
Det er en annen måte å gjøre det også på, noe som kan vise seg å være kortere enn metoden beskrevet tidligere. Denne metoden bruker Echo -funksjonen for å sende meldinger. Den generelle syntaksen for denne kommunikasjonsløsningen er som følger.
$ ekko [tekst] | Netcat vert port
Lignende, men ikke helt det samme. I tekstalternativet kan du legge inn sifre, tegn, strenger; hva som helst. Så hvis du for eksempel ville sende sifferet 2 til LocalHost -serveren som vi nettopp satte opp på port 12345, ville du skrive:
$ ECHO 2 | Netcat localhost 12345
Og det er det. Du kan sende og motta meldinger med Netcat gjennom noen av metodene som er beskrevet som begge fungerer like bra; Det er et spørsmål om personlig valg mer enn noe annet.
Konklusjon
I denne guiden beskrev vi opprinnelig hva Netcat er, hvordan du installerer det og dets grunnleggende. Senere viste vi hvordan du kunne sette opp en chatteserver og begynne å sende og motta meldinger på kort tid. Forhåpentligvis vil du ha lært hvordan du kan bruke NetCat til nettverk med andre Linux -systemer.