ACL per BLocco PING

Mettete al sicuro la vostra rete!

Moderatore: Federico.Lagni

marchack
Cisco fan
Messaggi: 49
Iscritto il: lun 06 set , 2004 11:44 pm

Innanzitutto inizio col complimentarmi per il bellissimo e attivissimo forum messo in piedi, davvero eccezionale. Dopo le meritate lodi verrei al mio quesito: Vorrei filtrare con una ACL i ping che provengono dall'esterno ossia fare in modo che chiunque voglia pingare il mio indirizzo riceva una risposta nulla , un timeout o qualunque altra cosa purchè rimanga non raggiungibile. Al tempo stesso però vorrei che io possa usufruire del ping cioè "pingare" ma non essere "pingato"... Esiste una ACL che consenta di far questo? Ho fatto alcuni tentativi inserendo sull'interfaccia dialer un ip access-group con direzione esterna (out) con relativa ACL con deny icmp any any echo ma il risultato che ho ottenuto è che non riuscivo più a navigare... So che in un acl è implicito un deny any xò no so cos'altro inserire per poter risolvere il problema...
Grazie per l'attenzione e a chiunque vorrà rispondermi
Avatar utente
tonycimo
Cisco pathologically enlightened user
Messaggi: 185
Iscritto il: mer 26 gen , 2005 9:26 am
Località: Roma

Ciao, sono felice anche io dell'esistenza di questo forum :P ,
allora se intendi inserire una acl sulla dialer devi metterla tipo:
access-list xxx permit tcp any any estabili
access-list xxx deny icmp any any eq echo
access-list xxx permit icmp any any eq echo-replay
ecc.ecc.

l'acl in rosso è quella che ti serve, in realtà puoi anche ometterla, perchè poi droppa tutto implicitamente alla fine, però ricordati di permettere quello che ti serve nel traffico in entrata.
P.S.
acl in ingresso alla dialer
ciauz
Avatar utente
TheIrish
Site Admin
Messaggi: 1840
Iscritto il: dom 14 mar , 2004 11:26 pm
Località: Udine
Contatta:

Un commento breve.
Evitare che gli ICMP raggiungano gli host = bene.
Evitare che gli ICMP (anche PING) raggiungagno il router = male.
Non demoniziamo gli ICMP, sono un'infrastruttura essenziale della rete, quindi, non droppare echo all'ingresso del router, ma fa rispondere echo-reply esclusivamente al router.
IlConte
n00b
Messaggi: 23
Iscritto il: gio 30 dic , 2004 7:21 pm

si, e non dimenticare di droppare gli altri icmp che sono comodi per vari exploit!
marchack
Cisco fan
Messaggi: 49
Iscritto il: lun 06 set , 2004 11:44 pm

Raga grazie a tutti per aver risposto, vi posto la mia config in maniera tale che mi segnalate eventuali errori o "orrori" :D. Cmq con questa config ok il ping sembra rispondere con un "TTL scaduto durante il passaggio"... Solo che ahimè ,non so dove ho sbagliato, con alcuni prog p2p file-sharing tipo winmx non riesco ad agganciare connessioni in upload, non sarebbe poi così male ma vorrei capire solo il perchè di questa cosa, visto che il sopracitato prog usa le porte in tcp 6667 e 6669 e in udp la 6257 cosa che come vedrete nella conf del router ho matchato sia come acl che inserita nella nat.
Grazie a tutti e W questo Forum, siete gli unici che si sono degnati di rispondermi fra tutti i forum in cui ho postato....
Non hai i permessi necessari per visualizzare i file allegati in questo messaggio.
Avatar utente
TheIrish
Site Admin
Messaggi: 1840
Iscritto il: dom 14 mar , 2004 11:26 pm
Località: Udine
Contatta:

marchack, con tutto il rispetto... ma non ci ho capito niente.
Le acl che hai scritto sono... come dire... originali. Forse è meglio eliminarle e ripartire da zero.
Facciamo così, descrivi con precisione che servizi devono utilizzare i tuoi utenti e che servizi interni alla LAN devono essere accessibili dall'esterno...
perdonami, ma ho come il sospetto che ci sia + di qualcosa che non va...
marchack
Cisco fan
Messaggi: 49
Iscritto il: lun 06 set , 2004 11:44 pm

