Ricerca nel sito web

Come limitare l'accesso alla rete utilizzando FirewallD


Come utente Linux, puoi scegliere di consentire o limitare l'accesso alla rete ad alcuni servizi o indirizzi IP utilizzando il firewalld firewall nativo di CentOS/RHEL 8 e della maggior parte di RHEL distribuzioni basate su Fedora.

Il firewall firewalld utilizza l'utilità della riga di comando firewall-cmd per configurare le regole del firewall.

Prima di poter eseguire qualsiasi configurazione, abilitiamo innanzitutto il servizio firewalld utilizzando l'utilità systemctl come mostrato:

sudo systemctl enable firewalld

Una volta abilitato, ora puoi avviare il servizio firewalld eseguendo:

sudo systemctl start firewalld

Puoi verificare lo stato di firewalld eseguendo il comando:

sudo systemctl status firewalld

L'output seguente conferma che il servizio firewalld è attivo e funzionante.

Configurazione delle regole utilizzando Firewalld

Ora che abbiamo firewalld in esecuzione, possiamo procedere direttamente a effettuare alcune configurazioni. Firewalld consente di aggiungere e bloccare porte, blacklist e indirizzi IP whitelist per fornire l'accesso al server. Una volta terminate le configurazioni, assicurati sempre di ricaricare il firewall affinché le nuove regole abbiano effetto.

Aggiunta di una porta TCP/UDP

Per aggiungere una porta, ad esempio porta 443 per HTTPS, utilizza la sintassi seguente. Tieni presente che devi specificare se la porta è TCP o UDP dopo il numero di porta:

sudo firewall-cmd --add-port=22/tcp --permanent

Allo stesso modo, per aggiungere una porta UDP, specifica l'opzione UDP come mostrato:

sudo firewall-cmd --add-port=53/udp --permanent

Il flag --permanent garantisce che le regole persistano anche dopo un riavvio.

Blocco di una porta TCP/UDP

Per bloccare una porta TCP, come la porta 22, esegui il comando.

sudo firewall-cmd --remove-port=22/tcp --permanent

Allo stesso modo, il blocco di una porta UDP seguirà la stessa sintassi:

sudo firewall-cmd --remove-port=53/udp --permanent

Consentire un servizio

I servizi di rete sono definiti nel file /etc/services. Per consentire un servizio come https, esegui il comando:

sudo firewall-cmd --add-service=https

Blocco di un servizio

Per bloccare un servizio, ad esempio FTP, esegui:

sudo firewall-cmd --remove-service=https

Whitelist di un indirizzo IP

Per consentire un singolo indirizzo IP attraverso il firewall, esegui il comando:

sudo firewall-cmd --permanent --add-source=192.168.2.50

Puoi anche consentire un intervallo di IP o un'intera sottorete utilizzando una notazione CIDR (Classless Inter-Domain Routing). Ad esempio, per consentire un'intera sottorete nella sottorete 255.255.255.0, esegui.

sudo firewall-cmd --permanent --add-source=192.168.2.0/24

Rimozione di un indirizzo IP inserito nella whitelist

Se desideri rimuovere un IP inserito nella whitelist del firewall, utilizza il flag --remove-source come mostrato:

sudo firewall-cmd --permanent --remove-source=192.168.2.50

Per l'intera sottorete, eseguire:

sudo firewall-cmd --permanent --remove-source=192.168.2.50/24

Bloccare un indirizzo IP

Finora abbiamo visto come aggiungere e rimuovere porte e servizi, nonché inserire e rimuovere gli IP inseriti nella whitelist. Per bloccare un indirizzo IP vengono utilizzate a questo scopo le "rich rule".

Ad esempio per bloccare l'IP 192.168.2.50 esegui il comando:

sudo firewall-cmd --permanent --add-rich-rule="rule family='ipv4' source address='192.168.2.50' reject"

Per bloccare l'intera sottorete, esegui:

sudo firewall-cmd --permanent --add-rich-rule="rule family='ipv4' source address='192.168.2.0/24' reject"

Salvataggio delle regole del firewall

Se hai apportato modifiche alle regole del firewall, è necessario eseguire il comando seguente affinché le modifiche vengano applicate immediatamente:

sudo firewall-cmd --reload

Visualizzazione delle regole del firewall

Per dover sbirciare tutte le regole nel firewall, esegui il comando:

sudo firewall-cmd --list-all

Con questo si conclude questa guida su come consentire o limitare l'accesso alla rete utilizzando FirewallD su CentOS/RHEL 8. Ci auguriamo che questa guida ti sia stata utile.