GNU/Linux >> Linux Esercitazione >  >> Cent OS

CentOS / RHEL 7:Guida per principianti a firewalld

Introduzione

– Un firewall per il filtraggio dei pacchetti legge i pacchetti di rete in entrata e filtra (consente o rifiuta) ogni pacchetto di dati in base alle informazioni di intestazione nel pacchetto. Il kernel Linux ha una funzionalità di filtraggio dei pacchetti integrata chiamata Netfilter .
– In RHEL 7 sono disponibili due servizi per creare, mantenere e visualizzare le regole archiviate da Netfilter:
1. firewall
2. iptables
– In RHEL 7, il servizio firewall predefinito è firewalld.
– firewalld è un gestore firewall dinamico che supporta le zone (rete) del firewall.
– Il servizio firewalld supporta IPv4, IPv6, e per i bridge Ethernet.
– Il servizio firewalld fornisce anche un'interfaccia D-BUS. I servizi o le applicazioni che già utilizzano D-BUS possono aggiungere o richiedere modifiche alle regole del firewall direttamente tramite l'interfaccia D-BUS.

Vantaggi rispetto a iptables

firewalld presenta i seguenti vantaggi rispetto a iptables:
1. A differenza del comando iptables, il comando firewall-cmd non riavvia il firewall e non interrompe le connessioni TCP stabilite.
2. firewalld supporta le zone dinamiche.
3. firewalld supporta D-Bus per una migliore integrazione con i servizi che dipendono dalla configurazione del firewall.

Opzioni di configurazione

Il servizio firewalld ha due tipi di opzioni di configurazione:
1. Durata :le modifiche alle impostazioni del firewall hanno effetto immediato ma non sono permanenti. Le modifiche apportate in modalità configurazione runtime vengono perse al riavvio del servizio firewalld.
2. Permanente :le modifiche alle impostazioni del firewall vengono scritte nei file di configurazione. Queste modifiche vengono applicate al riavvio del servizio firewalld.

File di configurazione

I file di configurazione per firewalld esistono in due directory:
/usr/lib/firewalld :contiene i file di configurazione predefiniti. Non apportare modifiche a questi file. Un aggiornamento del pacchetto firewalld sovrascrive questa directory.
/etc/firewalld :le modifiche ai file di configurazione predefiniti sono archiviate in questa directory. I file in questa directory sovraccaricano i file di configurazione predefiniti.

Zone dotate di firewall

Il servizio firewalld consente di separare le reti in zone diverse in base al livello di affidabilità che si desidera riporre sui dispositivi e al traffico all'interno di una rete specifica. Per ogni zona è possibile definire le seguenti caratteristiche:
Servizi :Servizi predefiniti o personalizzati di cui fidarsi. I servizi affidabili sono una combinazione di porte e protocolli accessibili da altri sistemi e reti.
Porte :Porte o intervalli di porte aggiuntivi e protocolli associati accessibili da altri sistemi e reti.
Masquerading :traduce gli indirizzi IPv4 in un unico indirizzo esterno. Con il masquerading abilitato, gli indirizzi di una rete privata vengono mappati e nascosti dietro un indirizzo pubblico.
Port Forwarding :inoltra il traffico di rete in entrata da una porta o un intervallo di porte specifico a una porta alternativa sul sistema locale oa una porta su un altro indirizzo IPv4.
Filtro ICMP :Blocca i messaggi selezionati del protocollo Internet Control Message Protocol.
Regole avanzate :Estendi le regole firewalld esistenti per includere indirizzi di origine e destinazione aggiuntivi e azioni di registrazione e controllo.
Interfacce :Interfacce di rete legate alla zona. La zona per un'interfaccia è specificata con ZONE=opzione in /etc/sysconfig/network-scripts/ifcfg file. Se l'opzione manca, l'interfaccia è vincolata alla zona predefinita.

Zone firewalld predefinite

Il pacchetto software firewalld include un insieme di zone di rete predefinite nella directory seguente:

