Filtragem ICMP - Colocando limites (Mikrotik)
por
em 28-10-2009 às 10:45 (25549 Visualizações)
Alguém já imaginou o trafego ICMP que o UOL tem ? Todo mundo usa um "ping www.uol.com.br" como referencia !!
Montei algumas regras para permitir que o servidor aceite pings, porém controlados !! A idéia é:
- Aceitar somente pings que o pacote seja menor ou igual a 1500 bytes
- Aceitar 1 pacote icmp-echo por segundo
- o que não combinar com as 2 regras acima, é filtrado...
então montei as seguintes regras:
- a primeira regra, filtra os pacotes que são maiores que 1500 bytes.Código :/ ip firewall filter \ add action=reject chain=input comment="" disabled=no icmp-options=8:0-255 packet-size=1529-65535 protocol=icmp reject-with=icmp-admin-prohibited add action=accept chain=input comment="" disabled=no icmp-options=8:0-255 limit=1,5 protocol=icmp add action=reject chain=input comment="" disabled=no icmp-options=8:0-255 protocol=icmp reject-with=icmp-admin-prohibited
- a segunda regra, permite 1 pacote por segundo, sendo um burst de 5 ou seja, se alguem disparar apenas 5 pacotes, estes vão ser aceitos, passando de 5 pacotes por segundo ele ja limita a 1 por segundo.
- a terceira regra descarta todo echo-request porque passou das limitações impostas.
vejam os exemplos:
ping NORMAL, 1 pacote de 56 bytes por segundo:
Pacotes de 1500 bytes, 1 por segundo:Código :$ ping 189.000.000.000 PING 189.000.000.000 (189.000.000.000) 56(84) bytes of data. 64 bytes from 189.000.000.000: icmp_seq=0 ttl=58 time=189 ms 64 bytes from 189.000.000.000: icmp_seq=1 ttl=58 time=201 ms 64 bytes from 189.000.000.000: icmp_seq=2 ttl=58 time=189 ms 64 bytes from 189.000.000.000: icmp_seq=3 ttl=58 time=188 ms 64 bytes from 189.000.000.000: icmp_seq=4 ttl=58 time=190 ms 64 bytes from 189.000.000.000: icmp_seq=5 ttl=58 time=188 ms 64 bytes from 189.000.000.000: icmp_seq=6 ttl=58 time=189 ms 64 bytes from 189.000.000.000: icmp_seq=7 ttl=58 time=189 ms 64 bytes from 189.000.000.000: icmp_seq=8 ttl=58 time=189 ms 64 bytes from 189.000.000.000: icmp_seq=9 ttl=58 time=192 ms
Ping 56 bytes, 2 pacotes por segundo:Código :$ ping 189.000.000.000 -s 1500 PING 189.000.000.000 (189.000.000.000) 1500(1528) bytes of data. 1508 bytes from 189.000.000.000: icmp_seq=0 ttl=58 time=195 ms 1508 bytes from 189.000.000.000: icmp_seq=1 ttl=58 time=192 ms 1508 bytes from 189.000.000.000: icmp_seq=2 ttl=58 time=192 ms 1508 bytes from 189.000.000.000: icmp_seq=3 ttl=58 time=192 ms 1508 bytes from 189.000.000.000: icmp_seq=4 ttl=58 time=193 ms 1508 bytes from 189.000.000.000: icmp_seq=5 ttl=58 time=192 ms 1508 bytes from 189.000.000.000: icmp_seq=6 ttl=58 time=192 ms 1508 bytes from 189.000.000.000: icmp_seq=7 ttl=58 time=192 ms 1508 bytes from 189.000.000.000: icmp_seq=8 ttl=58 time=193 ms 1508 bytes from 189.000.000.000: icmp_seq=9 ttl=58 time=194 ms
Ping com pacotes de 1501 bytes, 1 por segundoCódigo :$ ping 189.000.000.000 -i 0.5 PING 189.000.000.000 (189.000.000.000) 56(84) bytes of data. 64 bytes from 189.000.000.000: icmp_seq=0 ttl=58 time=198 ms 64 bytes from 189.000.000.000: icmp_seq=1 ttl=58 time=192 ms 64 bytes from 189.000.000.000: icmp_seq=2 ttl=58 time=189 ms 64 bytes from 189.000.000.000: icmp_seq=3 ttl=58 time=195 ms 64 bytes from 189.000.000.000: icmp_seq=4 ttl=58 time=188 ms 64 bytes from 189.000.000.000: icmp_seq=5 ttl=58 time=189 ms 64 bytes from 189.000.000.000: icmp_seq=6 ttl=58 time=191 ms 64 bytes from 189.000.000.000: icmp_seq=7 ttl=58 time=189 ms 64 bytes from 189.000.000.000: icmp_seq=8 ttl=58 time=190 ms 64 bytes from 189.000.000.000: icmp_seq=9 ttl=58 time=191 ms 64 bytes from 189.000.000.000: icmp_seq=10 ttl=58 time=190 ms [B][COLOR=Red]From 189.000.000.000 icmp_seq=11 Packet filtered[/COLOR][/B] 64 bytes from 189.000.000.000: icmp_seq=12 ttl=58 time=200 ms [B][COLOR=Red]From 189.000.000.000 icmp_seq=13 Packet filtered[/COLOR][/B] 64 bytes from 189.000.000.000: icmp_seq=14 ttl=58 time=187 ms [COLOR=Red][B]From 189.000.000.000 icmp_seq=15 Packet filtered[/B][/COLOR] 64 bytes from 189.000.000.000: icmp_seq=16 ttl=58 time=189 ms [B][COLOR=Red]From 189.000.000.000 icmp_seq=17 Packet filtered[/COLOR][/B] 64 bytes from 189.000.000.000: icmp_seq=18 ttl=58 time=200 ms [B][COLOR=Red]From 189.000.000.000 icmp_seq=19 Packet filtered[/COLOR][/B] 64 bytes from 189.000.000.000: icmp_seq=20 ttl=58 time=189 ms [COLOR=Red][B]From 189.000.000.000 icmp_seq=21 Packet filtered[/B][/COLOR] 64 bytes from 189.000.000.000: icmp_seq=22 ttl=58 time=192 ms [COLOR=Red][B]From 189.000.000.000 icmp_seq=23 Packet filtered[/B][/COLOR] 64 bytes from 189.000.000.000: icmp_seq=24 ttl=58 time=188 ms [COLOR=Red][B]From 189.000.000.000 icmp_seq=25 Packet filtered[/B][/COLOR] 64 bytes from 189.000.000.000: icmp_seq=26 ttl=58 time=189 ms [COLOR=Red][B]From 189.000.000.000 icmp_seq=27 Packet filtered[/B][/COLOR] 64 bytes from 189.000.000.000: icmp_seq=28 ttl=58 time=188 ms [COLOR=Red][B]From 189.000.000.000 icmp_seq=29 Packet filtered[/B][/COLOR] 64 bytes from 189.000.000.000: icmp_seq=30 ttl=58 time=189 ms [COLOR=Red][B]From 189.000.000.000 icmp_seq=31 Packet filtered[/B][/COLOR]
Ping com pacotes de 65507 bytes, 1 por segundoCódigo :$ ping 189.000.000.000 -s 1501 PING 189.000.000.000 (189.000.000.000) 1501(1529) bytes of data. [COLOR=Red]From 189.000.000.000 icmp_seq=0 Packet filtered From 189.000.000.000 icmp_seq=1 Packet filtered From 189.000.000.000 icmp_seq=2 Packet filtered From 189.000.000.000 icmp_seq=3 Packet filtered From 189.000.000.000 icmp_seq=4 Packet filtered From 189.000.000.000 icmp_seq=5 Packet filtered From 189.000.000.000 icmp_seq=6 Packet filtered From 189.000.000.000 icmp_seq=7 Packet filtered From 189.000.000.000 icmp_seq=8 Packet filtered From 189.000.000.000 icmp_seq=9 Packet filtered [/COLOR]
Ping de 65507 bytes, 5 por segundo:Código :$ ping 189.000.000.000 -s 65507 PING 189.000.000.000 (189.000.000.000) 65507(65535) bytes of data. [COLOR=Red]From 189.000.000.000 icmp_seq=0 Packet filtered From 189.000.000.000 icmp_seq=1 Packet filtered From 189.000.000.000 icmp_seq=2 Packet filtered From 189.000.000.000 icmp_seq=3 Packet filtered From 189.000.000.000 icmp_seq=4 Packet filtered From 189.000.000.000 icmp_seq=5 Packet filtered From 189.000.000.000 icmp_seq=6 Packet filtered From 189.000.000.000 icmp_seq=7 Packet filtered From 189.000.000.000 icmp_seq=8 Packet filtered From 189.000.000.000 icmp_seq=9 Packet filtered [/COLOR]
Grande abraço !!!Código :$ ping 189.000.000.000 -s 65507 -i 0.2 PING 189.000.000.000 (189.000.000.000) 65507(65535) bytes of data. [COLOR=Red]From 189.000.000.000 icmp_seq=0 Packet filtered From 189.000.000.000 icmp_seq=1 Packet filtered From 189.000.000.000 icmp_seq=2 Packet filtered From 189.000.000.000 icmp_seq=3 Packet filtered From 189.000.000.000 icmp_seq=4 Packet filtered From 189.000.000.000 icmp_seq=5 Packet filtered From 189.000.000.000 icmp_seq=6 Packet filtered From 189.000.000.000 icmp_seq=7 Packet filtered From 189.000.000.000 icmp_seq=8 Packet filtered From 189.000.000.000 icmp_seq=9 Packet filtered[/COLOR][COLOR=Red] [/COLOR]
Comentários
+ Enviar Comentário