GNU/Linux >> Linux Esercitazione >  >> Ubuntu

Come utilizzare il comando Netcat per leggere e scrivere dati attraverso la rete

La lettura e la scrittura sono le operazioni di base che possono essere applicate ai dati in ogni sistema. TCP è abbreviato in Transmission Control Protocol ed è un protocollo di comunicazione orientato alla connessione che semplifica l'invio e la ricezione di messaggi da parte dei computer di una rete. È il protocollo più utilizzato nelle reti che utilizzano il protocollo Internet (IP); a volte viene chiamato TCP/IP quando viene utilizzato insieme. UDP, abbreviato in User Datagram Protocol, è un protocollo di comunicazione utilizzato per costruire connessioni a bassa latenza e tolleranti alle perdite tra applicazioni su Internet. In questo articolo, discuteremo del comando "Netcat", che viene utilizzato per leggere e scrivere dischi su reti utilizzando i protocolli TCP e UDP su Ubuntu 20.04 (sistema operativo Linux).

L'applicazione di utilità Netcat include diverse istruzioni per la gestione delle reti e il monitoraggio del livello di dati tra i sistemi. I protocolli TCP e UDP sono alla base delle reti di computer, come Internet. È considerato il coltellino svizzero degli strumenti di rete ed è uno degli strumenti più efficaci nell'arsenale degli amministratori di rete e di sistema. Netcat è un programma multipiattaforma che funziona su Linux, Windows, Mac OS X e BSD. Netcat può essere utilizzato per eseguire il debug e analizzare i problemi di connettività, nonché per eseguire la scansione di porte aperte, trasferire dati e fungere da proxy.

Utilizzo di Netcat per leggere e scrivere dati attraverso la rete

Su macOS e distribuzioni Linux comuni come Ubuntu e Debian, il pacchetto Netcat viene preinstallato. Alcune delle utilità "Netcat" sono menzionate di seguito.

  • Esegui la scansione delle porte tramite Netcat
  • Invio di file tramite Netcat
  • Crea un server web tramite Netcat

Sintassi:

$ nc [options] host port

Sui sistemi Ubuntu viene utilizzato "nc" o "netcat".

Verrà stabilita una connessione TCP per fornire host/host e porta/porte da Netcat come predefinita. Usa l'opzione -u se vuoi creare una connessione UDP.

$ nc -u host port

Esegui la scansione delle porte tramite Netcat

Una delle applicazioni Netcat più diffuse è la scansione delle porte. Hai la possibilità di scansionare una singola porta o un intervallo di porte.

TCP:

Cerca porte aperte:

Per eseguire la scansione delle porte aperte nell'intervallo 30-60 utilizzando Netcat, eseguire il comando indicato di seguito:

$ nc -z -v 10.0.2.15 30-60

-z indicherà al NC di eseguire la scansione delle porte aperte e di non inviare loro alcun dato.

-v dice le informazioni su verbose.

Filtra il risultato usando il comando grep:

$ nc -z -v 10.0.2.15 2>&1 | grep succeeded

Nessuna connessione riuscita in questo intervallo.

UDP:

Aggiungi semplicemente il parametro -u allo script per verificare la presenza di porte UDP nel comando indicato di seguito:

$ nc -z -v -u 10.0.2.15 30-60

Non ci sono porte UDP in questo intervallo.

Invio di file tramite Netcat

Stabilendo un modello client o server di base, Netcat può essere utilizzato per trasportare dati da un host all'altro. Ciò si ottiene utilizzando l'opzione -l sull'host ricevente per impostare Netcat in ascolto su una determinata porta, quindi creando una connessione TCP standard da più computer e trasferendo il file su di essa.

Esegui il comando indicato di seguito sull'estremità ricevente, che apre la porta 6666 per le connessioni in entrata e devia il risultato di output nel file:

$ nc -l 6666 > linux1.txt

Linux1.txt è il nome del file da aprire per la scrittura e puoi modificare il nome del file in base alle tue esigenze.

Ora l'host ricevente sarà connesso all'host mittente e invia il file:

$ nc google.com 6666 < linux2.txt

Creazione di un server Web tramite Netcat

Per prima cosa, crea un semplice file HTML "linux, html" usando il comando nano:

$ nano linux.html

Digita il contenuto indicato di seguito oppure puoi aggiungere contenuto in base alle tue esigenze seguendo le regole del file html.

<html>

 <head>

 <title> Linux<title>

 <head>

<html>

Salva con "Ctrl+S" e chiudi il file con "Ctrl+X".

$ printf 'HTTP/1.1 200 OK\n\n%s' "$(cat linux.html)" | netcat -l 8888

Ora nel browser puoi accedere al file tramite il link sotto indicato:

http://server-ip:8888

Conclusione:

Netcat è un'utilità Linux di base che utilizza i protocolli TCP/UDP per leggere e scrivere dati attraverso connessioni di rete. È pensato per essere uno strumento di back-end affidabile che può essere utilizzato direttamente o semplicemente da altre applicazioni e programmi. Questo articolo fornisce informazioni sull'utilizzo di Netcat con il protocollo TCP e UDP e altri usi come la scansione delle porte, l'invio di file e la creazione di un server web.


Ubuntu
  1. Come utilizzare il comando di arresto di Linux in Ubuntu 18.04 e CentOS 7

  2. Come creare un alias e utilizzare il comando alias in Linux

  3. Come usare il comando mtr di Linux

  4. Usa il comando Netcat per leggere e scrivere dati attraverso la rete su Ubuntu 20.04

  5. Come installare e utilizzare il comando Ping in Linux

Come usare Sudo e il file Sudoers

Come utilizzare il comando tcpdump in Ubuntu 20.04

Come utilizzare il comando Linux Top

Come installare e utilizzare il comando Exa su Ubuntu 20.04

Come usare il comando netstat in Linux

Linux perf:come utilizzare il comando e il profiler