#  ls -lrt /usr/lib/firewalld/zones/
total 36
-rw-r----- 1 root root 342 Sep 15  2015 work.xml
-rw-r----- 1 root root 162 Sep 15  2015 trusted.xml
-rw-r----- 1 root root 315 Sep 15  2015 public.xml
-rw-r----- 1 root root 415 Sep 15  2015 internal.xml
-rw-r----- 1 root root 400 Sep 15  2015 home.xml
-rw-r----- 1 root root 304 Sep 15  2015 external.xml
-rw-r----- 1 root root 291 Sep 15  2015 drop.xml
-rw-r----- 1 root root 293 Sep 15  2015 dmz.xml
-rw-r----- 1 root root 299 Sep 15  2015 block.xml

I file di zona contengono impostazioni preimpostate, che possono essere applicate a un'interfaccia di rete. Ad esempio:

# grep –i service /usr/lib/firewalld/zones/public.xml 
<service name=“ssh”/>
<service name=“dhcpv6-client”/>

In questo esempio, le interfacce di rete associate alla zona pubblica considerano solo due servizi, ssh e dhcpv6-client.

Di seguito una breve spiegazione di ciascuna zona:
abbandona :Tutti i pacchetti di rete in entrata vengono eliminati, non c'è risposta. Sono possibili solo
connessioni di rete in uscita.
blocco :qualsiasi connessione di rete in entrata viene rifiutata con un messaggio icmp-host-vietato per IPv4 e icmp6-adm-proibito per IPv6. Sono possibili solo connessioni di rete avviate dall'interno del sistema.
home :Per l'uso in aree domestiche. Ti fidi principalmente degli altri computer sulle reti per non danneggiare il tuo computer. Sono accettate solo le connessioni in entrata selezionate.
pubbliche :Per l'uso in aree pubbliche. Non ti fidi che gli altri computer sulla rete non danneggino il tuo computer. Sono accettate solo le connessioni in entrata selezionate.
lavoro :Per l'uso nelle aree di lavoro. Ti fidi principalmente degli altri computer sulle reti per non danneggiare il tuo computer. Sono accettate solo le connessioni in entrata selezionate.
dmz :Per i computer nella tua zona demilitarizzata che sono pubblicamente accessibili con accesso limitato alla tua rete interna. Vengono accettate solo le connessioni in entrata selezionate.
esterne :Per l'uso su reti esterne con masquerading abilitato in particolare per i router. Non ti fidi che gli altri computer sulla rete non danneggino il tuo computer. Vengono accettate solo le connessioni in entrata selezionate.
interne :Per l'uso su reti interne. Ti fidi principalmente degli altri computer sulle reti per non danneggiare il tuo computer. Vengono accettate solo le connessioni in entrata selezionate.
fidato :Vengono accettate tutte le connessioni di rete.

Impostazione della zona firewalld predefinita

Dopo un'installazione iniziale, la zona pubblica è la zona predefinita come specificato nel file di configurazione, /etc/firewalld/firewalld.conf .

# grep –i defaultzone /etc/firewalld/firewalld.conf 
DefaultZone=public

Le interfacce di rete sono associate alla zona predefinita a meno che non sia specificato con ZONE=[zona] nel file ifcfg. Il comando seguente mostra le interfacce legate alla zona pubblica:

# firewall-cmd --get-active-zone
public
      interfaces: eth0 eth1

È possibile utilizzare il comando firewall-cmd per modificare la zona predefinita:

# firewall-cmd --set-default-zone=work 
success

È inoltre possibile utilizzare la GUI di configurazione del firewall per modificare la zona predefinita. Dalla barra dei menu, seleziona Opzioni->Cambia zona predefinita, quindi seleziona una zona da un elenco a comparsa.

Servizi firewall

– Un servizio firewalld è una combinazione di porte e protocolli locali e indirizzi di destinazione.
– Un servizio firewalld può includere anche moduli del kernel Netfilter che vengono caricati automaticamente quando un servizio è abilitato.
– Il pacchetto software firewalld include un insieme di servizi predefiniti nella directory seguente:

