Come utenti Linux, a volte abbiamo bisogno di sapere su quale numero di porta è in ascolto un particolare processo. Tutte le porte sono associate a un ID di processo o servizio in un sistema operativo. Allora come troviamo questa porta? In questo articolo presenteremo tre diversi metodi che puoi utilizzare per scoprire su quale porta è in ascolto un processo. Per risolvere i problemi di connettività di rete o delle applicazioni, è necessario verificare quali porte sta utilizzando il sistema e quali applicazioni sono in ascolto su quella particolare porta.
1) Utilizzare il comando netstat per verificare se la porta è aperta in Linux
Il comando netstat fa parte del pacchetto net-tools, che per impostazione predefinita non è incluso nella distribuzione Linux. Visualizza dati relativi alla rete come connessioni di rete, tabelle di routing, statistiche di interfaccia, connessioni mascherate, appartenenze multicast e così via. Su Ubuntu, puoi utilizzare il seguente comando per installare il pacchetto net-tools.
# apt update -y && apt install net-tools -y
Per elencare tutte le porte TCP o UDP utilizzate dal sistema, incluso il servizio che utilizza la porta e lo stato del socket, utilizzare il comando seguente.
#netstat-tunlp
-T -> Mostra le porte TCP.
-u -> Visualizza le porte UDP.
-N -> Mostra gli indirizzi numerici invece di risolvere gli host.
-l -> Visualizza solo le porte di ascolto.
-P -> Mostra il PID e il nome del processo dell’ascoltatore.
Di seguito è riportata la descrizione delle colonne importanti che dovresti conoscere.
Proto – Il protocollo utilizzato dal socket.
Indirizzo locale – Mostra l’indirizzo IP e il numero di porta su cui il processo è in ascolto.
PID/nome del programma – Mostra il PID e il nome del processo.
2) Utilizzare il comando ss per verificare se la porta è aperta in Linux
Il comando ss è un’altra utilità della riga di comando per controllare le porte aperte. Mostra le statistiche del socket utilizzate per verificare se una porta è aperta. Il comando ss mostra più informazioni sulle porte aperte rispetto ad altri strumenti.
Inserisci il comando seguente per ottenere un elenco di tutte le porte in ascolto con ss:
# ss -tunlp
3) Utilizzare il comando lsof per verificare se la porta è aperta in Linux
Il comando lsof è un altro strumento utile per controllare le porte aperte. Lsof sta per list open files e visualizza informazioni sui file aperti sul tuo sistema. Queste informazioni includono descrittori di file, ID di processo, ID utente e così via.
Per ottenere un elenco di tutte le porte TCP in ascolto, utilizzare il comando lsof nel terminale.
# sudo lsof -nP -iTCP -sTCP:LISTEN
Le opzioni utilizzate sono le seguenti:
-N -> Elenca la voce che non converte il numero di porta nel nome della porta.
-P -> Mostra la voce che non risolve il nome host e mostra gli indirizzi numerici.
–iTCP -sTCP:LISTEN -> Mostra solo i file di rete con stato TCP LISTEN.
È tutto.