Newsgroup: it.comp.reti.cisco
Titolo: Bloccare siti o porte su router 827

Ciao a tutti...dopo le varie configurazioni in cui mi avete dato una mano
davvero preziosa, sono alle prese con una nuova direttiva del capo! (sempre
lui!): vorrebbe bloccare l'utilizzo di internet ai vari dipendenti.
In pratica lui vuole che ognuno possa usare la posta (e quindi porta 25
aperta)....ma vorrebbe anche che fosse possibile usare alcuni siti internet
(per esempio pagine gialle).
Io al momento vorrei sapere se posso bloccare tutto il traffico escluso
quello della posta (pop3 compresa ovviamente)
e secondariamente apriro' sulla porta 80 qualche connessione sapendo magari
l'ip del server da poter raggiungere
E' possibile fare cio'? ;-)
Io vorrei anche essere piu' restrittivo sulle acl...cioe' applicare la
policy che BLOCCA tutto tranne cio' che voglio proprio aprire.
Quindi forse manca un "deny all" alla fine?
PS Come "promemoria" al momento ho nat interno, firewall abilitato, vpn con
3des attivo tra i due router e Voice over ip tra le due sedi. Credo dovro'
lavorare di ACL ma partendo da zero...chiedevo qualceh dritta.
Escludendo la acl sul telnet ecco la mia unica acl sul primo router. L'altro
e' speculare ovviamente.
access-list 120 permit esp host IP_PUBBLICO_SECONDO_ROUTER host
IP_PUBBLICO_PRIMO_ROUTER
access-list 120 permit udp host IP_PUBBLICO_SECONDO_ROUTER eq isakmp host
IP_PUBBLICO_PRIMO_ROUTER
 eq isakmp
access-list 120 permit ip any host IP_PUBBLICO_PRIMO_ROUTER
Grazie mille per eventuali aiuti!
Ciao a tutti
Elena ed Emanuele

  eq isakmp
*> access-list 120 permit ip any host IP_PUBBLICO_PRIMO_ROUTER
se a questa ultima access list (quella con l'asterisco davanti) aggiungo la
porta specifica da utilizzare (per esempio 25) non significherebbe fare
quello che voglio? cioe' lasciar passare il traffico sulla porta della
posta...
poi ovviamente replico la access list su tutte le porte che mi interessano e
via.
Per esempio:
access-list 120 permit ip any host IP_PUBBLICO_PRIMO_ROUTER 25
access-list 120 permit ip any host IP_PUBBLICO_PRIMO_ROUTER 110
access-list 120 permit ip any host IP_PUBBLICO_PRIMO_ROUTER 119
access-list 120 permit tcp 172.16.0.120 80 IP_PUBBLICO_PRIMO_ROUTER 80
No eh? (l'ultima riga sarebbe un tentativo di abilitare la navigazione sul
mio pc ma ci arrivero' dopo vah!)
Ciao a tutti e grazie nel caso!

In un router, è possibile permettere o bloccare un determinato
servizio (identificato dalle porte utilizzate), tuttavia non è
possibile bloccare un sito piuttosto che un altro... (che io sappia)
cioé, un modo ci sarebbe, ma è uno sbattimento incredibile:
prendi gli indirizzi ip di tutto quello che ti può servire su internet
(siti internet, posta elettronica, server newsgroup...) e gli metti
una statica che dica al router dove trovarli (cioé tutti con next hop
internet). Per il resto metto un "gateway of last resort" verso
l'interfaccia Null0. Tuttavia credo comporti uno sbattimento enorme!!!
In pratica:
ip route ip_server_pop3 netmask interf_to_internet
ip route ip_server_smtp netmask interf_to_internet
...
ip route 0.0.0.0 0.0.0.0 null0
Un server proxy decente, si può mettere anche su Windows.
Ci sono tanti programmini shareware o addirittura freeware con cui
puoi fare prove (e magari utilizzarli in via definitiva)...
Per il server mail, prova questo programma Anywhere Mail Server, è
semplicissimo, costa poco e funziona bene (è per Windows)
Ricorda una cosa sulle ACL.
Se vuoi cambiare una policy su una ACL, devi deconfigurarla e rifarla
daccapo.
Ciao


 daccapo.
Ah si, so che per cambiarla si deve azzerarla e ripartire da capo...pero'
almeno imparero' bene! ;-)
Una domanda.....
attualmente ho solo quelle 3 regole nella acl 120. Si sottintende la deny
any any e fin qui ci sono.
Ma se aggiungo la regola che lascia passare sulla porta 25 e sulla 110 (per
esempio), do per scontato che verra' bloccato tutto il resto?
Perche' io vorrei lasciare tutto aperto sul canale vpn....mentre
sull'interfaccia dialer0 (dove esco/entro su internet) vorrei specificare la
porta. E' cosi' semplice o sto dimenticando qualcosa di fondamentale?
Io modificherei solo la
access-list 120 permit ip any host 217.133.57.174
in
access-list 120 permit ip IP_DEL_PC_INTERNO 25 217.133.57.174 25
oppure
access-list 120 permit ip any host 25 217.133.57.174 25
Ari-grazie!
ciao ciao
Emanuele

Per l'ACL, il deny any any implicito, viene aggiunto alla fine, quindi
nel tuo caso, aggiungendo un altro permit (ai 3 permit di prima) non
dovresti risontrare problemi.
Un'ACL viena presa in considerazione con dei "match" riga per riga,
cioé:
-su una interf. arriva un pacchetto
-il router vede se su quell'interf ed in quella direzione (in o out)
c'è un'ACL
-se non c'è ACL, il pacchetto viene instradato
-se c'è un'ACL, questa viene letta riga per riga, finché non viene
trovata la prima istruzione utile per trattare il pacchetto
"incriminato". Tutto quello che viene dopo, non viene considerato.
Per la tua rete, potresti fare così:
-prendi il tuo pc e gli metti su un proxy server 
metti un ACL sul router con permit (verso internet) del solo traffico
che arriva dall'ip della tua macchina
-configuri su tutti gli altri pc l'indirizzo del proxy con quello
della tua macchina (che poi si occuperà di re-instradare il traffico
internet verso il router)
configurando ad hoc il proxy, potresti avere una situazione del
genere:
-tutti gli utenti hanno "internet filtrato" (sono permessi solo POP3,
SMTP, news e qualche sito)
-tu hai tutto in permit :-))))
Per l'ACL, ora ci penso un attimo e poi ti dico (sono un pò di fretta)
Ciao


 Per l'ACL, ora ci penso un attimo e poi ti dico (sono un pò di fretta)
