Home
» LINUX
»
Come bloccare porte specifiche su Linux con UFW o firewalld
Come bloccare porte specifiche su Linux con UFW o firewalld
Per bloccare una porta specifica su Linux, è necessario aggiungere una regola del firewall per la porta e il protocollo che si desidera bloccare. Su un sistema Ubuntu che utilizza UFW, ad esempio, sudo ufw deny 8080/tcpsi bloccano le nuove connessioni TCP in entrata sulla porta 8080. Sui sistemi che utilizzano firewalld, è possibile rimuovere un'autorizzazione di porta esistente o aggiungere una regola di rifiuto esplicita. L'aspetto importante è modificare il firewall effettivamente utilizzato dal sistema, anziché combinare regole di UFW, firewalld e regole di basso livello di nftables.
Prima di bloccare una porta
Innanzitutto, conferma il numero di porta e se l'applicazione utilizza TCP, UDP o entrambi. Una regola TCP non blocca automaticamente UDP sulla stessa porta. Puoi anche controllare i socket in ascolto con:
sudo ss -lntup
Una regola del firewall controlla il traffico di rete; non impedisce all'applicazione di rimanere in ascolto localmente. Se non hai bisogno del servizio, interromperlo o disabilitarlo è generalmente preferibile rispetto al semplice utilizzo di una regola del firewall.
Se si è connessi alla macchina tramite SSH, è necessario proteggere la regola di accesso remoto prima di abilitare o rafforzare il firewall. Il manuale di UFW avverte specificamente che l'abilitazione di UFW può interrompere le connessioni SSH esistenti e raccomanda di aggiungere prima l'autorizzazione SSH necessaria.
Se il risultato è Status: inactivee si desidera abilitare UFW, è necessario prima consentire il servizio di gestione remota su cui si fa affidamento. Per un profilo OpenSSH standard:
sudo ufw allow OpenSSH
sudo ufw enable
Prima di modificare le regole di UFW, verifica che sia attivo, soprattutto su una macchina gestita da remoto.
2. Aggiungere una regola di negazione per la porta
Sostituisci 8080con la porta che desideri bloccare. Specifica il protocollo in modo che la regola sia inequivocabile:
sudo ufw deny 8080/tcp
Per UDP, utilizzare:
sudo ufw deny 8080/udp
Se un'applicazione utilizza entrambi i protocolli, aggiungi entrambe le regole. UFW supporta anche reject; a differenza di un rifiuto silenzioso, un rifiuto comunica al mittente che la connessione è stata rifiutata.
Una regola di negazione UFW blocca il traffico TCP in entrata sulla porta selezionata.
3. Verificare o rimuovere la regola UFW
sudo ufw status numbered
L'output dovrebbe mostrare una voce DENY IN per la porta bloccata. La sintassi ufficiale di UFW supporta anche l'eliminazione della regola ripetendola con delete:
sudo ufw delete deny 8080/tcp
Utilizzare l'output di stato numerato per confermare che la regola UFW desiderata sia attiva.
Blocca una porta con firewalld
Se la tua installazione Linux utilizza firewalld, inizia individuando la zona attiva:
Sostituire publicquanto segue se l'interfaccia appartiene a una zona diversa. Se la porta 8080 è stata aperta esplicitamente, rimuovere tale autorizzazione e ricaricare la configurazione permanente:
Con firewalld, apporta la modifica nella zona attiva corretta e ricarica le regole permanenti.
Se la porta è ancora consentita indirettamente da una definizione di servizio, oppure se si desidera specificamente un blocco esplicito, aggiungere una regola di rifiuto avanzata:
Esegui sudo ss -lntupnuovamente il test se desideri verificare se un'applicazione è ancora in ascolto. Quindi, esegui il test da un'altra macchina sulla rete pertinente. Se Netcat è installato, un controllo TCP potrebbe apparire in questo modo nc -vz SERVER_IP 8080. Esegui il test dallo stesso percorso di rete utilizzato dai tuoi client reali; un test in locale non dimostra che il traffico esterno sia bloccato.
Se il servizio non deve mai essere esposto, è necessario disabilitarlo o riconfigurarlo. Un firewall è un livello di controllo degli accessi, non un sostituto per la rimozione dei listener non necessari.