加入收藏 | 设为首页 | 会员中心 | 我要投稿 济南站长网 (https://www.0531zz.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 服务器 > 搭建环境 > Linux > 正文

linux – iptables中的源IP速率限制:hashlimit vs recent

发布时间:2021-03-16 19:46:41 所属栏目:Linux 来源:网络整理
导读:我想在iptables中对每个源IP执行速率限制.例如,将主机可以建立新SSH连接的速率限制为每分钟5次.据我所知,有两种方法可以做到这一点: 使用hashlimit模块 iptables -A INPUT -p tcp --dport 22 -m state --state NEW -m hashlimit --hashlimit-name SSH -

我想在iptables中对每个源IP执行速率限制.例如,将主机可以建立新SSH连接的速率限制为每分钟5次.据我所知,有两种方法可以做到这一点:

使用hashlimit模块

iptables -A INPUT -p tcp --dport 22 -m state --state NEW 
  -m hashlimit --hashlimit-name SSH --hashlimit-above 5/min 
  --hashlimit-mode srcip -j REJECT
iptables -A INPUT -p tcp --dport 22 -m state --state NEW -j ACCEPT

随着最近的模块

iptables -A INPUT -p tcp --dport 22 -m state --state NEW -m recent 
  --rcheck --seconds 60 --hitcount 5 --name SSH --rsource -j REJECT
iptables -A INPUT -p tcp -m tcp --dport 22 -m state --state NEW 
  -m recent --set --name SSH --rsource -j ACCEPT

我的问题:

>这两者的表现有什么不同?
>重视绩效,哪一个更好?
>使用这两个模块有明显的缺点吗?

解决方法

Is there any difference in how these two will behave?

不,你写的东西在功能上会做同样的事情.

With an emphasis on performance,which one is preferable?

可以说,最近有更好的性能,因为它维护一个表,但不使用散列桶.

Is there a significant downside to using both modules?

我不确定你为什么要同时使用它们.当您只需要两个模块时,您将会对性能产生影响.

(编辑:济南站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    热点阅读