Ci mancherebbe!
Cosi' intanto ci provo...magari imparo pure! ;-)

L'ACL sul protocollo IP non accetta specifiche porte...
per poter filtrare le porte, devi specificare il protocollo TCP o UDP.
L'ACL va così costruita:
access-list 120 permit tcp host 172.16.0.15 host 217.133.57.174 eq www
Ciao


 access-list 120 permit tcp host 172.16.0.15 host 217.133.57.174 eq www
L'ho provata ma non funziona. Mi spiego meglio:
avevo questa acl "aperta" a tutto
access-list 120 permit ip any host 217.133.57.174
e in questo modo posso navigare, spedire posta ecc. ecc.
allora ho tolto tutta la acl 120, sono ripartito da zero ovviamente NON
mettendo quella riga e ho messo la tua.
Ho scoperto che posso anche fare un
access-list 120 permit tcp any host 217.133.57.174 eq www (credo per
abilitare tutte la macchine della rete alla navigazione)
In ogni caso...sia con l tua sia con questa piu' generale, non navigo!
Oltretutto ho replicato la tua acl per altre 2 porte e mi son ritrovato con
la acl 120 cosi' fatta:
access-list 120 permit tcp host 172.16.0.15 host 217.133.57.174 eq www
access-list 120 permit tcp host 172.16.0.15 host 217.133.57.174 eq pop3
access-list 120 permit tcp host 172.16.0.15 host 217.133.57.174 eq smtp
ma con queste 3 regole non va ne la navigazione ne la posta. Appena rimetto
la
access-list 120 permit ip any host 217.133.57.174
allora riparte tutto..
Il dubbio che mi viene ora e' che forse sto facendo confuzione sui
protocolli ma da quello che sapevo sia pop3 (25) sia smtp (110) andavano su
protocollo TCP o mi stanno cadendo tutte le certezze della vita???
Oppure sto sbagliando gli IP???
Mah....ora ci riprovo senza specificare le porte...
Grazie ancora...ce la faro' alla fine! ;-)
Emanuele

