全球主机交流论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

IP归属甄别会员请立即修改密码
查看: 13846|回复: 44
打印 上一主题 下一主题

[nginx] nginx网卡驱动cc防火墙更新至3.0版本,新增防御慢速Web攻击等

  [复制链接]
跳转到指定楼层
1#
发表于 2023-6-11 07:34:30 | 只看该作者 回帖奖励 |正序浏览 |阅读模式
本帖最后由 C大屌 于 2023-6-11 08:15 编辑

继续接上次帖子https://hostloc-workers.ikyomon.com/thread-1167500-1-1.html

项目地址是https://github.com/dafeiyun/dafeiyun_nginx_firewall

nginx网卡驱动防火墙可以实现CC攻击来多少封多少 不消耗任何服务器宽带和CPU资源,达到无视任何CC攻击效果,nginx网卡驱动防火墙还可以以硬件模式运行(需要硬件网卡型号支持) 直接从硬件网卡中丢弃数据包和流量 效率非常高。

与传统的nginx waf不同,传统的nginx waf防火墙遇到大cc攻击直接服务器cpu和宽带爆炸,我们的nginx驱动防火墙有cc攻击吞噬效果 可以吞噬cc攻击 让cc攻击带来的cpu和宽带消耗变成0

这次新增了许多意想不到的功能如下:

3.0版本更新如下

1,新增了Linux网卡驱动防火墙可以直接从网卡接口处拉黑IP丢弃流量,让cc攻击带来的宽带和cpu消耗变成0 ,给系统带来0损耗不消耗任何宽带和CPU性能,网卡驱动级引擎防火墙效率远超iptables等Linux系统防火墙,可以在流量还没有到达内核之前直接用驱动在网卡里就可以处理数据包流量 单核CPU每秒可以处理超过1000万个数据包。

2,魔改了nginx核心源代码,添加了可以防御慢速web端口攻击,防御ssl握手攻击,防御异型web包攻击,防御400异型包攻击等功能

3,新增自动开启关闭CC防御 可以配置网站502出现的次数或者网站每秒超过多少次访问自动开启CC防御JS验证多少分钟 然后自动关闭CC防御JS验证循环

实测物理服务器E3-1230V2 100M宽带可以实现无视CC效果!

支持http和https防御 可以自动解密https ssl证书防御。


Telegram群: @dfy888  有什么问题都可以来群里面交流

推荐
发表于 2023-6-12 16:32:08 | 只看该作者
你的那些不是全部开源的呢?
推荐
发表于 2023-6-12 16:25:06 | 只看该作者
C大屌 发表于 2023-6-12 16:14
嗯,你说的是对的  那里是我看错了。

我说话也有点很急,你别太在意

做出一个有利于公众的东西就是好事,无论项目是大是小,都是贡献。开源项目本身就是在无数人的螺丝钉堆里,每个人都去加一份自己的零件,最后变成一个巴黎铁塔。

不是每个人都懂dd cc waf kernel iptables这些原理,你的项目把这些都整合起来做成一键形式,易于他们使用。

我提点建议,我个人的看法:
1、内核空间你已经写过了,里面几乎没有方便的写法,这会极大的制约你的发展空间,即使可以用很复杂的写法去实现功能,也会极大的增加你的维护成本,在不需要性能的地方,要去做“方便和性能”之间的均衡。例如编程语言有多种多样,有些低效但是很方便,不会是高效的c一统江山。
2、看看主流的waf是怎么设计的,站在巨人的肩膀上,一览众山小。
推荐
发表于 2023-6-12 16:08:32 | 只看该作者
C大屌 发表于 2023-6-12 16:04
稍微有宽带常识的都懂。 100M宽带每秒12.5/M


人家那是10million pkt/s,亲
我来帮你算算好吗
以太网最小帧64字节,10000000*64字节=640000000字节
640000000 / 1024 = 625000 Kb
625000 / 1024 = 610.3515625 Mb
610Mb每秒的流量,换算成MBit就是4880MBit/s
将近5G的流量,多学学吧
推荐
发表于 2023-6-12 16:05:06 | 只看该作者
C大屌 发表于 2023-6-12 15:54
你连协议层都没有搞懂,1000万数据包约等于100M宽带 很多吗

第七层攻击 无论攻击大小多少只要把包给丢弃 ...


你这句话就有点自相矛盾了,你一直在鼓吹你的防御能每秒丢弃多少多少包,高效的丢弃那些攻击数据包,但是你说的cc攻击本身就不吃流量,不吃流量的东西压根不需要动用内核层的函数去丢弃,随便一个防火墙策略就能丢个干净。你讲的那些高效丢弃都是面对ddos这类,但是无论你的内核丢弃多高效,流量到达你的1G电口网卡网卡就已经报废了,根本用不着进内核,纸上谈兵。
推荐
发表于 2023-6-12 15:44:58 | 只看该作者
本帖最后由 diocat 于 2023-6-12 15:48 编辑
C大屌 发表于 2023-6-12 15:35
CC攻击和第七层攻击的话不会,都是有科学依据的。
可以参考cloudflare这篇文章https://blog.cloudflare.c ...


