Questo documento è una estensione per router Enterasys del documento di Franco Brasolin sulla definizione delle access list sui router Cisco.
Introduzione
La sintassi è:
acl <nome> permit/deny <protocollo> src-addr/mask dest-addr/mask src-port dest-port [options].
<nome> è una stringa qualsiasi, può essere anche un numero, sceglierò d’ora in avanti il nome 103
<protocollo> può essere ip, udp, tcp, icmp, igmp, oltre ai protocolli legati a ipx.
Tra le opzioni posso specificare established e log.
Due cose sono sempre da tenere presenti:
- L’ordine è essenziale perché al primo match soddisfatto il router interrompe la scansione delle access-list. Per applicare delle modifiche è quindi necessario annullare tutte le access-list precedenti. Il primo comando da dare sarà:
no acl 103 *
* Il deny è implicito, devo quindi ricordarmi di permettere tutto ciò che non ho proibito:
acl 103 permit ip
Access list
La lista che segue riguarda le access-list che è consigliato applicare:
AntiSpoofing
Blocca il traffico proveniente da network riservate:
acl 103 deny ip 0.0.0.0/32 any any any log acl 103 deny ip 127.0.0.0/8 any any any log acl 103 deny ip 10.0.0.0/8 any any any log acl 103 deny ip 172.16.0.0/12 any any any log acl 103 deny ip 192.168/16 any any any log
e proveniente da network locali:
acl 103 deny ip XXX.YYY.ZZZ.0/24 any any any log
NB: inserire una riga per ognuna delle network del proprio dominio
Blocco di eventuali host indesiderati
Se volete bloccare l’ingresso di host specifici:
acl 103 deny ip xxx.yyy.zzz.kkk/32 any any any log
Blocco di eventuali network indesiderate
Se volete bloccare l’ingresso di network specifiche:
acl 103 deny ip xxx.yyy.zzz.0/24 any any any log
Blocca tutto dalla porta 1 alla porta 20
Le porte dalla 1 alla 20 non sono normalmente necessarie
acl 103 deny udp any any any 1-20 log acl 103 deny tcp any any any 1-20 log
Filtra porta 21 – FTP
acl 103 permit tcp xxx.yyy.zzz.kkk/32 sss.ddd.fff.ggg/32 any 21 <<< host to host acl 103 permit tcp xxx.yyy.zzz.0/24 sss.ddd.fff.ggg/32 any 21 <<< network to host acl 103 deny tcp any any any 21 log acl 103 deny udp any any any 21 log
Blocca porta 22 – SSH
Se avete host con versioni SSH non sicure:
acl 103 deny tcp any xxx.yyy.zzz.kkk/32 any 22 acl 103 deny udp any xxx.yyy.zzz.kkk/32 any 22
Filtra porta 23 – Telnet
acl 103 permit tcp xxx.yyy.zzz.kkk/32 sss.ddd.fff.ggg/32 any 23 <<< host to host acl 103 permit tcp xxx.yyy.zzz.0/24 sss.ddd.fff.ggg/32 any 23 <<< network to host acl 103 deny tcp any any any 23 log acl 103 deny udp any any any 23 log
Blocca porta 24 – any private mail system
La porta 24 non è normalmente necessaria
acl 103 deny tcp any any any 24 log acl 103 deny udp any any any 24 log
Filtra porta 25 – SMTP
La porta 25 deve essere aperta solo verso il(i) mailserver xxx.yyy.zzz.kkk:
acl 103 permit tcp any xxx.yyy.zzz.kkk/32 any 25 acl 103 deny tcp any any any 25 log acl 103 deny udp any any any 25 log
Blocca tutto dalla porta 26 alla porta 52
Le porte dalla 26 alla 52 non sono normalmente necessarie
acl 103 deny udp any any any 26-52 log acl 103 deny tcp any any any 26-52 log
Filtra porta 53 – DNS
La porta 53 deve essere aperta solo verso il(i) DNS Nameserver locali xxx.yyy.zzz.kkk in udp; in tcp solo da macchine DNS server esterne autorizzate al zone-transfer:
acl 103 permit udp any xxx.yyy.zzz.kkk/32 any 53 <<< per ogni server acl 103 permit tcp ddd.fff.ggg.hhh/32 xxx.yyy.zzz.kkk/32 any 53 <<< per ogni server acl 103 deny tcp any any any domain log acl 103 deny udp any any any domain log
Blocca tutto dalla porta 54 alla porta 79
Le porte dalla 54 alla 79 non sono normalmente necessarie
acl 103 deny udp any any any 54-79 log acl 103 deny tcp any any any 54-79 log
Filtra porta 80 – HTTP
La porta 80 deve essere aperta solo verso il(i) WWW-http Server xxx.yyy.zzz.kkk:
acl 103 permit tcp any xxx.yyy.zzz.kkk/32 any 80 <<< per ogni server acl 103 deny tcp any any any 80 log acl 103 deny udp any any any 80 log
Blocca tutto dalla porta 81 alla porta 109
Le porte dalla 81 alla 109 non sono normalmente necessarie
acl 103 deny udp any any any 81-109 log acl 103 deny tcp any any any 81-109 log
Filtra porta 110 – POP3
La porta 110 deve essere aperta solo verso il(i) POP3 Server xxx.yyy.zzz.kkk, se ce ne sono:
acl 103 permit tcp any xxx.yyy.zzz.kkk32 any 110 <<< per ogni server acl 103 deny tcp any any any 110 log acl 103 deny udp any any any 110 log
Blocca tutto dalla porta 111 alla porta 122
Le porte dalla 111 alla 122 non sono normalmente necessarie
acl 103 deny udp any any any 111-122 log acl 103 deny tcp any any any 111-122 log
Filtra porta 123 – NTP
La porta 123 deve essere aperta solo verso il(i) NTP (Time syncronization) Server xxx.yyy.zzz.kkk, se ce ne sono:
acl 103 permit udp any xxx.yyy.zzz.kkk/32 any 123 <<< per ogni server acl 103 deny tcp any any any 123 log acl 103 deny udp any any any 123 log
Blocca tutto dalla porta 124 alla porta 136
Le porte dalla 124 alla 136 non sono normalmente necessarie
acl 103 deny udp any any any 124-136 log acl 103 deny tcp any any any 124-136 log
Filtra porte 137 138 139 – NetBios
Le porte 137, 138, 139 devono essere aperte solo se necessario o richiesto (p.e. Server NICE) xxx.yyy.zzz.kkk (verificate anche se serve aperta la porta 445 – Microsoft DS):
all to host:
acl 103 permit tcp any xxx.yyy.zzz.kkk/32 any 137-139 acl 103 permit udp any xxx.yyy.zzz.kkk/32 any 137-139 acl 103 deny tcp any any any 137-139 log acl 103 deny udp any any any 137-139 log
oppure host to host:
acl 103 permit tcp sss.ddd.fff.ggg/32 xxx.yyy.zzz.kkk/32 any 137-139 acl 103 permit udp sss.ddd.fff.ggg/32 xxx.yyy.zzz.kkk/32 any 137-139 acl 103 deny tcp any any any 137-139 log acl 103 deny udp any any any 137-139 log
Blocca tutto dalla porta 140 alla porta 142
Le porte dalla 140 alla 142 non sono normalmente necessarie
acl 103 deny udp any any any 140-142 log acl 103 deny tcp any any any 140-142 log
Filtra porta 143 – IMAP
La porta 143 deve essere aperta solo verso il(i) IMAP Server xxx.yyy.zzz.kkk:
acl 103 permit tcp any xxx.yyy.zzz.kkk/32 any 143 <<< per ogni server acl 103 deny tcp any any any 143 log acl 103 deny udp any any any 143 log
Blocca tutto dalla porta 144 alla porta 169
Le porte dalla 144 alla 169 non sono normalmente necessarie
acl 103 deny udp any any any 144-169 log acl 103 deny tcp any any any 144-169 log
Filtra porta 170 – PRINT-SRV
Se volete permettere l’accesso alla stampante xxx.yyy.zzz.kkk da altri domini presenti sulla vostra LAN, p.e. network sss.ddd.fff.0 del Dipartimento di Fisica (vedere anche porta 515):
acl 103 permit tcp sss.ddd.fff.0/24 xxx.yyy.zzz.kkk/32 any 170 <<<per ogni stampante acl 103 deny tcp any any any 170 log acl 103 deny udp any any any 170 log
Blocca tutto dalla porta 171 alla porta 442
Le porte dalla 171 alla 442 non sono normalmente necessarie
acl 103 deny udp any any any 171-442 log acl 103 deny tcp any any any 171-442 log
Filtra porta 443 – HTTPS
La porta 443 deve essere aperta solo verso il(i) WWW-HTTPS e/o WebMail Server, xxx.yyy.zzz.kkk:
acl 103 permit tcp any xxx.yyy.zzz.kkk/32 any 443 <<< per ogni server acl 103 deny tcp any any any 443 log acl 103 deny udp any any any 443 log
Blocca porta 444
La porta 444 non e` normalmente necessaria
acl 103 deny tcp any any any 444 log acl 103 deny udp any any any 444 log
Filtra porta 445 – Microsoft-DS
La porta 445 deve essere aperta solo se necessario o richiesto (Servizi Microsoft ):
all to host:
acl 103 permit tcp any xxx.yyy.zzz.kkk/32 any 445 acl 103 permit udp any xxx.yyy.zzz.kkk/32 any 445 acl 103 deny tcp any any any 445 log acl 103 deny udp any any any 445 log
oppure host to host: acl 103 permit tcp sss.ddd.fff.ggg/32 xxx.yyy.zzz.kkk/32 any 445 acl 103 permit udp sss.ddd.fff.ggg/32 xxx.yyy.zzz.kkk/32 any 445
Blocca tutto dalla porta 446 alla porta 448
Le porte dalla 446 alla 448 non sono normalmente necessarie
acl 103 deny udp any any any 446-448 log acl 103 deny tcp any any any 446-448 log
Filtra porta 449 – AS Server Mapper
Alcuni Java script utilizzati dall’ Amministrazione INFN a Frascati sull’host sss.ddd.fff.ggg potrebbero avere la necessità di questa porta aperta verso il sistema AS400 locale xxx.yyy.zzz.kkk:
acl 103 permit tcp sss.ddd.fff.ggg/32 xxx.yyy.zzz.kkk/32 any 449 acl 103 deny tcp any any any 449 log acl 103 deny udp any any any 449 log
Blocca tutto dalla porta 450 alla porta 499
Le porte dalla 450 alla 499 non sono normalmente necessarie
acl 103 deny udp any any any 450-499 log acl 103 deny tcp any any any 450-499 log
Filtra porta 500 – VPN
Permette l’accesso a device VPN xxx.yyy.zzz.kkk:
acl 103 permit tcp any xxx.yyy.zzz.kkk/32 any 500 <<< aggiungere piu` righe per piu` box VPN acl 103 deny tcp any any any 500 log acl 103 deny udp any any any 500 log
Blocca tutto dalla porta 501 alla porta 514
Le porte dalla 501 alla 514 non sono normalmente necessarie acl 103 deny udp any any any 501-514 log acl 103 deny tcp any any any 501-514 log
Filtra porta 515 – SPOOLER
Se volete permettere l’accesso alla stampante xxx.yyy.zzz.kkk da altri domini presenti sulla vostra LAN, p.e. network sss.ddd.fff.0 del Dipartimento di Fisica (vedere anche porta 170):
acl 103 permit tcp sss.ddd.fff.0/24 xxx.yyy.zzz.kkk/32 any 515 <<<per ogni stampante acl 103 deny tcp any any any 515 log acl 103 deny udp any any any 515 log
Blocca tutto dalla porta 516 alla porta 960
Le porte dalla 516 alla 960 non sono normalmente necessarie
acl 103 deny udp any any any 516-960 log acl 103 deny tcp any any any 516-960 log
Filtra porta 993 – IMAP4 (IMAP SSL)
La porta 993 deve essere aperta solo verso il(i) IMAP-SSL server xxx.yyy.zzz.kkk:
acl 103 permit tcp any xxx.yyy.zzz.kkk/32 any 993 <<< per ogni server acl 103 deny tcp any any any 993 log acl 103 deny udp any any any 993 log
Alcune altre porte da chiudere:
1080 chiusa per IRC
acl 103 deny tcp any any any 1080 log acl 103 deny udp any any any 1080 log
1115 chiusa per ardus-transfer
acl 103 deny tcp any any any 1115 log acl 103 deny udp any any any 1115 log
1214 chiusa per Kazaa e Morpheous (mp3)
acl 103 deny tcp any any any 1214 log acl 103 deny udp any any any 1214 log
1433-1434 chiusa per MS-SQL udp/tcp
acl 103 deny tcp any any any 1433-1434 log acl 103 deny udp any any any 1433-1434 log
1993 UDP chiusa per sicurezza SNMP CISCO
acl 103 deny udp any any any 1993 log
2002 sicurezza SSL (in &out)
acl 103 deny tcp any any any 2002 log acl 103 deny udp any any any 2002 log
2049 NFS
acl 103 deny tcp any any any 2049 log acl 103 deny udp any any any 2049 log
4600-4700 chiusa per eDonkey
acl 103 deny tcp any any any 4600-4700 log acl 103 deny udp any any any 4600-4700 log
6200-6300 WinMX
acl 103 deny tcp any any any 6200-6300 log acl 103 deny udp any any any 6200-6300 log
6300-6400 Gnutella
acl 103 deny tcp any any any 6300-6400 log acl 103 deny udp any any any 6300-6400 log
6667 chiusa per IRC
acl 103 deny tcp any any any 6667 log acl 103 deny udp any any any 6667 log
6600-6800 chiusa per Winmx
acl 103 deny tcp any any any 6600-6800 log acl 103 deny udp any any any 6600-6800 log
27374 chiusa per worm ramen
acl 103 deny tcp any any any 27374 log acl 103 deny udp any any any 27374 log
43981 Netware
acl 103 deny tcp any any any 43981 log acl 103 deny udp any any any 43981 log
Nelle ultime istruzioni del file inserisco il permesso di passaggio a tutto quello che non è stato filtrato e l’applicazione dell’access list all’interfaccia:
acl 103 permit ip acl 103 apply interface <nome dell’interfaccia> input logging deny-only
Nell’esempio l’access lista viene abilitata sui pacchetti in ingresso e per default è stato abilitato il logging di tutti i pacchetti filtrati, in questo caso non serve specificare l’opzione log nelle istruzioni di deny.
Condor
Attenzione: se nella vostra sede viene utilizzato Condor, le seguenti porte devono restare aperte:
- range 32000-32500 (il range può essere configurato nel file condor_config)
- porta 9618 (serve solo per il Central Manager; attualmente ne esiste uno solo nella sede di Bologna).
AFS
Nel caso venga completamente bloccato l’accesso dall’esterno ad un host locale, fate attenzione nel caso sia installato AFS Client: non funziona e provoca problemi anche agli AFS Server nazionali. Se non si può disabilitare AFS sull’host locale, vanno tenute aperte dall’esterno verso l’interno le seguenti porte:
- range 7000-7009 UDP
- porta 32773 UDP (permette l’utilizzo del comando klog)
Filtro in uscita
Esempio analogo al precedente ma applicato ai pacchetti in uscita.
Filtro per wan in uscita
acl 104 deny tcp xxx.yyy.kkk.zzz/32 any any any log acl 104 deny udp xxx.yyy.kkk.zzz/32 any any any log
69 – TFTP chiusa per virus NACHI
acl 104 deny tcp any any any 69 log acl 104 deny udp any any any 69 log
135-139 – NetBios (Chiusa per virus Blaster)
(escluse macchine autorizzate)
acl 104 permit tcp xxx.yyy.kkk.zzz/32 xxx.yyy.kkk.hhh/32 any 137-139 acl 104 permit udp xxx.yyy.kkk.zzz/32 xxx.yyy.kkk.hhh/32 any 137-139 acl 104 deny tcp any any any 135-139 log acl 104 deny udp any any any 135-139 log
445 – Microsoft DS – Chiusa per virus Blaster
(escluse macchine autorizzate)
acl 104 permit tcp xxx.yyy.kkk.zzz/32 xxx.yyy.kkk.hhh/32 any 445 acl 104 permit udp xxx.yyy.kkk.zzz/32 xxx.yyy.kkk.hhh/32 any 445 acl 104 deny tcp any any any 445 log acl 104 deny udp any any any 445 log
593 – Chiusa per virus NACHI
acl 104 deny tcp any any any 593 log acl 104 deny udp any any any 593 log
1214 chiusa per Morpheus
acl 104 deny tcp any any any 1214 log acl 104 deny udp any any any 1214 log
1433-1434 chiusa per MS-SQL udp/tcp
acl 104 deny tcp any any any 1433-1434 log acl 104 deny udp any any any 1433-1434 log
2002 vulnerabilita’ SSL
acl 104 deny tcp any any any 2002 log acl 104 deny udp any any any 2002 log
4600-4700 chiusa per eDonkey
acl 104 deny tcp any any any 4600-4700 log acl 104 deny udp any any any 4600-4700 log
6346-6347 porta Gnutella
acl 104 deny tcp any any any 6346-6347 log acl 104 deny udp any any any 6346-6347 log
6667 trojan Sendmail
acl 104 deny tcp any any any 6667 log acl 104 deny udp any any any 6667 log
27374 chiusa per worm ramen
acl 104 deny tcp any any any 27374 log acl 104 deny udp any any any 27374 log
antispoofing dalle network locali
acl 104 permit ip xxx.yyy.kkk.0/24 any any any acl 104 permit ip xxx.yyy.hhh.0/24 any any any
tutto il resto viene bloccato
acl 104 deny ip any any any any log acl apply interface wan0 output
Attivazione filtri
I file con i filtri devono risiedere su una macchina che abbia TFTP attivo in una directory autorizzata al TFTP (vedi /etc/inetd.conf o equivalente). Le protezioni dei file devono essere: -rwxr-xr-x (chmod 775).
Dalla console del router, in modalità enable, bisogna dare i seguenti comandi per caricare le access list:
# no acl 103 *
# save active
# copy tftf-server to scratchpad TFTP server? Source filename?
# save active
Ricordate di salvare le modifiche:
# copy active to startup
Per salvare la configurazione sul server tftp
# copy startup to tftp-server
Le access list possono essere modificate anche da console; in modo enable e dopo essere entrati in configure, si usa
# acl-edit <nome acl>
Le access list compaiono in ordine e precedute da un numero. È possibile cancellarle:
(acl-edit)> delete <numero>
oppure inserirle nel modo standard:
(acl-edit)> acl 103 permit …….
e poi posizionarle
(acl-edit)> move <numero posizione attuale> after <numero posizione acl precedente>
con il comando
(acl-edit)> exit
si esce e si salva.