Per il permit su WWW, bisogna controllare la porta che utilizzi...
se usi un proxy potresti aver bisogno di aprire la 8080 o la 8081...
comunque il fatto è che bisogna capire dove va il tuo traffico...
per fare una prova, potresti loggare gli eventuali tentativi di bypass
dell'ACL...
quindi un bel "debug ip packet ACL_NUMBER detail"
per l'ACL, potresti crearne una ad hoc, tipo un permit ip any any e
vedere cosa passa quando richiedi una pagina internet.
Ciao


 vedere cosa passa quando richiedi una pagina internet.
In effetti ho rimesso la mia solita
access-list 120 permit ip any host 217.133.57.174
ma pensavo di vedere qualcosa comunque...no?
Scusami...mi rendo conto che sto verameente "rompendo"...in ogni caso grazie
mille!

Se sei in console, metti questo comando in Router(config)#
"logging console..."
se invece sei in telnet, allora scrivi:
Router#terminal monitor
Per farlo smettere usa 
"no logging console"
e
"terminal no monitor"
nelle rispettive sezioni
Ciao


 Router#terminal monitor
Grazie mille....con questi comandi mi si apre il mondo!!!
Ora qualcosa forse riesco anche a capirla!!!
Ecco il punto!
Spero di aver capito giusto, datemi conferma vi prego! ;-)
Io al momento applico la ACL 120 all'interfaccia che esce su internet (la
dialer0) con un
IP access-group 120 in (sotto dialer0)
Quindi io controllo cio' che ENTRA da internet e va all'interno del router.
Le regole della acl 120 quindi non sono altro che un controllo di sorgente -
destinazione dove sorgente sono i siti internet (e tutt ocio' che sta fuori)
e destinazione e' l'ip pubblico del mio router.
La mia vecchia regola
access-list 120 permit ip any host 217.133.57.174
significava che qualsiasi pacchetto ip proveniente da fuori veniva accettato
dal mio router sul suo ip pubblico. e quindi tutto funzionava!
Togliendo questa regola e mettendo una
access-list 120 permit ip host 172.16.0.115 host 217.133.57.174
io pensavo di abilitare il mio pc a ricevere tutto ma ora penso e spero di
aver capito che non e' cosi'!
questa ultima regola non fa altro che dire al router che i pacchetti
PROVENIENTI dall'IP 172.16.0.115 possono entrare sul dialer0....cosa
totalmente inutile visto che su internet non ci sara' nessun 172.16.0.115!
;-)))
Quindi ho concluso quanto segue:
continuo a scrivere regole del tipo
-access-list 120 permit ip host INDIRIZZO_GOOGLE_O_POCHI_ALTRI host
217.133.57.174
per abilitare qualche sito sapendo il suo ip (il capo vuole che qualche sito
sia navigabile)
-access-list 120 permit tcp any host 217.133.57.174 eq 25
-access-list 120 permit tcp any host 217.133.57.174 eq 110
-access-list 120 permit tcp any host 217.133.57.174 eq 119
per abilitare posta e news o quant'altro in ingresso sul router (potrei
essere piu' restrittivo e invece di mettere any potrei inserire gli
indirizzi precisi ma non voglio complicarmi troppo la vita)
ma nel contempo faccio una
IP access-group 130 out (sotto dialer0)
e scrivo regole tipo
-access-list 130 permit tcp host 172.16.0.115 host 217.133.57.174 eq 80
-access-list 130 permit tcp host 172.16.0.115 host 217.133.57.174 eq 25
-access-list 130 permit tcp host 172.16.0.115 host 217.133.57.174 eq 110
-access-list 130 permit tcp host 172.16.0.115 host 217.133.57.174 eq 119
per abilitare navigazione e altro al singolo pc (115)
-access-list 130 permit tcp host 172.16.0.11x host 217.133.57.174 eq xx
per abilitare ai pc (da scegliere) i servizi (da scegliere)
e confidando nel deny any any finale dovrei chiudere tutto il resto giusto?
Mi scuso per il lungo messaggio...ma la strada e' lunga e pensavo di aver
capito qualcosa in piu'!
Spero sia cosi'...grazie in ogni caso delle consulenze!
Ciao ciao...
Emanuele

