Wiki Ubuntu-it

Indice
Partecipa
FAQ
Wiki Blog
------------------
Ubuntu-it.org
Forum
Chiedi
Chat
Cerca
Planet
  • Pagina non alterabile
  • Informazioni
  • Allegati

Versione 13 del 02/02/2011 17.13.34

Nascondi questo messaggio

BR Indice()

Introduzione


Per una introduzione ai Firewall si prega di vedere questa pagina wiki: [http://wiki.ubuntu-it.org/Sicurezza/Firewall Firewall]

UFW - Uncomplicated Firewall

Lo strumento di configurazione di default dei firewall per Ubuntu è ufw. Sviluppato per semplificare la configurazione del firewall [http://wiki.ubuntu-it.org/Sicurezza/Iptables iptables], ufw fornisce un modo facile per creare un firewall host-based IPv4 o IPv6. Per impostazione predefinita ufw è attivato ma tutte le porte vengono lasciate aperte (altrimenti non ci sarebbe accesso a Internet dopo l'installazione). Gufw è una GUI che è disponibile come frontend.

Sintassi di base ed esempi


Fissare le regole di default

E' consigliato impostare la modalità predefinita di ufw prima di avviarlo. Con i comandi successivi si negheranno o consentiranno rispettivamente tutte le connessioni in entrata.

Fissare il diniego di default:

 sudo ufw default deny

Fissare il consenso di default:

 sudo ufw default allow

Abilitare e Disabilitare

Abilitare ufw

Per abilitare il firewall ufw:

 sudo ufw enable

Nota: A meno che non si è impostato il default su 'DENY' (rifiuto), inizialmente ufw è in modalità 'ALLOW' (permesso),e consentirà tutto il traffico in entrata e in uscita se prima non si è impostato il set di regole.

Disabilitare ufw

Per disabilitare il firewall ufw:

 sudo ufw disable

Permessi e Divieti

Permessi

 sudo ufw allow <port>/<optional: protocol>

Esempio: per autorizzare pacchetti tcp e udp in ingresso sulla porta 53

 sudo ufw allow 53

Esempio: per autorizzare pacchetti tcp in ingresso sulla porta 53

 sudo ufw allow 53/tcp

Esempio: per autorizzare pacchetti udp in ingresso sulla porta 53

 sudo ufw allow 53/udp

Esempio: per autorizzare pacchetti tcp in ingresso sulla porta 53

 sudo ufw allow 53/tcp

Divieti

 sudo ufw deny <port>/<optional: protocol>

Esempio: per bloccare pacchetti tcp e udp sulla porta 53

 sudo ufw deny 53

Esempio: per bloccare pacchetti tcp in ingresso sulla porta 53

 sudo ufw deny 53/tcp

Esempio: per bloccare pacchetti udp sulla porta 53

 sudo ufw deny 53/udp

Cancellare una regola già esistente

Per cancellare una regola si deve semplicemente fissare la regola originale con 'delete'. Per esempio se la regola originale era:

 ufw deny 80/tcp

Usare questo comando per cancellarla:

sudo ufw delete deny 80/tcp

Servizi

Si può inoltre autorizzare o bloccare attraverso il nome del servizio che ufw legge attraverso il file ,'/etc/services`. Per vedere, ottenere un elenco di servizi:

less /etc/services

Autorizzare tramite il nome di un servizio

sudo ufw allow <service name>

Esempio: per autorizzare il servizio ssh con il nome:

 sudo ufw allow ssh

Bloccare tramite il nome di un servizio

sudo ufw deny <service name>

Esempio: per bloccare il servizio ssh con il nome:

 sudo ufw deny ssh

Status

Verificare lo stato di ufw permetterà di sapere se ufw è attivato o disattivato e produrrà una lista delle regole ufw attualmente applicate alla iptables.

Per controllare lo status di ufw:

 sudo ufw status

 Firewall loaded

 To                         Action  From
 --                         ------  ----
 22:tcp                     DENY    192.168.0.1
 22:udp                     DENY    192.168.0.1
 22:tcp                     DENY    192.168.0.7
 22:udp                     DENY    192.168.0.7
 22:tcp                     ALLOW   192.168.0.0/24
 22:udp                     ALLOW   192.168.0.0/24

Se invece ufw non è abilitato il risultato del comando sarà:

 sudo ufw status
 Status: inactive

Registrazione

Per abilitare il modo 'Registrazione':

 sudo ufw logging on

Per disabilitare il modo ' Registrazione':

 sudo ufw logging off

Sintassi avanzata

Si può anche usare una sintassi più completa specificando gli indirizzi e le porte delle sorgenti e delle destinazioni:

Permettere l'accesso

Questa sezione mostra come autorizzare un accesso specifico.

Autorizzazione tramite IP specifico

 sudo ufw allow <ip address>

Esempio: per autorizzare pacchetti da 207.46.232.182:

 sudo ufw allow from 207.46.232.182

Autorizzazione tramite Subnet

Si può usare una 'net mask':

 sudo ufw allow from 192.168.1.0/24

Autorizzazione tramite un indirizzo ed una porta specifica

 sudo ufw allow from <ip address> to <protocol> port <port number>

esempio: autorizzare l'accesso dell'indirizzo IP 192.168.0.4 alla porta 22 per tutti i protocolli

 sudo ufw allow from 192.168.0.4 to any port 22

Autorizzare PING

Nota: La sicurezza tramite segretezza può essere di ben poco vantaggio effettivo con i moderni 'cracker script'. Per impostazione predefinita, UFW consente richieste ping. Si potrebbe desiderare di lasciare autorizzate le richieste (ICMP) ping al fine di diagnosticare eventuali problemi di rete.

Per fare ciò si ha bisogno di modificare il file /etc/ufw/before.rules e rimuovere modificare le seguenti righe:

 # ok icmp codes
 -A ufw-before-input -p icmp --icmp-type destination-unreachable -j ACCEPT
 -A ufw-before-input -p icmp --icmp-type source-quench -j ACCEPT
 -A ufw-before-input -p icmp --icmp-type time-exceeded -j ACCEPT
 -A ufw-before-input -p icmp --icmp-type parameter-problem -j ACCEPT
 -A ufw-before-input -p icmp --icmp-type echo-request -j ACCEPT

cambiando la voce "ACCEPT" con "DROP":

 # ok icmp codes
 -A ufw-before-input -p icmp --icmp-type destination-unreachable -j DROP
 -A ufw-before-input -p icmp --icmp-type source-quench -j DROP
 -A ufw-before-input -p icmp --icmp-type time-exceeded -j DROP
 -A ufw-before-input -p icmp --icmp-type parameter-problem -j DROP
 -A ufw-before-input -p icmp --icmp-type echo-request -j DROP

Negare l'accesso

Negare tramite IP specifico

 sudo ufw deny from <ip address>

example: Per bloccare i pacchetti da 207.46.232.182:

 sudo ufw deny from 207.46.232.182

Negare tramite porta e IP specifici

 sudo ufw deny from <ip address> to <protocol> port <port number>

esempio: negare l'accesso all'indirizzo ip 192.168.0.1 sulla porta 22 per tutti i protocolli

 sudo ufw deny from 192.168.0.1 to any port 22

Regole di blocco avanzate

Bloccare gli indirizzi IP non è così semplice se si dispone già di un set di regole esistenti come IPTABLES. Quindi, se si è iniziato con le regole di default impostate su 'deny' e si è aggiunto una autorizzazione sulla porta 80 per un server pubblico:

 sudo ufw allow 80

ma successivamente si è trovato l'indirizzo IP 111.222.3.44 che sta forzando il nostro server:

il comando:

 sudo ufw deny 111.222.3.44

non farà nulla ( perchè precedentemente si è autorizzato l'accesso con una regola)

Si avrà bisogno di modificare il file '/etc/ufw/before.rules' e aggiungere una sezione "Block IP" dopo "Drop INVALID packets" :

 -A ufw-before-input -s 111.222.3.44 -j DROP #Assuming no loging is desired of course)
 # drop INVALID packets
 # uncomment to log INVALID packets
 #-A ufw-before-input -m conntrack --ctstate INVALID -j LOG --log-prefix "[UFW B$
 -A ufw-before-input -m conntrack --ctstate INVALID -j DROP

 # Block IP
 # This it is efective :)
 -A ufw-before-input -s 111.222.3.44 -j DROP


CategoryNuoviDocumenti CategoryInTraduzione