Naxsi - 使用Nginx设置黑名单和白名单



打开了这个问题:

https://github.com/nbs-system/naxsi/issues/486

但似乎在那里并不活跃。

我在我的项目中正在使用当前modsecurity来过滤掉坏的IP并允许好的IP:

像这样:

modsecurity_rules '
SecRuleEngine On
SecRule REMOTE_ADDR "@ipMatchFromFile /etc/modsecurity/whitelist.txt" id:1,phase:1,allow
SecRule REMOTE_ADDR "@ipMatchFromFile /etc/modsecurity/blacklist.txt" id:2,phase:1,deny,status:429,msg:'blacklist'

将此功能添加到 NAXSI 的最佳方法是什么?

我应该添加规则还是修改代码?当不可能时,您能否就其中之一、两者或没有提供一些提示(是否有任何性能影响或一般影响(

在NGINX设置中实现这一目标还有其他可能性吗?

尝试了这种方法:

############################
## Block rules: 1700-1800 ##
############################
MainRule "str:1.1.1.1" "msg:IP Blacklist" "mz:$HEADERS_VAR:X-Forwarded-For" "s:$BLACK:8" id:1701;
MainRule "str:2.2.2.2" "msg:IP Blacklist" "mz:$HEADERS_VAR:X-Forwarded-For" "s:$BLACK:8" id:1702;

其中 1.1.1.1和 2.2.2.2 将是我要阻止的 IP(来自黑名单( - 我将每天生成config/list

但是,我仍然不知道如何将某些IP列入白名单,以便它们永远不会被阻止(通过阻止规则,但也通过其他规则(。有什么想法吗?

正在考虑所有人的白名单规则:

MainRule wl:0 "mz:$HEADERS_VAR|X-Forwarded-For:xxx.xxx.xxx.xxx";

但这也不是一个有效的规则....

你会建议什么方法?

我认为为此目的您可以使用ngx_stream_access_module模块。

您可以创建两个列表并将它们包含在您的项目 nginx 配置文件中。 例如:

include /path/to/file/blacklist.conf
include /path/to/file/whitelist.conf

最新更新