> Ora qualcosa forse riesco anche a capirla!!!
Ho cantato vittoria troppo presto!
Pensavo di aver capito ma dopo aver provato quanto dicevo...non funzionava
nulla!
Uffa...riparto da zero!
Nessuno ha qualche dritta?
Scrivo nuovamente la configurazione...non si sa mai.
Ho un router C827-4V al quale si collegano tramite vari hub/switch i vari pc
(diciamo una decina)
la rete locale e' del tipo 
172.16.0.0/24
 (non chiedetemi perch'e sia una
classe b)
il router ha ip interno 172.16.0.73
il router ha un ip esterno statico (pubblico)
al momento il router fa
NAT interno per dare a tutti i pc il collegamento internet.
Tunnel vpn 3des per collegarsi ad un altro router gemello posto in un'altra
sede
un minimo di firewall...ma proprio poco configurato
VoIP con le 4 porte voce
sul dialer0 ho una ip access-group 120 in
e le regole della 120 sono:
access-list 120 permit esp host IP_PUBBLICO_ROUTER2 host IP_PUBBLICO_ROUTER1
access-list 120 permit udp host IP_PUBBLICO_ROUTER2 eq isakmp host
IP_PUBBLICO_ROUTER1 eq isakmp
access-list 120 permit ip any host IP_PUBBLICO_ROUTER1
vorrei solo fare una acl per dire a quali pc (non) andare su
internet...potendo dire magari quali porte lascaire aperte (posta, news, 80
per qualcuno) e quali chiudere.
Al momento...le mie acl non vanno proprio!
Grazie per ogni eventuale aiuto.
Emanuele

Mi sorge un sospetto...il problema della ip access-group 130 out forse non
risolve nulla per il semplice motivo che "out" vuol dire dal router a
fuori...non dai miei pc al router. Siccome ho il nat abilitato inizio a
pensare che le acl devo metterle facendo il nat in modo diverso!
Al momento ho
IP nat inside sulla interaccia eth0
IP nat outside sulla interfaccia dialer0
Ma in effetti forse devo rimappare le porte dei singoli pc nattando per bene
o facendo anche pat....boh, ora son proprio fermo!
Saluti a tutti!
Emanuele

il senso del NAT, va studiato..
Interfaccia interna IN
interfaccia esterna OUT
dai PC ad internet NAT INSIDE
da internet ai PC NAT OUTSIDE
Interf. interna OUT
Interf. esterna IN
dai PC ad internet NAT OUTSIDE
da internet ai PC NAT OUTSIDE
...insomma INSIDE o OUTSIDE definiscono da quale parte arriva
l'indirizzo che andrà analizzato...
Ciao


 da internet ai PC NAT OUTSIDE
Ecco....quello che scrivi mi sfugge un po'!
Perdonami ma non ho proprio capito cosa intendevi dire con quelle
righe-esempio..
Emanuele

Con "il senso del NAT va studiato" intendo dire che ti conviene
prepararlo prima a "tavolino" e poi configurarlo, facendo le dovute
prove...
sul NAT si trova moltissimo, quindi bisogna fare una selezione (non si
può leggere tutto). Ad esempio, di ACL riflessive, so poco/niente, in
quanto, pur conoscendo un pò la teoria, non le ho mai utilizzate (ti
garantisco che pur conoscendo bene la teoria delle ACL statiche, le
prime volte ho fatto dei casini pazzeschi :))))
La storia degli IN/OUT era per farti un esempio della situazione...
ip nat inside OPPURE ip nat outside:
di solito si mette IN sull'interfaccia interna (Ethernet) ed OUT
sull'esterna (Dialer o ATM)
mentre la configurazione del NAT nel Global Config, viene strutturato
in questo modo:
(ip nat inside source... ip nat outside source...)
prendi come riferimento, l'interfaccia a cui il NAT "si presenta",
esempio:
la mia rete privata, si deve presentare all'Eth0 per essere mascherata
con l'indirizzo (o con un POOL di indirizzi) dell'interfaccia esterna
(in questo caso ADSL, quindi ATM).
Allora il NAT è "inside" in quanto l'interfaccia su cui si presenta è
quella su cui hai configurato l'ip nat inside...
So che è un pò ingarbugliato...
Ciao
Federico
