
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 essas 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?
Responder1
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 ter sido recebido.
Responder2
Você pode obter ajuda neste módulo executando iptables -m recent --help
:
As principais opções relacionadas à sua pergunta são:
[!] --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 do lançamento. Portanto, se for o primeiro, 'expirará'. Os exemplos nopágina do autorpode ajudar também. Além disso, o seguinte parâmetro do módulo entra em ação se mais IPs vierem:
ip_list_tot=100; Número de endereços lembrados por tabela
Edit: Sinceramente, pensando mais nisso fico um pouco confuso com todos os cenários possíveis. Eu testaria muito isso criando diferentes endereços IP de origem com algo como scapy para 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 :-/