Introduzione
Lo strumento ss (statistiche socket) è un comando CLI utilizzato per mostrare le statistiche di rete. Le ss command è una versione più semplice e veloce dell'ormai obsoleto comando netstat. Insieme al comando ip, ss è essenziale per raccogliere informazioni sulla rete e risolvere i problemi di rete.
Questo articolo offre una panoramica su come utilizzare il comando ss e mostra esempi dei casi d'uso più comuni.
Prerequisiti
- Accesso a un terminale oa una riga di comando
- Pacchetto software iproute2 installato
Esempi di comandi Linux ss
Il ss di base l'utilizzo del comando è senza alcun parametro:
ss L'output restituisce un elenco di socket aperti non in ascolto con connessioni stabilite.
Le colonne mostrano i seguenti dettagli:
- ID rete – Tipo di presa. I tipi comuni sono TCP , UDP , u_str (stream Unix) e u_seq (Sequenza Unix).
- Stato – Stato della presa. Più comunemente ESTAB (stabilito), UNCONN (non connesso), ASCOLTA (ascoltando).
- Recv-Q – Numero di pacchetti ricevuti in coda.
- Invia-Q – Numero di pacchetti inviati in coda.
- Indirizzo locale:porto – Indirizzo della macchina locale e della porta.
- Indirizzo peer:porta – Indirizzo della macchina remota e della porta.
Per un output più dettagliato, aggiungi opzioni a ss comando:
ss <options> Oppure elenca le opzioni singolarmente:
ss <option 1> <option 2> <option 3> Elenca tutte le connessioni
Elenca tutte le connessioni in ascolto e non in ascolto con:
ss -a Oppure:
ss --all
Elenca i socket di ascolto
Per visualizzare solo le prese di ascolto, che sono omesse per impostazione predefinita, utilizzare:
ss -l Oppure:
ss --listen
Elenca connessioni TCP
Per elencare le connessioni TCP, aggiungi il -t opzione per il ss comando:
ss -t In alternativa:
ss --tcp
Elenca tutte le connessioni TCP
Combina le opzioni -a e -t con il ss comando per emettere un elenco di tutte le connessioni TCP:
ss -at
Elenca tutte le connessioni TCP in ascolto
Combina le opzioni -l e -t con il ss comando per elencare tutte le connessioni TCP in ascolto:
ss -lt
Elenca le connessioni UDP
Per mostrare un elenco di connessioni UDP, usa:
ss -u Oppure:
ss --udp
Elenca tutte le connessioni UDP
Combinando le opzioni -a e -u con ss restituisce un elenco di tutte le connessioni TCP:
ss -au
Elenca tutte le connessioni UDP in ascolto
Per elencare tutte le connessioni UDP in ascolto, utilizza il ss comando con opzioni -l e -u :
ss -lu
Elenca socket Unix
Per mostrare tutti i socket della famiglia Unix, usa:
ss -f unix Oppure usa l'alias più breve:
ss -x
Elenca i socket grezzi
Per elencare i socket grezzi, usa:
ss -w O in alternativa:
ss --raw Elenca le connessioni a un indirizzo IP specifico
Elenca le connessioni a un indirizzo IP di destinazione specifico con:
ss dst <address> Ad esempio:
ss dst 104.21.3.132
Per mostrare le connessioni a un indirizzo di origine specifico, utilizza:
ss src <addresss> Ad esempio:
ss src 192.168.100.2
Controlla gli ID processo
Per mostrare gli ID di processo (PID), utilizzare:
ss -p
Elenca statistiche riepilogative
Elenca le statistiche di riepilogo per le connessioni con:
ss -s
Elenca le connessioni socket IPv4 e IPv6
Filtra ulteriormente i risultati elencando le connessioni IPv4/IPv6 con:
ss -4 Oppure:
ss -6 Ad esempio, elenca tutte le connessioni UDP IPv6 con:
ss -au6
Filtra connessioni
Il ss Il comando consente il filtraggio avanzato dei risultati e la ricerca di porte o stati TCP specifici.
Filtra utilizzando gli stati TCP
Filtra le connessioni TCP utilizzando gli stati TCP predefiniti:
ss state <name of state> Ad esempio, per trovare tutte le connessioni TCP in ascolto:
ss -t state listening
Filtra per numero di porta
Filtra per un numero di porta di destinazione o un nome di porta specifico:
ss <options> dst :<port number or name> Ad esempio:
ss dst :5228
Oppure usa un nome di porta:
ss dst :https
Combina più query per un filtro più avanzato. Ad esempio, trova tutte le connessioni con una porta di destinazione 5228 o porta sorgente mysql :
ss -a dst :5228 or src :mysql
Controlla le pagine man o elenca tutti i comandi
Controlla la pagina di manuale di ss nel terminale per una panoramica dettagliata su come utilizzare il comando:
man ss Per una rapida panoramica delle opzioni disponibili, inserisci:
ss -h comando netstat VS ss
Il ss command è considerato un comando sostitutivo dell'obsoleto netstat . La velocità e le migliori opzioni di filtraggio delle utilità CLI dal pacchetto software iproute2 sono preferibili al pacchetto software net-tools.
La pagina man di netstat elenca ss come alternativa superiore. Lo strumento netstat è ancora disponibile per l'uso. Tuttavia, ss è un'opzione migliore e più veloce.