Come controllare la rete da terminale con Linux

By Jessica Lambiase

nethogs

Anche se non tutti fanno uso di pratiche del genere, monitorare lo stato della propria rete può rivelarsi utile in molteplici casi.

Ad esempio, se improvvisamente notate attività sospetta (ed inaspettata) di una o più applicazioni della vostra macchina, con una serie di comandi potrete rendervi conto delle applicazioni che si collegano alla rete per constatare se siete vittime di un rootkit o di un malware in generale.

O, ancora, potrebbe ritornare utile rendervi conto di quale programma usa maggiormente la banda di rete. Se siete sviluppatori e state scrivendo un’app che fa uso di Internet, inoltre, monitorare il tutto può essere molto utile ai fini di debug.

Di seguito mostreremo alcuni esempi di utilizzo tipico di quattro applicazioni da linea di comando – utili quindi anche per l’utilizzo da remoto – atte allo scopo.

Le applicazioni contrassegnate come “monitor” permetteranno di monitorare il sistema in real-time finché non verranno manualmente interrotte, quelle contrassegnate come “istantanee” restituiranno come output un’istantanea dello stato della rete.

Controllare la rete da terminale con Linux

Nethogs (Monitor)

Indubbiamente uno dei tool dall’utilizzo più semplice e particolarmente adatto agli scopi prefissi: in poche parole nethogs permette di visualizzare il traffico di rete in transito tra le applicazioni eseguite in modalità grafica.

Richiede i privilegi di root per essere utilizzato.

Tramite nethogs si possono ottenere informazioni quali il pid del processo, l’utente che lo esegue, il nome (ed eventualmente i parametri) del processo, l’interfaccia di rete e la velocità di invio e ricezione dei dati (in KB/s).

Per procedere, basterà digitare a terminale il comando

nethogs interfaccia_di_rete

(ad es. nethogs wlan0). E’ possibile uscire in qualsiasi momento dal monitor utilizzando il tasto “q”.

Nethogs potrebbe non essere installato di default sul sistema operativo: in tal caso potrete utilizzare il vostro gestore pacchetti (apt, dnf, yum, pacman, yaourt o quant’altro) per procedere al download e all’installazione.

Nel caso di Ubuntu e Debian potrete installare nethogs tramite il comando

sudo apt install nethogs

TCPDUMP (Monitor)

controllare la rete da terminale - tcpdump

TCPDump è indubbiamente uno degli applicativi più completi ed utili (forse qualche volta fin troppo) per sorvegliare del traffico di rete.

Esso permette di monitorare, visualizzare, analizzare e loggare qualsiasi cosa passi attraverso la rete, permettendo all’utente di prendere visione degli indirizzi di arrivo e destinazione, delle porte d’ascolto, dell’offset dei pacchetti, della tipologia dei pacchetti in transito, dell’header (o del contenuto completo) dei pacchetti, delle applicazioni locali che li gestiscono e tanto, tanto altro ancora.

Come avrete inteso tcpdump è particolarmente utile ai fini di low-level debugging e necessita dei permessi di root per funzionare. Un utilizzo di base di tcpdump potrebbe essere

tcpdump -bi interfaccia_di_rete

Volendo è possibile redirigere l’output in un file di testo, digitando

tcpdump -bi interfaccia_di_rete > logfile.txt

Per interrompere la scansione è possibile utilizzare in qualsiasi momento la combinazione di tasti CTRL+C.

LSOF (Istantanea)

lsof

Il comando lsof (list open file) permette, nel suo utilizzo di base, di ottenere una lista dei file aperti dal sistema operativo.

Se invocato col parametro -i permette di ottenere informazioni sui processi (nomi e pid) che utilizzano la rete, sul loro stato (connessione stabilita, in chiusura, in listening), sul tipo di protocollo IP usato (ipv4/v6), sulla dimensione dei pacchetti, sulle porte locali in uso e sull’indirizzo di destinazione dei pacchetti in uscita (o l’indirizzo di arrivo dei pacchetti in entrata).

Quindi, per ottenre una lista di tutti i processi utente che interagiscono con la rete, bisognerà digitare:

lsof -i

Per ottenere una lista dei processi utente che stanno utilizzando la rete andremo a digitare

lsof -i | grep ESTABLISHED

Per ottenere una lista dei processi di tutti gli utenti (e del sistema operativo) che interagiscono con la rete dovremo eseguire gli stessi comandi da root (o utilizzando sudo).

Netstat (istantanea)

netstat

Il comando netstat, nel suo utilizzo di base, permette di visualizzare diverse statistiche su tutte le connessioni (sia internet che di sistema, tramite socket).

Se raffinato con determinati parametri sarà possibile visualizzare informazioni sull’utilizzo della rete del tutto simili a quelle mostrate da lsof, con in più le code di invio e ricezione pacchetti.

Quindi, per ottenre una lista di tutti i processi utente che interagiscono con la rete, bisognerà digitare:

netstat -tuapw --numeric-hosts --numeric-ports

Per ottenere una lista dei processi utente che stanno utilizzando la rete bisognerà digitare

netstat -tuapw --numeric-hosts --numeric-ports | grep ESTABLISHED

Chiaramente è possibile salvare in un file l’output del comando semplicemente utilizzando l’operatore di redirezione:

netstat -tuapw --numeric-hosts --numeric-ports | grep ESTABLISHED > log.txt

Per ottenere una lista dei processi di tutti gli utenti (e del sistema operativo) che interagiscono con la rete basterà eseguire gli stessi comandi da root (o utilizzando sudo).

L’articolo Come controllare la rete da terminale con Linux appare per la prima volta su Chimera Revo – News, guide e recensioni sul Mondo della tecnologia.

Se vuoi sostenerci, puoi farlo acquistando qualsiasi cosa dai diversi link di affiliazione che abbiamo nel nostro sito o partendo da qui oppure alcune di queste distribuzioni GNU/Linux che sono disponibili sul nostro negozio online, quelle mancanti possono essere comunque richieste, e su cui trovi anche PC, NAS e il ns ServerOne. Se ti senti generoso, puoi anche donarmi solo 1€ o più se vuoi con PayPal e aiutarmi a continuare a scrivere più contenuti come questo. Grazie! 

Hai dubbi o problemi? Ti aiutiamo

Se vuoi rimanere sempre aggiornato, iscriviti al nostro canale Telegram. Se vuoi ricevere supporto per qualsiasi dubbio o problema, iscriviti alla nostra community Facebook o gruppo Telegram.
Cosa ne pensi? Fateci sapere i vostri pensieri nei commenti qui sotto.
Ti piace quello che leggi? Per favore condividilo con gli altri.

Scopri le ultime offerte per dischi ssd su Acquista su Amazon
Scopri le ultime offerte per memorie RAM DDR su Acquista su Amazon
Scopri le ultime offerte per Chromebook su Acquista su Amazon
Scopri le ultime offerte per Raspberry su Acquista su Amazon

Potrebbero interessarti anche...

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *

Questo sito usa Akismet per ridurre lo spam. Scopri come i tuoi dati vengono elaborati.