发布于 21 天前
发布于 21 天前
鱼
更新于 21 天前
0
0
通过一段时间的观察,发现 应用日志 会写到非该应用的日志文件中,不确认是否是mgt控制台编辑应用配置后出现的现象,较难描述。
简单来说,就是 a.domain.com 的 tengine 日志文件中,出现了不应该出现的日志。如下,是我们的监控系统的 UA 和 REFER,但 IF_backend_28 这个站点并没有接入监控,不知为何会出现该日志,且请求时间和响应状态比较诡异。
雷池WAF版本: 8.9.1(从8.8.0测试开始均遇到该情况)
截图如下(主备节点均出现,下述为备节点截图):
雷池 - 六蛙
更新于 20 天前
0
0
看状态码是 404,感觉应该是请求的 Host 不匹配,比如雷池的应用是a.com:8080
,请求的时候用的是ip:8080
,这时候就会出现。不过也有可能是源站返回的 404
鱼
更新于 20 天前
不是这样的,这个UA和REFER是我们监控系统的检测程序发出的,只针对某些个特定的站点应用进行检测,根本就没对如图上的这个站点进行检测,所以这个"防护应用"的"站点日志"是不可能有这个UA和REFER的日志的。
下面附上今天的日志,也是备节点的,我们压根没对这么多的站点进行监控,而且我们针对监控的应用进行了自定义nginx配置,匹配这个UA的日志,全部 access_log off; 了,下面备节点的日志记录就像"乱写"一样。
备节点日志截图:
雷池WAF-自定义nginx配置
鱼
更新于 20 天前
我个人也觉得不可思议,但确实存在这么个情况,采购之前,部署单节点8.8.0版本进行测试,也存在该问题。一直觉得是与我们配置有关,但目前已经把能配置的都配上了,日志仍然在"乱写"。
另外,我们有一个default-server应用,是用来接受没有匹配任何域名的请求的,理论上来说,上面那些日志,即使是因为域名不匹配,也不可能写到那么多文件里面。
雷池 - 六蛙
更新于 20 天前
可以尝试手动修改一下雷池的日志格式,输出更多的信息看看
雷池 - 小小
更新于 20 天前
默认站点把 443 也加上看看
鱼
更新于 20 天前
请问修改哪里?需要添加哪些内容?
我尝试修改 /data/safeline/resources/nginx/conf.d/_safeline_sites.conf ,添加 $host 变量,但稍后就被恢复回去了。
---
默认站点添加443,需要勾选SSL吗?我们先添加上去先试试。
另外,默认站点在 未添加443 的时候,我们在 防护应用 -> 高级设置 -> 勾选了"应用不存在时返回内置证书", 这个会有影响吗?
雷池 - 六蛙
更新于 20 天前
改对应站点配置的 safeline_<应用ID> 的日志格式就好了,改完测试过程中别动应用的配置,要不然会被覆盖。改完之后执行一下docker exec safeline-tengine nginx -s reload
因为你的日志是 HTTP/2.0,看着应该是个 https 的应用,你需要保持 default-server 和应用的端口配置相同,Host 不匹配的流量才会到 default-server
鱼
更新于 20 天前
是 sites-enabled/IF_backend_xx 吗? 如果是的话,这有过百个配置,还有主备,不能随意改,待会乱套了。safeline_<应用ID> 配置没找到。
---
对于default-server的SSL证书选择,有好的建议吗? 是上传一个自签证书? 如果选现有的,似乎会暴露一些不必要的信息。
或是可以不选SSL? 由 "应用不存在时返回内置证书" 功能返回证书?
鱼
更新于 20 天前
已经添加了 default-server 的 443 和 SSL 证书,同时手动执行了 docker exec -it safeline-tengine nginx -s reload ,仍然会有类似的日志随机记录到不同的server_name日志下,如下图,两个server_name的域名,并没有接入监控(理应不会有这种日志)。
雷池 - 六蛙
更新于 20 天前
可以挑选几个应用,修改一下日志格式,观察一下这几个应用的日志
safeline_<应用ID> 的日志格式在对应的 sites-enabled/IF_backend_<应用ID> 文件顶部
鱼
更新于 20 天前
不大行,手动修改主节点的 sites-enabled/IF_backend_<应用ID> 配置,然后nginx -s reload,配置可以正常变更(不会被还原)。
但备节点修改 sites-enabled/IF_backend_<应用ID> 配置,nginx -s reload 后,配置被还原。
而只改主节点的 sites-enabled/IF_backend_<应用ID> 配置,不会自动同步给备节点。
目前主节点日志没有再随机写入 server_name 日志的情况,只有备节点还在持续,是否有必要解绑主备,然后重新绑定? 解绑和重新绑定主备关系,会有哪些影响?我们已经切了几个生产系统过去了,避免造成影响。