一般来说,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规则过滤,过滤完之后,会将请求转发到后端真实的服务器上。