Quanto tempo dura uma conexão bloqueada do Iptables? Existe uma maneira de definir o tempo limite?

2
iptables -A INPUT -m state --state NEW -m recent --set                  # If we receive more than 10 connections in 10 seconds block our friend.
iptables -A INPUT -m state --state NEW -m recent --update --seconds 5  --hitcount 15 -j Log-N-Drop

Eu tenho estas duas regras relevantes do iptables. Se mais de 15 conexões forem feitas em 5 segundos, ele registra a tentativa e a bloqueia. Por quanto tempo o iptables mantém o contador? Ele é atualizado se as conexões forem tentadas novamente?

    
por Joshua Enfield 07.06.2010 / 23:27

2 respostas

-1

Se mais de 15 conexões forem feitas em cinco segundos, suas conexões serão recusadas até cinco segundos após o último pacote ser recebido.

    
por 08.06.2010 / 01:09
3

Você pode obter ajuda sobre este módulo executando iptables -m recent --help :

A principal opção relacionada à sua pergunta é:

[!] --update                    Match if source address in list, also update last-seen time.

Então, meu entendimento é que com --update ele será atualizado, mas você precisaria dessa atualização antes da eliminação. Portanto, se for o primeiro, 'expirará'. Os exemplos na página do autor podem ajudar também. Além disso, o seguinte parâmetro do módulo é utilizado para mais IPs:

ip_list_tot=100 ; Number of addresses remembered per table

Editar: Honestamente, pensando nisso, estou um pouco confuso sobre todos os cenários possíveis. Eu testaria muito isso criando diferentes endereços IP de origem com algo como scapy for fping. O seguinte parâmetro do módulo também pode ajudar:

debug=0 ; Set to 1 to get lots of debugging info

Talvez alguém tenha uma resposta melhor que tenha experimentado as opções, desculpe: - /

    
por 08.06.2010 / 01:10