人家cf那是几十G上百G的光口,你这100m下行 1G电口 不是来搞笑的吗
推荐
发表于 2023-6-12 10:22:50 | 只看该作者
1000万确定网卡带宽没被打爆?
45#
 楼主| 发表于 2023-6-12 20:28:38 | 只看该作者
本帖最后由 C大屌 于 2023-6-12 20:47 编辑
路易的路 发表于 2023-6-12 20:16
只是防CC,其实性能瓶颈不在封锁。七层的包数量再多其实也没多少,iptable完全足够,真正在消耗资源的部 ...


一直都是nginx检测cc攻击 然后调用xdp驱动防火墙拉黑ip丢弃流量,事实证明Netfilter和iptable我们都试过性能远不如xdp驱动拉黑ip丢弃流量  可以谷歌或者百度 都是有事实证明的。

就如docker的端口一样 用Netfilter和iptable是屏蔽不掉的,因为docker位于Netfilter和iptable能够处理的网络层之前。但是xdp驱动防火墙是可以做到的 xdp是位于网卡接口处 任何流量都需要先经过xdp驱动筛选在下放至底层网络层去,所以xdp效率更高。
44#
发表于 2023-6-12 20:16:56 | 只看该作者
本帖最后由 路易的路 于 2023-6-12 20:18 编辑
C大屌 发表于 2023-6-12 16:42
其实性能瓶颈在于内核,不是处理不行。有内核瓶颈,无论怎么处理都不行。 像dpdk内核旁路技术因为绕过了 ...


只是防CC,其实性能瓶颈不在封锁。七层的包数量再多其实也没多少,iptable完全足够,真正在消耗资源的部分其实是在应用层的检测和识别,而不是四层阻挡。
至于你说的XDP,那东西实际上是为了阻挡layer3/4 ,到了L7其实意义不大
43#
 楼主| 发表于 2023-6-12 19:57:46 | 只看该作者
920c 发表于 2023-6-12 16:32
你的那些不是全部开源的呢?

目前不打算开源
42#
 楼主| 发表于 2023-6-12 16:42:30 | 只看该作者
本帖最后由 C大屌 于 2023-6-12 16:43 编辑
diocat 发表于 2023-6-12 16:37
100m的带宽,单核处理是没有问题的,想想看还有哪里在吃性能

比如,最常见的conntrack


其实性能瓶颈在于内核,不是处理不行。有内核瓶颈,无论怎么处理都不行。 像dpdk内核旁路技术因为绕过了内核直接跳到用户层收包发包就没有这个瓶颈。 因为dpdk需要硬件网卡的支持,所以我们选择了xdp/ebpf驱动过滤数据包 他和dpdk类似 且无需硬件支持。
41#
发表于 2023-6-12 16:37:28 | 只看该作者
C大屌 发表于 2023-6-12 16:28
CC攻击是会消耗宽带的,光靠nginx js验证硬抗cc 如果cc量非常大会导致cpu 100% ,所以这时候就需要nginx ...

100m的带宽,单核处理是没有问题的,想想看还有哪里在吃性能

比如,最常见的conntrack

iptables -t raw -A PREROUTING -p tcp --dport 80 -m set --match-set blacklist src -j DROP
39#
发表于 2023-6-12 16:31:19 | 只看该作者
不错 好人一生平安
38#
 楼主| 发表于 2023-6-12 16:28:55 | 只看该作者
本帖最后由 C大屌 于 2023-6-12 16:33 编辑
diocat 发表于 2023-6-12 16:05
你这句话就有点自相矛盾了,你一直在鼓吹你的防御能每秒丢弃多少多少包,高效的丢弃那些攻击数据包,但是 ...


CC攻击是会消耗宽带的,光靠nginx js验证硬抗cc 如果cc量非常大会导致cpu 100% ,所以这时候就需要nginx识别发起cc攻击的ip 然后调用系统防火墙屏蔽处理。 Netfilter和iptable我们都试过 CC量非常大情况下会出问题,所以我们使用驱动拉黑丢弃ip流量。 就是这么简单

因为Netfilter和iptable拉黑ip处理数据包的位置比较靠后,cc量非常大 攻击ip非常多 Netfilter和iptable处理会消耗大量cpu 或者崩溃掉给内核造成巨大压力
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|小黑屋|全球主机交流论坛

GMT+8, 2025-12-26 07:29 , Processed in 0.092276 second(s), 10 queries , Gzip On, MemCache On.

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表