![登入成功後如何重置iptable的錯誤嘗試登入計數器?](https://rvso.com/image/623636/%E7%99%BB%E5%85%A5%E6%88%90%E5%8A%9F%E5%BE%8C%E5%A6%82%E4%BD%95%E9%87%8D%E7%BD%AEiptable%E7%9A%84%E9%8C%AF%E8%AA%A4%E5%98%97%E8%A9%A6%E7%99%BB%E5%85%A5%E8%A8%88%E6%95%B8%E5%99%A8%EF%BC%9F.png)
我添加了以下防火牆規則以防禦 ssh 攻擊。
iptables -N LOGNDROP
iptables -A LOGNDROP -j LOG --log-prefix "SSH attack! " --log-level 7
iptables -A LOGNDROP -j DROP
iptables -A INPUT -i eth0 -p tcp -m state --dport 22 --state NEW -m recent --set
iptables -A INPUT -i eth0 -p tcp -m state --dport 22 --state NEW -m recent --update --seconds 3600 --hitcount 4 -j LOGNDROP
嘗試登入成功後是否可以重置該計數器?儘管這個解決方案運作正常,但我也限制每小時只能成功登入 3 次!
答案1
是的,有點像。你可以使用一些東西喜歡failure2ban 處理日誌並從下列位置刪除 IP 位址/proc/net/xt_recent/DEFAULT
:
像這樣的(分鐘?)cronjob 將是一個很好的初步近似:
for ip in $(sed -ne 's/^.*sshd.*Accepted.*from \([^ ]*\).*$/\1/p' /var/log/auth.log | sort -u); do echo -$ip > /proc/net/xt_recent/DEFAULT; done