Come controllare le porte aperte in Linux

Durante il debug dei servizi in esecuzione su un sistema Linux, il controllo delle porte aperte è una delle attività che qualsiasi utente o amministratore dovrebbe prendere in considerazione. Se si prevede che un servizio sia in esecuzione ma per qualche motivo non lo è, molto probabilmente la porta associata a tale servizio è chiusa e dovrebbe essere aperta.
In questo tutorial, dimostreremo come controllare le porte aperte in un Linux dalla riga di comando.
1) Controlla le porte aperte usando il comando ss
Il comando Linux ss fornisce informazioni dettagliate sulle porte aperte e sui socket in ascolto. Estrae le informazioni dal kernel Linux ed è preferito al comando netstat deprecato.
Per visualizzare le connessioni TCP in ascolto, eseguire il comando
$ ss -tl
Campione di uscita

l – Mostra le prese di ascolto
t – rappresenta la porta TCP
Per visualizzare le connessioni UDP in ascolto, emettere il comando
$ ss -lu
Campione di uscita

u – rappresenta la porta UDP
o
Per visualizzare sia tcp che udp, il nome del processo
$ ss -lntup
p – Elenca il nome del processo che ha aperto i socket
Per stampare tutte le connessioni socket, usa semplicemente il comando ss nel formato predefinito
$ ss
Campione di uscita

2) Controlla le porte aperte usando il comando netstat
Il comando netstat è un potente strumento di comando utilizzato per controllare l’apertura TCP e UDP porte insieme ad altri attributi. Per controllare le porte aperte, eseguire il comando:
$ netstat -pnltu
Campione di uscita

Diamo un’occhiata più da vicino alle opzioni di ordinazione:
p – Visualizza l’ID processo associato a un nome di servizio o programma
n – Mostra il numero numerico della porta in esecuzione, ad es 3306 per mysqlde 22 per sshd.
esso – Mostra prese di ascolto
t – Mostra connessioni TCP
tu – Mostra connessioni UDP
3) Controlla le porte aperte usando il comando lsof
Il comando lsof è uno strumento di comando di rete che può essere utilizzato anche per controllare le porte aperte su un sistema Linux. Per visualizzare le porte aperte, emettere il comando
$ lsof -i
Campione di uscita

Se vuoi mostrare prese aperte, usa lsof
comando e indirizza l’output a grep come mostrato:
$ lsof -n -P | grep LISTEN
Campione di uscita

Per visualizzare tutte le connessioni TCP, eseguire:
$ lsof -i tcp
Campione di uscita

Per visualizzare tutte le connessioni UDP, eseguire il comando:
$ lsof -i udp
Campione di uscita

4) Controllare le porte aperte utilizzando l’utility Nmap
Nmap è uno strumento di scansione della rete gratuito e opensource, tipicamente utilizzato per la ricognizione nell’hacking etico per scoprire porte aperte su sistemi remoti. Di default, Nmap non è installato sul tuo sistema. Per installare Nmap, eseguire il comando
$ sudo apt install nmap (For Debian/ Ubuntu)
$ sudo yum install nmap (For RedHat/ CentOS)
$ sudo dnf install nmap (For Fedora)
$ pacman -S nmap (ArchLinux)
Per cercare porte TCP aperte, eseguire il comando
$ nmap -sT -O localhost
Campione di uscita

Per cercare porte UDP aperte, eseguire il comando:
$ nmap -sU localhost
Campione di uscita

conclusione
Questi sono i comandi e gli strumenti di Linux utilizzati per la scansione delle porte per controllare le porte aperte su un sistema Linux. Come sempre, il tuo feedback è benvenuto. Se hai altre idee su come controllare le porte aperte, contattaci.