Wiki Ubuntu-it

Indice
Partecipa
FAQ
Wiki Blog
------------------
Ubuntu-it.org
Forum
Chiedi
Chat
Cerca
Planet
  • Pagina non alterabile
  • Informazioni
  • Allegati
  • Differenze per "Sicurezza/Ufw"
Differenze tra le versioni 22 e 23
Versione 22 del 03/02/2011 00.00.12
Dimensione: 12201
Commento: inseriti appunti nel testo. da finire.
Versione 23 del 03/02/2011 12.17.02
Dimensione: 11712
Commento: ricontrollare un ultima volta.
Le cancellazioni sono segnalate in questo modo. Le aggiunte sono segnalate in questo modo.
Linea 138: Linea 138:
= Registri = = Registri =p
Linea 149: Linea 149:
= Abilitare il ping =

Con i moderni ''cracker script'', disabilitare il ''ping'' per motivi di sicurezza potrebbe non portare vantaggi. Per impostazione predefinita, '''Ufw''' consente le richieste di ping.

'''Si potrebbe desiderare di lasciare autorizzate le richieste (ICMP) ping al fine di diagnosticare eventuali problemi di rete.''' Sistemare sta frase.

 * Per fare ciò è necessario modificare il file `/etc/ufw/before.rules` modificando le seguenti righe: {{{
= Ping =

'''Controllare'''

Con i moderni ''cracker script'', disabilitare il ''ping'' può non portare vantaggi. Per impostazione predefinita, '''Ufw''' consente le richieste di ping.

Potrebbe darsi, che si voglia mantenere questa funzionalità per diagnosticare eventuali problemi di rete. Viceversa, per disabilitare questa funzionalità:

 * Con un [:Ufficio/EditorDiTesto:editor di testo] e i [:AmministrazioneSistema/Sudo:privilegi di amministrazione] aprire il file `/etc/ufw/before.rules` e sostituire: {{{
Linea 163: Linea 165:
 * con le seguenti {{{  * con: {{{
Linea 174: Linea 176:
'''Riscrivere il paragrafo'''

Bloccare gli indirizzi IP non è così semplice se si dispone già di un set di regole esistenti come '''Iptables'''.

Si supponga che si è già iniziato con delle regole predefinite impostate su 'deny'. Successivamente, si è aggiunta una autorizzazione sulla porta 80 per un server pubblico, ad esempio: {{{
Se si dispone già di un set di Iptables, bloccare gli indirizzi IP potrebbe non essere molto semplice.

Nel caso si abbiamo già delle regole predefinite impostate su `deny` e successivamente si è provveduto ad autorizzare il traffico in entrata sulla porta 80: {{{
Linea 180: Linea 180:
}}}

Successivam
ente, si è trovato l'indirizzo IP 111.222.3.44 che sta forzando il nostro server. Il comando: {{{
}}} tentare di bloccare l'indirizzo Ip 111.222.3.44 con il comando {{{
Linea 184: Linea 182:
}}} in questo caso non farà nulla (perché si è abilitato l'accesso con la regola precedente).

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
}}}

= Esempio di tipo avanzato =
== Primo scenario ==
'''Da riscrivere'''

Si desidera bloccare l'accesso alla porta 22 dagli indirizzi IP 192.168.0.1.e 192.168.0.7 ma contemporaneamente permettere l'accesso a tutti gli altri indirizzi IP di tipo 192.168.0.x alla porta 22.

In questo caso la regola da applicare sarà la seguente: {{{
}}} non porterà ad alcun risultato in quanto in precedenza l'accesso era stato abilitato.

Si avrà bisogno di modificare il file `/etc/ufw/before.rules` e aggiungere una sezione "Block IP" dopo la sezione "Drop INVALID packets": {{{
# drop INVALID packets (logs these in loglevel medium and higher)
-A ufw-before-input -m state --state INVALID -j ufw-logging-deny
-A ufw-before-input -m state --state INVALID -j DROP

# block IP
-A ufw-before-input -s 111.222.3.44 -j DROP
}}}

= Esempio avanzatio =

Si supponga che si voglia bloccare l'accesso alla porta 22 agli indirizzi IP locali 192.168.0.1.e 192.168.0.7 ma allo stesso tempo si voglia permettere l'accesso a tutti gli altri indirizzi IP della sottorete 192.168.0.0/24.

 * Le regola da applicare saranno la seguenti: {{{
Linea 209: Linea 202:

Questo pone le norme specifiche prima e successivamente le generiche. Una volta che una regola è definita le altre non verranno valutate, quindi è necessario mettere le regole specifiche per prime. Quando le regole cambiano può essere necessario cancellare le vecchie regole per garantire che le nuove regole vengano messe e valutate nel giusto ordine.

Per verificare l'ordine delle regole si può controllare lo stato; per lo scenario sopra descritto qui sotto vi è il settaggio desiderato per far sì che le regole lavorino nella maniera giusta: {{{
 * Nell'esempio, le regole specifiche vengono poste prima della regola generica. Quando le regole cambiano può essere necessario cancellare le vecchie regole per garantire che le nuove regole vengano valutate nel giusto ordine.
 * Per verificare l'ordine delle regole si può utilizzare il comando {{{
sudo ufw status
}}}
 * In questo caso le regole saranno le seguentei: {{{
Linea 225: Linea 219:
== Secondo scenario ==

'''Ri
scrivere'''

P
artendo dall'esempio precedente, si vuole bloccare l'accesso alla porta 22 da parte dill'IP 192.168.0.3, 192.168.0.1 e 192.168.0.7.

Quindi, p
rima è necessario cancellare la regola generica {{{
Qualora, successivamente, si voglia bloccare l'accesso alla porta 22 anche all'indirizzo IP 192.168.0.3:
* Prima è necessario cancellare la regola generica: {{{
Linea 234: Linea 223:

Lo stato diventerà {{{
 * Lo stato diventerà: {{{
Linea 245: Linea 233:

Q
uindi è necessario applicare la regola all'indirizzo IP 192.168.0.3 {{{
 * Successivamente, è necessario applicare la regola all'indirizzo IP 192.168.0.3: {{{
Linea 249: Linea 236:

Infine rimettere la regola generica {{{
 * Infine, bisogna rimettere la regola generica: {{{
Linea 253: Linea 239:

Lo stato diventerà {{{
 * Lo stato diventerà: {{{
Linea 269: Linea 254:
'''Se si fosse semplicemente aggiunta la regola 'deny' la regola ' allow' sarebbe dovuto essere prima di 'deny' e applicata al posto di 'deny'.''' Verificare questa traduzione. Se si fosse semplicemente aggiunta la regola `deny`, `allow` sarebbe stata prima della regola `deny` per l'indirizzo IP 192.168.0.3 e quindi applicata al posto di `deny`.

BR WikiBanner(ArticoloInTraduzione)

Indice() Informazioni(rilasci="10.10 10.04 9.10 8.04"; forum="http://forum.ubuntu-it.org/index.php/topic,440673.0.html"; help="http://help.ubuntu-it.org/current/ubuntu/serverguide/it/firewall.html")

Introduzione

Ufw è l'applicazione predefinita in Ubuntu per la configurazione del firewall. Sviluppato per semplificare la configurazione di [:Sicurezza/Iptables:Iptables], Ufw offre un modo semplice per creare un firewall basato su protocolli IPv4 e IPv6.

Ufw è inizialmente disabilitato.

Impostare le regole predefinite

E' consigliato impostare la modalità predefinita di Ufw prima di abilitarlo.

  • Per bloccare tutto il traffico in entrata, digitare in una finestra di terminale il seguente comando:

     sudo ufw default deny
  • Per consentire tutto il traffico in entrata, digitare in una finestra di terminale il seguente comando:

     sudo ufw default allow
  • Per abilitare Ufw digitare in una finestra di terminale il seguente comando:

    sudo ufw enable

Immagine(Icone/Piccole/note.png,,center)

A meno che Ufw non si sia impostato inizialmente su deny, sarà in modalità allow e consentirà tutto il traffico in entrata e in uscita se prima non si è impostato il set di regole.

  • Per disabilitare Ufw digitare in una finestra di terminale il seguente comando:

     sudo ufw disable

Consentire e bloccare il traffico

  • In generale, la sintassi è la seguente:

    sudo ufw allow/deny porta/protocollo (facoltativo)
  • Per consentire i pacchetti tcp e udp in ingresso sulla porta 53, digitare il seguente comando in una finestra di terminale:

    sudo ufw allow 53
  • Per consentire i pacchetti tcp in ingresso sulla porta 53, digitare il seguente comando in una finestra di terminale:

    sudo ufw allow 53/tcp
  • Per consentire i pacchetti udp in ingresso sulla porta 53, digitare il seguente comando in una finestra di terminale:

    sudo ufw allow 53/udp
  • Per bloccare i pacchetti tcp e udp sulla porta 53, digitare il seguente comando in una finestra di terminale:

    sudo ufw deny 53
  • Per bloccare i pacchetti tcp sulla porta 53, digitare il seguente comando in una finestra di terminale:

    sudo ufw deny 53/tcp
  • Per bloccare i pacchetti udp sulla porta 53, digitare il seguente comando in una finestra di terminale:

     sudo ufw deny 53/udp

Sintassi avanzata

E' anche possibile utilizzare una sintassi più completa specificando l'origine e la destinazione degli indirizzi e delle porte.

  • In generale, la sintassi è la seguente:

    sudo ufw allow/deny from indirizzo_ip to protocollo port numero_porta (protocollo e numero_porta facoltativi)
  • Per consentire il traffico proveniente dall'indirizzo IP 207.46.232.182, digitare il seguente comando in una finestra di terminale:

     sudo ufw allow from 207.46.232.182
  • Per bloccare il traffico proveniente dall'indirizzo IP 207.46.232.182, digitare il seguente comando in una finestra di terminale:

    sudo ufw deny from 207.46.232.182
  • Per consentire il traffico proveniente dall'indirizzo IP 192.168.0.4 alla porta 22 per tutti i protocolli, digitare il seguente comando in una finestra di terminale:

    sudo ufw allow from 192.168.0.4 to any port 22
  • Per bloccare il traffico proveniente dall'indirizzo IP 192.168.0.4 alla porta 22 per tutti i protocolli, digitare il seguente comando in una finestra di terminale:

    sudo ufw deny from 192.168.0.4 to any port 22
  • Per consentire il traffico proveniente dalla sottorete 192.168.1.0/24, digitare il seguente comando in una finestra di terminale:

    sudo ufw allow from 192.168.1.0/24
  • Per bloccare il traffico proveniente dalla sottorete 192.168.1.0/24, digitare il seguente comando in una finestra di terminale:

    sudo ufw deny from 192.168.1.0/24

Eliminare una regola esistente

  • Per eliminare una regola, usare delete seguito dalla regola.

  • Per esempio, se la regola originale era:

    ufw deny 80/tcp
  • Usare questo comando per cancellarla:

    sudo ufw delete deny 80/tcp

Servizi

Se la porta che si vuole aprire o chiudere è definita in /etc/services, è possibile usare il nome al posto del numero della porta. Negli esempi seguenti, si sostituirà 22 con ssh.

  • Per vedere la lista dei servizi, digitare in una finestra ii terminale il seguente comando:

    less /etc/services
  • La sintassi sarà la seguente:

    sudo ufw allow/deny nome_servizio
  • Per consentire il servizio ssh, digitare il seguente comando in una finestra di terminale:

    sudo ufw allow ssh
  • Per bloccare il servizio ssh, digitare il seguente comando in una finestra di terminale:

     sudo ufw deny ssh

Stato

Verificare lo stato di Ufw permetterà di sapere se il firewall è attivato o disattivato e verrà mostrato l'elenco delle regole attualmente applicate da Ufw a Iptables.

  • Per visualizzare lo stato del firewall, digitare il seguente comando in una finestra di terminale:

    sudo ufw status
  • Se abilitato, un possibile output sarà il seguente:

    Firewall attivato
    
     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
  • Viceversa, il risultato sarà il seguente:

    Stato: inattivo

= Registri =p

I registri del firewall sono molto utili per riconoscere gli attacchi, migliorare le regole del firewall e per verificare attività inusuali nella propria rete.

  • Per attivare la registrazione, digitare il seguente comando in una finestra di terminale:

    sudo ufw logging on
  • Per disabilitare la registrazione, digitare il seguente comando in una finestra di terminale:

    sudo ufw logging off

Ping

Controllare

Con i moderni cracker script, disabilitare il ping può non portare vantaggi. Per impostazione predefinita, Ufw consente le richieste di ping.

Potrebbe darsi, che si voglia mantenere questa funzionalità per diagnosticare eventuali problemi di rete. Viceversa, per disabilitare questa funzionalità:

  • Con un [:Ufficio/EditorDiTesto:editor di testo] e i [:AmministrazioneSistema/Sudo:privilegi di amministrazione] aprire il file /etc/ufw/before.rules e sostituire:

     # 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
  • con:

     # 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

Regole di blocco avanzate

Se si dispone già di un set di Iptables, bloccare gli indirizzi IP potrebbe non essere molto semplice.

Nel caso si abbiamo già delle regole predefinite impostate su deny e successivamente si è provveduto ad autorizzare il traffico in entrata sulla porta 80:

sudo ufw allow 80

tentare di bloccare l'indirizzo Ip 111.222.3.44 con il comando

sudo ufw deny 111.222.3.44

non porterà ad alcun risultato in quanto in precedenza l'accesso era stato abilitato.

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

# drop INVALID packets (logs these in loglevel medium and higher)
-A ufw-before-input -m state --state INVALID -j ufw-logging-deny
-A ufw-before-input -m state --state INVALID -j DROP

# block IP
-A ufw-before-input -s 111.222.3.44 -j DROP

Esempio avanzatio

Si supponga che si voglia bloccare l'accesso alla porta 22 agli indirizzi IP locali 192.168.0.1.e 192.168.0.7 ma allo stesso tempo si voglia permettere l'accesso a tutti gli altri indirizzi IP della sottorete 192.168.0.0/24.

  • Le regola da applicare saranno la seguenti:

    sudo ufw deny from 192.168.0.1 to any port 22
    sudo ufw deny from 192.168.0.7 to any port 22
    sudo ufw allow from 192.168.0.0/24 to any port 22
  • Nell'esempio, le regole specifiche vengono poste prima della regola generica. Quando le regole cambiano può essere necessario cancellare le vecchie regole per garantire che le nuove regole vengano valutate nel giusto ordine.
  • Per verificare l'ordine delle regole si può utilizzare il comando

    sudo ufw status
  • In questo caso le regole saranno le seguentei:

     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

Qualora, successivamente, si voglia bloccare l'accesso alla porta 22 anche all'indirizzo IP 192.168.0.3:

  • Prima è necessario cancellare la regola generica:

    sudo ufw delete allow from 192.168.0.0/24 to any port 22
  • Lo stato diventerà:

     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
  • Successivamente, è necessario applicare la regola all'indirizzo IP 192.168.0.3:

    sudo ufw deny 192.168.0.3 to any port 22
  • Infine, bisogna rimettere la regola generica:

    sudo ufw allow 192.168.0.0/24 to any port 22
  • Lo stato diventerà:

     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                     DENY    192.168.0.3
     22:udp                     DENY    192.168.0.3
     22:tcp                     ALLOW   192.168.0.0/24
     22:udp                     ALLOW   192.168.0.0/24

Se si fosse semplicemente aggiunta la regola deny, allow sarebbe stata prima della regola deny per l'indirizzo IP 192.168.0.3 e quindi applicata al posto di deny.

Ulteriori risorse


CategoryNuoviDocumenti CategoryInTraduzione