# ls -lrt /usr/lib/firewalld/zones/
total 36
-rw-r----- 1 root root 342 Sep 15  2015 work.xml
-rw-r----- 1 root root 162 Sep 15  2015 trusted.xml
-rw-r----- 1 root root 315 Sep 15  2015 public.xml
-rw-r----- 1 root root 415 Sep 15  2015 internal.xml
-rw-r----- 1 root root 400 Sep 15  2015 home.xml
-rw-r----- 1 root root 304 Sep 15  2015 external.xml
-rw-r----- 1 root root 291 Sep 15  2015 drop.xml
-rw-r----- 1 root root 293 Sep 15  2015 dmz.xml
-rw-r----- 1 root root 299 Sep 15  2015 block.xml

– I servizi possono essere abilitati per una zona in modalità Runtime.
– Le definizioni dei servizi possono essere modificate solo in modalità Permanente.

Avvia firewalld

Per avviare firewalld:

# systemctl start firewalld

Per garantire l'avvio di firewalld all'avvio:

# systemctl enable firewalld

Per verificare se firewalld è in esecuzione:

# systemctl status firewalld
# firewall-cmd --state

Tre metodi per configurare il servizio firewalld:
firewall-cmd :interfaccia della riga di comando
configurazione firewall :Interfaccia utente grafica
– Modifica vari XML file di configurazione.

CentOS/RHEL 7:come avviare/arrestare Firewalld

L'utilità firewall-cmd

Lo strumento da riga di comando firewall-cmd fa parte dell'applicazione firewalld, installata per impostazione predefinita. Per ottenere assistenza sul comando firewall-cmd:

# firewall-cmd --help

Il comando firewall-cmd offre categorie di opzioni come Generale, Stato, Permanente, Zona, IcmpType, Servizio, Adatta e Query zone, Diretto, Blocco, Blocco whitelist e Panico. Per elencare le informazioni per tutte le zone:

# firewall-cmd --list-all-zones public (default, active)
      interfaces: eth0 eth1
      sources:
      services: dhcpv6-client ssh
      ports:
  ...

Per consentire l'accesso ai client HTTP per la zona pubblica:

# firewall-cmd --zone=public --add-service=http 
success

Per elencare i servizi consentiti per la zona pubblica:

# firewall-cmd --zone=work --list-services
    dhcpv6-client http ssh

L'utilizzo di questo comando modifica solo la configurazione Runtime e non aggiorna i file di configurazione.
Le modifiche alla configurazione effettuate in modalità configurazione Runtime vengono perse al riavvio del servizio firewalld:

# systemctl restart firewalld
# firewall-cmd --zone=work --list-services dhcpv6-client ssh

Per rendere permanenti le modifiche, utilizzare l'opzione –permanent. Esempio:

# firewall-cmd --permanent --zone=public --add-service=http 
success

Le modifiche apportate nella modalità di configurazione permanente non vengono implementate immediatamente. Tuttavia, le modifiche apportate nella configurazione permanente vengono scritte nei file di configurazione. Il riavvio del servizio firewalld legge i file di configurazione e implementa le modifiche. Esempio:

# systemctl restart firewalld
# firewall-cmd --zone=work --list-services 
dhcpv6-client http ssh


Cent OS
  1. Installa TeamViewer su CentOS 5 / RHEL 5

  2. Come installare TeamViewer su CentOS 6 / RHEL 6

  3. CentOS / RHEL:Guida per principianti a vsftpd (installazione e configurazione)

  4. Guida per principianti all'ottimizzazione dei profili in CentOS/RHEL

  5. Guida per principianti alla gestione dei flussi dei moduli del pacchetto in CentOS/RHEL 8

RHEL 8 / CentOS 8 apre la porta FTP 21 con firewalld

RHEL 8 / CentOS 8 recupera la password di root

Come installare MariaDB su CentOS 8 / RHEL 8

Come installare MariaDB su CentOS 6 / RHEL 6

CentOS / RHEL 7:come reimpostare la password di root

CentOS / RHEL 7:Guida per principianti alle unità di servizio systemd