[GTER] monitorar quantidade PPS host/port

willian pires willian_pires at hotmail.com
Thu Aug 29 12:38:39 -03 2013




Bem então nesse caso vamos ter que fazer diferente.
Primeira coisa é instala o iptraf em um servidor de teste e coloca 2 usuáriosjogando basico, e veja qual a taxa de pps no iptraf -g 
Depois disso voce vai ter uma média, eu acredito que quanto maior o numero de jogadores maior o numero de pacotes enviados e recebido por todos, e issodeve subir por jogador.
Vou dar uma olhada aqui no iptables mas tenho certeza que ele consegue tratar pacotes por origem pera ai.
Att

> Date: Wed, 28 Aug 2013 21:22:43 -0300
> From: marcelo at mginformatica.com
> To: gter at eng.registro.br
> Subject: Re: [GTER] monitorar  quantidade PPS host/port
> 
> Ola Willian,  é UDP, é um servidor de jogo HL2
> e é um ataque sim, sao pequenos ataques dos originados de um adsl da GVT
> sempre da mesma regiao do pais.
> 
> 
> root at proxy:~# tcpdump udp and src  177.98.56.233
> 
> 21:30:47.347329 IP 177.98.56.dynamic.adsl.gvt.net.br.53999 > 
> proxy.xxxxxx.com.br.27028: UDP, length 0
> 21:30:47.347340 IP 177.98.56.dynamic.adsl.gvt.net.br.52314 > 
> proxy.xxxxxx.com.br.27028: UDP, length 0
> 21:30:47.347553 IP 177.98.56.dynamic.adsl.gvt.net.br.52314 > 
> proxy.xxxxxx.com.br.27028: UDP, length 18
> 21:30:47.347652 IP 177.98.56.dynamic.adsl.gvt.net.br.53999 > 
> proxy.xxxxxx.com.br.27028: UDP, length 18
> 21:30:47.348599 IP 177.98.56.dynamic.adsl.gvt.net.br.53999 > 
> proxy.xxxxxx.com.br.27028: UDP, length 0
> 21:30:47.348817 IP 177.98.56.dynamic.adsl.gvt.net.br.52314 > 
> proxy.xxxxxx.com.br.27028: UDP, length 0
> 21:30:47.348820 IP 177.98.56.dynamic.adsl.gvt.net.br.53999 > 
> proxy.xxxxxx.com.br.27028: UDP, length 18
> 21:30:47.348835 IP 177.98.56.dynamic.adsl.gvt.net.br.52314 > 
> proxy.xxxxxx.com.br.27028: UDP, length 18
> 21:30:47.348910 IP 177.98.56.dynamic.adsl.gvt.net.br.53999 > 
> proxy.xxxxxx.com.br.27028: UDP, length 0
> 21:30:47.349470 IP 177.98.56.dynamic.adsl.gvt.net.br.52314 > 
> proxy.xxxxxx.com.br.27028: UDP, length 18
> 21:30:47.349479 IP 177.98.56.dynamic.adsl.gvt.net.br.52314 > 
> proxy.xxxxxx.com.br.27028: UDP, length 0
> 21:30:47.349481 IP 177.98.56.dynamic.adsl.gvt.net.br.52314 > 
> proxy.xxxxxx.com.br.27028: UDP, length 0
> 21:30:47.349914 IP 177.98.56.dynamic.adsl.gvt.net.br.53999 > 
> proxy.xxxxxx.com.br.27028: UDP, length 18
> 21:30:47.349917 IP 177.98.56.dynamic.adsl.gvt.net.br.53999 > 
> proxy.xxxxxx.com.br.27028: UDP, length 0
> 21:30:47.350298 IP 177.98.56.dynamic.adsl.gvt.net.br.53999 > 
> proxy.xxxxxx.com.br.27028: UDP, length 18
> 21:30:47.350470 IP 177.98.56.dynamic.adsl.gvt.net.br.52314 > 
> proxy.xxxxxx.com.br.27028: UDP, length 18
> 21:30:47.350733 IP 177.98.56.dynamic.adsl.gvt.net.br.53999 > 
> proxy.xxxxxx.com.br.27028: UDP, length 0
> 21:30:47.351409 IP 177.98.56.dynamic.adsl.gvt.net.br.52314 > 
> proxy.xxxxxx.com.br.27028: UDP, length 0
> 21:30:47.351413 IP 177.98.56.dynamic.adsl.gvt.net.br.53999 > 
> proxy.xxxxxx.com.br.27028: UDP, length 18
> 21:30:47.351750 IP 177.98.56.dynamic.adsl.gvt.net.br.52314 > 
> proxy.xxxxxx.com.br.27028: UDP, length 18
> 21:30:47.351753 IP 177.98.56.dynamic.adsl.gvt.net.br.52314 > 
> proxy.xxxxxx.com.br.27028: UDP, length 0
> 21:30:47.352111 IP 177.98.56.dynamic.adsl.gvt.net.br.53999 > 
> proxy.xxxxxx.com.br.27028: UDP, length 18
> 21:30:47.352115 IP 177.98.56.dynamic.adsl.gvt.net.br.53999 > 
> proxy.xxxxxx.com.br.27028: UDP, length 0
> 21:30:47.352179 IP 177.98.56.dynamic.adsl.gvt.net.br.52314 > 
> proxy.xxxxxx.com.br.27028: UDP, length 18
> 21:30:47.352183 IP 177.98.56.dynamic.adsl.gvt.net.br.52314 > 
> proxy.xxxxxx.com.br.27028: UDP, length 18
> 21:30:47.352185 IP 177.98.56.dynamic.adsl.gvt.net.br.52314 > 
> proxy.xxxxxx.com.br.27028: UDP, length 0
> 21:30:47.352210 IP 177.98.56.dynamic.adsl.gvt.net.br.53999 > 
> proxy.xxxxxx.com.br.27028: UDP, length 0
> 21:30:47.352411 IP 177.98.56.dynamic.adsl.gvt.net.br.53999 > 
> proxy.xxxxxx.com.br.27028: UDP, length 18
> 21:30:47.352466 IP 177.98.56.dynamic.adsl.gvt.net.br.53999 > 
> proxy.xxxxxx.com.br.27028: UDP, length 0
> 
> Em 2013-08-27 22:51, willian pires escreveu:
> > Não, não e aplica, neste caso você tem que aplicar uma logica por host
> > de origem.
> > Porem temos uma questão:Você pode limitar o numero de conexões por ip
> > de origem, o que resolve o seu problema em si, ou aindamapear novas
> > conexões e adicionar elas em uma tabela e a partir dela limitar
> > pacotes por cliente.
> > Porem devo avisar:Exceto se o serviço que você esta rodando ser alguma
> > coisa da linha UDP, Voip, FTP ou DNS você vai comprometera
> > funcionalidade fazendo controle de PPS, mesmo aplicações UDP são
> > sensíveis a controle de pacotes.
> > Exceto ser você tiver 100^2%  de certeza que é um ataque, perca seu
> > tempo com isso senão sinto em dizer que vaiter dor de cabeça de sobra.
> > Recomendo que pegue 1 endereço ip remoto que voce tenha acesso facil
> > por fora da sua rede e faça o controle dele com os comandos que eu
> > havia enviado anteriormente.
> > Outro ponto  é que 1 mesmo host pode gerar múltiplas requisições uma
> > vez que hoje em dia diversas redes de empresar ou mesmoresidencias
> > possuem nat, aqui em casa mesmo temos 8 computadores então é normal
> > fazer 200,300 pps para o google ou youtube.
> > Portanto antes de limitar melhor passar mais detalhes.
> > Att
> > 
> > 
> >> Date: Tue, 27 Aug 2013 13:22:03 -0300
> >> From: marcelo at mginformatica.com
> >> To: gter at eng.registro.br
> >> Subject: Re: [GTER] monitorar  quantidade PPS host/port
> >> 
> >> Ola Willian.
> >> 
> >> rodo uma aplicacao nesta porta.
> >> e volta e meia tenho pequenos ataques de negacao de servico.
> >> pelo torch do routerOS observei que as conexoes normais na minha
> >> aplicacao
> >> chegam no maximo a 60 PPS, quer bloquear qualquer coisa que passar
> >> disso..
> >> 
> >> estas regras que vc me passou, contabiliza o total de pacotes
> >> que chega na porta da minha aplicacao ou ela faz por ip de origem  ???
> >> 
> >> intaum supondo que eu nao sei que é o CLIENTE01 nem quem é o CLIENTE02
> >> esta mesma regra se aplica ?
> >> 
> >> ABracosss
> >> 
> >> 
> >> Em 2013-08-26 23:53, willian pires escreveu:
> >> > Vamos lá começando bem simples e deixando mais complexo.
> >> > iptables -N CLIENTE01 iptables -A CLIENTE01 -m limit --limit 100/s -j
> >> > RETURNiptables -A CLIENTE01 -j DROP
> >> > iptables -N CLIENTE02iptables -A CLIENTE02 -m limit --limit 300/s -j
> >> > RETURNiptables -A CLIENTE02 -j DROP
> >> >
> >> >
> >> > #-- CLIENTE PASSANDO PELO FILTRO INDO DE UMA INTERFACE A OUTRAiptables
> >> > -A FORWARD  -i eth1 -o eth0 -s 192.168.0.1/32 -j CLIENTE01iptables -A
> >> > FORWARD  -i eth1 -o eth0 -s 192.168.99.2/32 -j CLIENTE01
> >> >
> >> > E por ai vai !
> >> > Testando de forma bem simples no seu local host
> >> > iptables -A INPUT -p icmp -m limit --limit 10/s -j RETURN
> >> > iptables -A INPUT -p icmp -j DROP
> >> >
> >> >
> >> > ping -c 10 127.0.0.1
> >> > pinga normal
> >> > root at desktop01:~# ping -c 10 127.0.0.1PING 127.0.0.1 (127.0.0.1)
> >> > 56(84) bytes of data.64 bytes from 127.0.0.1: icmp_seq=1 ttl=64
> >> > time=0.023 ms64 bytes from 127.0.0.1: icmp_seq=2 ttl=64 time=0.024
> >> > ms64 bytes from 127.0.0.1: icmp_seq=3 ttl=64 time=0.025 ms64 bytes
> >> > from 127.0.0.1: icmp_seq=4 ttl=64 time=0.026 ms64 bytes from
> >> > 127.0.0.1: icmp_seq=5 ttl=64 time=0.025 ms64 bytes from 127.0.0.1:
> >> > icmp_seq=6 ttl=64 time=0.024 ms64 bytes from 127.0.0.1: icmp_seq=7
> >> > ttl=64 time=0.026 ms64 bytes from 127.0.0.1: icmp_seq=8 ttl=64
> >> > time=0.025 ms64 bytes from 127.0.0.1: icmp_seq=9 ttl=64 time=0.025
> >> > ms64 bytes from 127.0.0.1: icmp_seq=10 ttl=64 time=0.030 ms
> >> > --- 127.0.0.1 ping statistics ---10 packets transmitted, 10 received,
> >> > 0% packet loss, time 9000msrtt min/avg/max/mdev =
> >> > 0.023/0.025/0.030/0.004 msroot at desktop01:~#
> >> >
> >> >
> >> > agora
> >> > ping -f -c 100 127.0.0.1
> >> > vai pinga 2 pacotes e perder o resto
> >> > root at desktop01:~# ping -f -c 10 127.0.0.1PING 127.0.0.1 (127.0.0.1)
> >> > 56(84) bytes of data.........--- 127.0.0.1 ping statistics ---10
> >> > packets transmitted, 2 received, 80% packet loss, time 100msrtt
> >> > min/avg/max/mdev = 0.006/0.014/0.023/0.009 ms, ipg/ewma 11.126/0.020
> >> > ms
> >> > Se precisar de ajuda posta ai !
> >> >
> >> > Abraço.
> >> >
> >> >
> >> >> Date: Mon, 26 Aug 2013 14:09:16 -0300
> >> >> From: marcelo at mginformatica.com
> >> >> To: gter at eng.registro.br
> >> >> Subject: Re: [GTER] monitorar  quantidade PPS host/port
> >> >>
> >> >> isso rate-limit de pacotes, mas tem que funcionar para um ip/port
> >> >> especifico e bloquear o que nao satisfaca uma condicao...
> >> >>
> >> >> Em 2013-08-26 08:10, willian pires escreveu:
> >> >> > Posso te ajudar o que voce precisa é um "rate limit" de pacotes ?
> >> >> > Att
> >> >> >
> >> >> >> Date: Sat, 24 Aug 2013 11:38:31 -0300
> >> >> >> From: marcelo at mginformatica.com
> >> >> >> To: gter at eng.registro.br
> >> >> >> Subject: [GTER] monitorar  quantidade PPS host/port
> >> >> >>
> >> >> >> Ola....
> >> >> >>
> >> >> >> Preciso monitorar/bloquear em tempo real  a quantidade de PPS para um
> >> >> >> ip / port ( linux )
> >> >> >>
> >> >> >> estou pesquisando no google mas acho que nao estou fazendo a pergunta
> >> >> >> certa..
> >> >> >>
> >> >> >> Alguem tem alguma ideia...
> >> >> >> --
> >> >> >> gter list    https://eng.registro.br/mailman/listinfo/gter
> >> >> >
> >> >> > --
> >> >> > gter list    https://eng.registro.br/mailman/listinfo/gter
> >> >> --
> >> >> gter list    https://eng.registro.br/mailman/listinfo/gter
> >> >
> >> > --
> >> > gter list    https://eng.registro.br/mailman/listinfo/gter
> >> --
> >> gter list    https://eng.registro.br/mailman/listinfo/gter
> >  		 	   		
> > --
> > gter list    https://eng.registro.br/mailman/listinfo/gter
> --
> gter list    https://eng.registro.br/mailman/listinfo/gter

 		 	   		  


More information about the gter mailing list