Čtení a zápis jsou základní operace, které lze aplikovat na data v každém systému. TCP je zkráceno jako Transmission Control Protocol a jde o komunikační protokol orientovaný na připojení, který usnadňuje počítačům v síti odesílání a přijímání zpráv. Je to nejrozšířenější protokol v sítích, které využívají internetový protokol (IP); při společném použití se někdy označuje jako TCP/IP. UDP, zkráceně User Datagram Protocol, je komunikační protokol používaný k vytváření nízkolatenčních a ztrátově odolných spojení mezi aplikacemi na internetu.
Zde v LinuxAPT se podíváme na "Netcat", příkaz, který se používá ke čtení a zápisu disků v sítích pomocí protokolů TCP a UDP na Ubuntu 20.04 (Linux OS).
Více o Netcatu?
Netcat může být užitečným nástrojem pro jakýkoli IT tým, ačkoli růst interně spravovaných síťových služeb a cloud computingu činí toto konkrétní prostředí přirozeným řešením.
Obslužná aplikace Netcat obsahuje několik pokynů pro správu sítí a sledování úrovně dat mezi systémy. Protokoly TCP a UDP jsou základem počítačových sítí, jako je internet. Je považován za švýcarský armádní nůž síťových nástrojů a patří mezi nejúčinnější nástroje ve zbrojnici síťových a systémových administrátorů. Netcat je multiplatformní program, který běží na Linuxu, Windows, Mac OS X a BSD. Netcat lze použít k ladění a analýze problémů s konektivitou, stejně jako ke skenování otevřených portů, přenosu dat a fungování jako proxy.
Jak používat Netcat ke čtení a zápisu dat v síti?
Na macOS a běžných distribucích Linuxu, jako je Ubuntu a Debian, je balíček Netcat předinstalován. Některé z obslužných programů "Netcat" jsou uvedeny níže:
- Proveďte skenování portů prostřednictvím Netcat.
- Odesílání souborů přes Netcat.
- Vytvořte webový server prostřednictvím Netcat.
Jeho syntaxe je:
$ nc [options] host port
Na systémech Ubuntu se používá „nc“ nebo „netcat“.
Bude vytvořeno TCP spojení, které poskytuje hostitele/hostitele a port/porty Netcat jako výchozí.
Pokud chcete vytvořit připojení UDP, použijte volbu -u:
$ nc -u host port
1. Proveďte skenování portů prostřednictvím Netcat
Jednou z nejrozšířenějších aplikací Netcat je skenování portů. Máte možnost skenovat jeden port nebo řadu portů.
A. V případě protokolu TCP pro vyhledání otevřených portů:
Chcete-li skenovat otevřené porty v rozsahu 30-60 pomocí Netcat, spusťte příkaz uvedený níže:
$ nc -z -v 10.0.2.15 30-60
- -z dá pokyn NC, aby pouze vyhledávalo otevřené porty a neposílalo na ně žádná data.
- -v informuje o podrobných informacích.
Filtrujte výsledek pomocí příkazu grep:
$ nc -z -v 10.0.2.15 2>&1 | grep succeeded
b. Pro UDP:
Jednoduše přidejte do skriptu parametr -u pro kontrolu portů UDP v níže uvedeném příkazu:
$ nc -z -v -u 10.0.2.15 30-60
2. Odešlete soubory přes Netcat
Vytvořením základního modelu klienta nebo serveru lze Netcat použít k přenosu dat z jednoho hostitele na druhého. Toho se dosáhne pomocí volby -l na přijímajícím hostiteli, aby Netcat naslouchal na určitém portu, pak se vytvoří standardní TCP spojení z více počítačů a přenese se přes něj soubor.
Spusťte níže uvedený příkaz na straně příjemce, která otevře port 6666 pro příchozí připojení a přesměruje výsledek výstupu do souboru:
$ nc -l 6666 > linux1.txt
Linux1.txt je název souboru, který se má otevřít pro zápis, a název souboru můžete změnit podle svých požadavků.
Nyní bude přijímající hostitel připojen k odesílajícímu hostiteli a odešle soubor:
$ nc google.com 6666 < linux2.txt
3. Vytvořte webový server prostřednictvím Netcat
Nejprve vytvořte jednoduchý HTML soubor "linux, html" pomocí příkazu nano:
$ nano linux.html
Zadejte níže uvedený obsah nebo můžete přidat obsah podle svého požadavku podle pravidel souboru html:
<html>
<head>
<title> Linux<title>
<head>
<html>
Uložte pomocí „Ctrl+S“ a zavřete soubor pomocí „Ctrl+X“:
$ printf 'HTTP/1.1 200 OK\n\n%s' "$(cat linux.html)" | netcat -l 8888
Nyní v prohlížeči můžete k souboru přistupovat pomocí níže uvedeného odkazu:
http://server-ip:8888