Come controllare le porte aperte su Linux

How Check Open Ports Linux



Il controllo delle porte aperte è tra i primi passi per proteggere il tuo dispositivo. I servizi di ascolto possono essere l'ingresso per gli aggressori che possono sfruttare le vulnerabilità dei servizi per ottenere l'accesso o interrompere un sistema. Un servizio di ascolto o porta di ascolto è una porta aperta con un'applicazione in attesa che un client si connetta (ad esempio un server FTP in attesa di un client FTP) Non ha senso mantenere un server Web in esecuzione se non si sta servendo un sito Web, né per mantenere la porta 22 aperta se non usi ssh. Questo tutorial mostra come controllare le porte aperte sia in remoto che localmente e come chiuderle.

Il comando netstat è presente su tutti i computer OS (sistemi operativi) per monitorare le connessioni di rete. Il seguente comando utilizza netstat per mostrare tutte le porte in ascolto utilizzando il protocollo TCP:







netstat -lt



In cui si:
stato netto: chiama il programma.
-l: elenca le porte in ascolto.
-T: specifica il protocollo TCP.



L'output è a misura d'uomo, ben ordinato in colonne che mostrano il protocollo, i pacchetti ricevuti e inviati, gli indirizzi IP locali e remoti e lo stato della porta.





Se si cambia il protocollo TCP per UDP il risultato, almeno su Linux, mostrerà solo le porte aperte senza specificare lo stato perché contrariamente al protocollo TCP, il protocollo UDP è senza stato .

netstat -lu



È possibile evitare di specificare protocolli e utilizzare solo l'opzione -l o –listen per ottenere informazioni su tutte le porte in ascolto indipendentemente dal protocollo:

netstat --Ascoltare

L'opzione sopra mostrerà le informazioni per i protocolli socket TCP, UDP e Unix.

Tutti gli esempi sopra mostrano come stampare informazioni sulle porte di ascolto senza connessioni stabilite. Il comando seguente mostra come visualizzare le porte di ascolto e le connessioni stabilite:

netstat -acqua

In cui si:
stato netto: chiama il programma
-v: verbosità
-a: mostra le connessioni attive.
-T: mostra le connessioni TCP
-n: mostra le porte in valore numerico

Supponiamo che tu abbia identificato un processo sospetto nel tuo sistema e desideri controllare le porte ad esso associate. Puoi usare il comando lsof utilizzato per elencare i file aperti associati ai processi.

lsof-io 4 -a -P <Numero di processo>

Nel prossimo esempio controllerò il processo 19327:

lsof-io 4 -a -P 19327

In cui si:
lsof : chiama il programma
-io: elenca i file che interagiscono con Internet, l'opzione 4 indica di stampare solo IPv4, l'opzione 6 è disponibile per IPv6.
-a: istruisce l'uscita in AND.
-P: specifica il numero PID del processo che si desidera controllare.

Come vedi il processo è associato alla porta smtp in ascolto.

Come verificare la presenza di porte aperte su Linux da remoto


Se vuoi rilevare le porte su un sistema remoto lo strumento più utilizzato è Nmap (Network Mapper). L'esempio seguente mostra una scansione di una singola porta su Linuxhint.com:

nmaplinuxhint.com

L'output è ordinato in 3 colonne che mostrano la porta, lo stato della porta e il servizio in ascolto dietro la porta.

Non mostrato:988porte chiuse
SERVIZIO DELLO STATO PORTUALE
22/tcp apertossh
25/tcp apre smtp
80/tcp aperto http
161/tcp filtrato snmp
443/tcp aperto https
1666/netview-aix- filtrato tcp6
1723/pptp filtrato da tcp
6666/tcp filtrato irc
6667/tcp filtrato irc
6668/tcp filtrato irc
6669/tcp filtrato irc
9100/tcp filtrato jetdirect

Per impostazione predefinita, nmap scansiona solo le 1000 porte più comuni. Se vuoi che nmap esegua la scansione di tutte le porte:

nmap -P-linuxhint.com

Al articoli Correlati sezione di questo tutorial puoi trovare ulteriori tutorial su Nmap per scansionare porte e target con molte opzioni aggiuntive.

Rimozione di servizi su Debian 10 buster

In aggiunta alle regole del firewall per mantenere le porte bloccate, si consiglia di rimuovere i servizi non necessari. Sotto Debian 10 Buster questo può essere ottenuto con apt.
L'esempio seguente mostra come rimuovere il servizio Apache 2 utilizzando apt:

apt rimuovere apache2

Se richiesto premere E per terminare la rimozione.

Come chiudere le porte aperte su Linux usando UFW

Se trovi porte aperte non è necessario che siano aperte, la soluzione più semplice è chiuderle utilizzando UFW (Uncomplicated Firewall)
Ci sono due modi per bloccare una porta, usando l'opzione negare e con l'opzione rifiutare , la differenza è che l'istruzione di rifiuto informerà il secondo lato che la connessione è stata rifiutata.

Per bloccare la porta 22 usando la regola negare corri:

ufw negare22

Per bloccare la porta 22 usando la regola rifiutare corri:

ufw rifiutare22

Sul articoli Correlati sezione alla fine di questo tutorial puoi trovare un buon tutorial su Uncomplicated Firewall.

Come chiudere le porte aperte su Linux usando iptables

Sebbene UFW sia il modo più semplice per gestire le porte, è un frontend per Iptables.
L'esempio seguente mostra come rifiutare le connessioni alla porta 22 utilizzando iptables:

iptables-IOINGRESSO-Ptcp--dport 22 -JRIFIUTARE

La regola sopra indica di rifiutare tutte le connessioni tcp in entrata (INPUT) alla porta di destinazione (dport) 22. Essendo rifiutata, la sorgente verrà informata che la connessione è stata rifiutata.

La seguente regola elimina tutti i pacchetti senza informare la fonte che la connessione è stata rifiutata:

iptables-AINGRESSO-Ptcp--dport 22 -JGOCCIOLARE

Spero che tu abbia trovato utile questo breve tutorial. Continua a seguire LinuxHint per ulteriori aggiornamenti e suggerimenti su Linux e Networking.

Articoli Correlati:

  • Utilizzo di UFW (firewall semplice)
  • Esercitazione di base su NMAP
  • Come elencare le porte aperte in Firewalld
  • Scansione di rete Nmap
  • Installazione e utilizzo di Zenmap (Nmap GUI) su Ubuntu e Debian
  • Nmap: scansiona gli intervalli IP
  • Utilizzo degli script nmap: cattura banner Nmap
  • 30 esempi di Nmap