搞懂了waf架构的原理

一般来说,waf会部署在一台服务器,举例ip为129.39.13.12,需要保护的域名为www.sss.com, waf的域名为 waf_0wxefsfadfa2312_test.sss.com,真实的主机ip为44.33.2.1 ,在Dns解析里面需要配置为:

www.sss.com -> cname-> waf_0wxefsfadfa2312_test.sss.com

然后在129.39.13.12 部署安装 nginx+lua的waf,需要在nginx配置一个反向代理

举例:

server{

server_name waf_0wxefsfadfa2312_test.sss.com;

location /{

proxy_pass www.sss.com;

}

}

然后129.39.13.12 需要知道 www.sss.com如何解析

这个地方就有很多的处理方式,通过网络策略来实现

或者最简单的方式,修改本机的hosts

这里就使用这种方法:修改 vi /etc/hosts

配置如下: www.sss.com 44.33.2.1 就可以了

当然 你需要在真实的服务器上 配置好nginx的虚拟主机,不然就gg了

其实原理还是比较简单的,waf所在主机就是一个代理,当浏览器请求经过代理时,会进行各种waf规则过滤,过滤完之后,会将请求转发到后端真实的服务器上。