Figurati anzi non smetterò mai di ringraziarti/vi cmq la cosa, a questo punto strana, è che la il tutto funziona quasi alla perfezione e il quasi è riferito al problemino descritto nel precedente thread con winmx. Cmq i servizi che me servono sono tftp, navigazione internet (ovviamente :D )
programmi di p2p come winmx emule..., mail e vorrei che l'icmp non rispondesse dall'esterno come dicevi giustamente non dropparlo completamente ma filtrarlo affinchè dall'esterno risulti non raggiungibile o simile.... Grazie davvero per l'attenzione e scusami per l' "orrore" postato ma sto imparando pian pianino questo linguaggio CISCO e tra i progetti futuri spero presto di frequentare un bel corso magari di preparazione a un esamino CCNA;mah :roll: per ora rimaniamo con i piedi per terra che già questo FORUM ha fatto molto per me....
Grazie ancora.
PS: cmq io ho una LAN di 3 PC e una connessione ADSL pppoa ALice Mega
so già cmq che solo un pc potrà usufruire di ciascun servizio....
Avatar utente
TheIrish
Site Admin
Messaggi: 1840
Iscritto il: dom 14 mar , 2004 11:26 pm
Località: Udine
Contatta:

cmq la cosa, a questo punto strana, è che la il tutto funziona quasi alla perfezione
anche windows funziona... nella maggior parte dei casi. questo è il motivo per cui una cosa non deve solo funzionare al momento, ma deve essere fatta bene per funzionare sempre :)
questo a parte, procediamo con un po' di analisi. Ora, io sono sostenitore della creazione di due ACL che filtrano i dati che provengono da internet, una in logica positiva e una in logica negativa.
Procediamo dalla più semplice, quella che va applicata al dialer1 in:

Codice: Seleziona tutto

access-list 103 deny tcp any any eq telnet
access-list 103 deny tcp any any eq 22
access-list 103 deny tcp any any eq 21
[...]
access-list 103 permit ip any any
aggiungi al posto di [...] tutti i protocolli che, se maneggiati da mani maliziose provenienti da internet, potrebbero compromettere il funzionamento del router. Normalmente telnet, ssh e ftp (ammeno che tu non faccia girare un server di questi protocolli nella tua LAN).
Con questa ACL facciamo una prima scrematura dei dati in entrata.
Ora arriva la restrizione dura che applicheremo a ethernet0 out.
La suddividerò in varie fasi:

Codice: Seleziona tutto

access-list 102 permit tcp any 192.168.2.0 0.0.0.255 established
access-list 102 permit udp any eq domain 192.168.2.0 0.0.0.255
la prima istruzione dice: fai andare alla LAN 192.168.2.0 i dati che la LAN ha richiesto. Comodo no? quindi, vuoi leggere la posta? richiedi la posta con il tuo client e l'acl la lascerà passare, per poi richiudersi! Idem per i siti web ecc.
la seconda invece serve per accettare la risoluzione dei DNS.
Continuiamo con una premessa. eMule funziona al massimo delle sue potenzialità solo nel momento in cui abilitiamo solo un host ad utilizzarlo. Io ho preso per esempio 192.168.2.3:

Codice: Seleziona tutto

access-list 102 permit tcp any host 192.168.2.3 eq 4662
access-list 102 permit udp any host 192.168.2.3 eq 4762
WinMx... stesso discorso di eMule:

Codice: Seleziona tutto

access-list 102 permit tcp any host 192.168.2.3 eq 6699
access-list 102 permit udp any host 192.168.2.3 eq 6257
Kazaa e bittorrent invece non hanno bisogno di nulla.

Sinceramente... per fare quello che hai descritto, non serve altro... niente Dialer out, niente Ethernet out ecc.
non dimenticare di nattare quelle quattro porte:

Codice: Seleziona tutto

ip nat inside source list 101 interface Dialer1 overload
ip nat inside source static tcp 192.168.2.3 4662 interface Dialer1 4662
ip nat inside source static udp 192.168.2.3 4762 interface Dialer1 4762
ip nat inside source static tcp 192.168.2.3 6699 interface Dialer1 6699
ip nat inside source static udp 192.168.2.3 6257 interface Dialer1 6257
Ah dimenticavo, ricordatri di scrivere la seguente acl per il nat:

Codice: Seleziona tutto

access-list 101 permit ip 192.168.2.0 0.0.0.255 any
se non ho dimenticato qualcosa, dovremmo essere a posto!!
marchack
Cisco fan
Messaggi: 49
Iscritto il: lun 06 set , 2004 11:44 pm

anche windows funziona... nella maggior parte dei casi. questo è il motivo per cui una cosa non deve solo funzionare al momento, ma deve essere fatta bene per funzionare sempre :)
Come darti torto con questa sacrosanta affermazione.....

Grazie davvero per la fulminea risposta....
Scusami ancora una cosa, per quanto riguarda il discorso del ping con queste acl in teoria è tutto l'icmp dovrebbe essere disabilitato o sbaglio?
Io cmq vorrei solamente che io non sia pingabile dall'esterno ma che io continui xò a poter pingare l'esterno, non so se mi sono espresso bene ma ormai ho un casino in testa a forza di cercare dappertutto il buon vecchio google sta fondendo :D
Davvero grazie tanti Giga per tutta la pazienza che ci stai mettendo.........
Avatar utente
TheIrish
Site Admin
Messaggi: 1840
Iscritto il: dom 14 mar , 2004 11:26 pm
Località: Udine
Contatta:

No, a dire la verità mi ero dimenticato della questione ICMP :oops:
Francamente, non vedo il motivo di non rispondere ai ping. Come già detto più volte in questo forum, ICMP è uno strumento essenziale nelle reti moderne e, se configurato a dovere, non causa alcun problema di sorta.
Ma se questo è quello che vuoi...
Nella ACL 103, dove ci sono i puntini, basta aggiungere:

Codice: Seleziona tutto

access-list 103 permit icmp any any echo-reply
access-list 103 deny icmp any any
Mi raccomando, l'ordine delle istruzioni è ovviamente essenziale.
marchack
Cisco fan
Messaggi: 49
Iscritto il: lun 06 set , 2004 11:44 pm

Grazie TheIrish sei davvero un guru del cisco networking cmq grazie a te ho credo finalmente di aver capito questa "filosofia" delle ACL.... Un'ultima cosa soltanto tu sei/sei stato corsista CCNA? Hai qualche libro da consigliarmi intanto per prendere confidenza con questo tipo di esame, o sarebbe meglio iniziare con un ICND? Grazie tantissimo
marchack
Cisco fan
Messaggi: 49
Iscritto il: lun 06 set , 2004 11:44 pm

Scusami ancora una volta la questione del ping ancora non mi va adesso succede che si non vengo pingato dall'esterno però nemmeno io riesco a pingare l'esterno guardo il log della ACL 103 in sulla int d1

Codice: Seleziona tutto

40 permit icmp any any echo-reply (57 matches)
50 deny icmp any any (30 matches)
60 permit ip any any (2423 matches)
la cosa strana e che se io pingo da consolle quindi bypassando la eth il ping funge ma dalla lan no

Codice: Seleziona tutto

Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 195.210.91.83, timeout is 2 seconds:
!!!!!
Success rate is 100 percent (5/5), round-trip min/avg/max = 68/73/92 ms

Codice: Seleziona tutto

Protocol [ip]:
Target IP address: 195.210.91.83
Repeat count [5]:
Datagram size [100]:
Timeout in seconds [2]:
Extended commands [n]: y
Source address or interface: 192.168.2.1
Type of service [0]:
Set DF bit in IP header? [no]:
Validate reply data? [no]:
Data pattern [0xABCD]:
Loose, Strict, Record, Timestamp, Verbose[none]:
Sweep range of sizes [n]:
Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 195.210.91.83, timeout is 2 seconds:
Packet sent with a source address of 192.168.2.1
!!!!!
Success rate is 100 percent (5/5), round-trip min/avg/max = 64/69/72 ms
Oh cavolo come hai visto dal ping esteso pingo pure dall'int eth del router quindi sembrerebbe che la acl funga bene allora perchè non riesco a pingare dai pc andrà inserita anche nell eth0 un acl....???
Scusa ancora dello stress che ti procuro :wink:
Avatar utente
TheIrish
Site Admin
Messaggi: 1840
Iscritto il: dom 14 mar , 2004 11:26 pm
Località: Udine
Contatta:

whooops!
sapevo che mi sarei dimenticato qualcosa.
come puoi notare, l'acl assegnata a ethernet0 funziona in logica positiva, ovvero, dichiaro tutto quello che voglio far passare. ora, guarda la acl 102... cosa manca? il quiz di oggi. facci sapere la tua soluzione :)
se vuoi te la dico io, ma... vediamo di mettere in pratica le nuove nozioni apprese!
marchack
Cisco fan
Messaggi: 49
Iscritto il: lun 06 set , 2004 11:44 pm

Bingooooo.... :D :D :D
Credo sia proprio questa riga a mancare, visto che ora funge

Codice: Seleziona tutto

access-list 102 permit ip any any

infatti a livello di icmp fungeva bene e l'acl infatti droppava giustavamente la cosa che poi m'ha fatto venire un po alla soluzione è stato quando ho provato a fare un trace dal pc e si bloccava sull'indirizzo del router quindi era proprio a livello della eth0 che qualcosa veniva scartato perchè il router non sapeva cosa farsene di questo "pacchetto" sulla sua interfaccia interna....
Correggimi pure se il mio ragionamento non è esatto
MrCisco
Cisco pathologically enlightened user
Messaggi: 202
Iscritto il: mar 29 giu , 2004 12:12 pm

mmm... direi proprio di no... no no no...
l'istruzione che hai proposto tu significa "permetti tutto"!
Direi che non è proprio il caso.
l'irish voleva farti riflettere sul fatto che gli icmp "echo-reply" (la risposta al ping) passa l'interfaccia Dialer1, ma si ferma all'ethernet0.
Il trucco sta nel ribadire il permesso che abbiamo dato ad echo-reply, anche su ethernet0:

Codice: Seleziona tutto

access-list 102 permit icmp any any echo-reply
[/code]
Immagine
Rispondi