如何限制特定接口上单位时间内的数据包数量(针对虚拟机)

如何限制特定接口上单位时间内的数据包数量(针对虚拟机)

我在服务器上使用 kvm 和 virtuozzo 虚拟化,每个服务器都有 10 个虚拟机。我必须限制来自我的虚拟机的 DDOS 攻击(即防止虚拟机进行 DDOS 攻击),我在网上搜索后发现我可以使用 iptables hashlimit 来限制数据包数量。我尝试在我的服务器上设置一些规则,但没有效果。

例如,对于具有 IP 10.1.3.29 的 vm1 正在进行 dodos 攻击,我应用了以下规则。

iptables -I FORWARD -o viifv1052 -s 10.1.3.29 -m hashlimit --hashlimit-name stopddos --hashlimit-mode srcip --hashlimit-above 5/sec --hashlimit-burst 2 --hashlimit-htable-expire 30000 -j DROP 

我也尝试用 -i :

iptables -I FORWARD -i viifv1052 -s 10.1.3.29 -m hashlimit --hashlimit-name ICMPTEST --hashlimit-mode srcip --hashlimit-above 5/sec --hashlimit-burst 2 --hashlimit-htable-expire 30000 -j DROP

然后我尝试了 ebtables,但没有效果:

ebtables -I FORWARD -o viifv1052 --ip-source 10.1.3.29 --protocol ipv4 --limit 5/sec-j ACCEPT
ebtables -I FORWARD -o viifv1052 --ip-source 10.1.3.29 --protocol ipv4 -j DROP

任何建议都会非常有用。

相关内容