GoEdge中有多个位置可以管理IP名单,分别有着不同的作用范围:
公共名单
- 可以设置为全局有效,这样所有只要开启了WAF的网站都会自动生效,可以在左侧 “网站列表”菜单 – “IP”名单中管理公共黑名单、公共白名单、公共灰名单WAF策略
中的IP名单 - 可以在WAF策略中设置IP黑名单和白名单,设置后对策略本身的规则和使用此策略的开启了WAF的网站有效WAF
设置中的名单 – 开启后只对网站网站有效,当然,前提仍然是当前网站开启了WAF设置黑名单
- 其中的IP将会被禁止访问白名单
- 其中的IP将会自动放行,优先级高于黑名单灰名单
- 其中的IP仅作为记录和观察使用,不影响黑名单和白名单的作用(GoEdge v1.3.9中加入)IP名单中的IP可以有以下几种类型:
单个IP
- 比如 1.2.3.4
IP段
- 比如 1.2.3.4-2.3.4.5
CIDR
- 比如 1.2.3.4/24
所有IP
- 这是一种特殊的IP类型,不需要填写任何具体的IP或IP段,代表所有的IP完整支持IPv4和IPv6两种。
如果你想在系统拦截IP时触发一系列自定义动作,可以在对应的集群 – “集群设置” – “WAF动作”中添加对应的动作。
/var/log/edge-node.log
),确保当前边缘节点和API节点连接没有异常/var/log/edge-node.log
),确保没有出现 IP_LIST_DB
相关错误,如果出现,请根据提示进行操作edge-node/data/ip_*
相关文件,然后重启节点进程(edge-node restart
),然后稍等片刻后,再观察访问日志,检查该IP是否仍能访问;如果这些文件不存在,可以单纯重启节点中 edge-node
进程进行测试;/var/log/edge-node.log
),确保当前边缘节点和API节点连接没有异常/var/log/edge-node.log
),确保没有出现 IP_LIST_DB
相关错误,如果出现,请根据提示进行操作edge-node/data/ip_*
相关文件,然后重启节点进程(edge-node restart
),然后稍等片刻后,再观察访问日志,检查该IP是否可以访问;如果这些文件不存在,可以单纯重启节点中 edge-node
进程进行测试;在管理系统添加黑名单后,系统并不会立即将此IP加入到边缘节点的nftables,而是等待此IP访问边缘节点时才会 短暂地 (一般为1个小时)将IP加入到nftables中。一是避免nftables中规则数量过多,导致系统性能严重下降;二是避免单个网站的黑名单影响别的网站的访问。同时,边缘节点仍然会遵循IP的有效期,拦截当前IP在有效期间的所有访问,nftables只是提升拦截效率的辅助作用。
如果你的边缘节点中没有安装nftables,那么就会默认使用 firewalld
拦截IP,如果IP数据量较大时,firewall-cmd
命令可能出现操作超时的情况,此时请安装 nftables,然后重启edge-node
进程(edge-node restart
)。
你可以在对应的集群 – “集群设置” – “WAF动作”中添加对应的动作,选择类型为“自定义HTTP API”或者“自定义脚本“。