iptables 'recent' 模块的联机帮助页解释了该模块本身接受参数。如何设置这些参数?我想它们会被设置在加载模块的地方。我不知道那是哪里。
有没有人有任何想法?
如果手动加载模块,只需将其添加到 modprobe 命令行:
modprobe ipt_recent param1=val1 param2=val2
Run Code Online (Sandbox Code Playgroud)
否则,如果它是自动加载的,您可以在 中创建一个文件/etc/modprobe.d
,例如/etc/modprobe.d/ipt_recent
,其内容为:
options ipt_recent param1=val1 param2=val2
Run Code Online (Sandbox Code Playgroud)
这将与上面的 modprobe 行做同样的事情。
警告:了解更改此设置会对机器的内存使用产生影响,因为这些详细信息存储在内存中,而 iptables 需要更多资源来处理存储大量数据。
设置 xt_recent 配置文件
创建文件 /etc/modprobe.d/xt_recent.conf 并包含如下一行:
options xt_recent ip_list_tot=50 ip_pkt_list_tot=150
不要忘记添加一些关于你正在做的事情的评论。未来你会感谢你。
准备重新初始化 xt_recent
在我们删除当前使用最新模块的防火墙中的任何规则之前,或者干脆禁用防火墙。您可能希望在执行此操作之前保存您的规则,sudo iptables-save > somefile.txt
或者sudo service iptables save
如果您的发行版支持该规则。
根据您的情况选择这两个之一进行清理。此时您也可以简单地重新启动计算机并跳到添加规则。
关闭iptables
sudo service iptables stop
删除特定规则:
iptables -L --line-numbers
列出的规则和查找“最近”的规则。iptables -D INPUT #
其中 # 是删除规则的行号。重新初始化 xt_recent
使用 删除模块sudo modprobe -r xt_recent
。用 将其添加回来sudo modprobe xt_recent
。
检查以确保您的参数已应用于sudo cat /sys/module/xt_recent/parameters/ip_pkt_list_tot
.
添加您无法添加的规则
如果您停止 iptablessudo service iptables start
以将其恢复。
将您的规则重新添加到您想要的更高值中。
奖金:
sudo watch 'iptables -nvL'
将允许您观看符合 xt_recent 规则的内容。