nginx实现网页缓存防篡改

访客4年前黑客资讯1681

简介

使用网站防篡改对指定的敏感页面设置缓存,缓存后即使源站页面内容被恶意篡改,WAF也会向访问者返回预先缓存好的页面内容,确保用户看到正确的页面。

启用?网页防篡改、敏感信息防泄露开关,才能使用该功能。

1611402320_600c0c50093942dd3a8ac.png!small

填写精确的要防护的路径,可以防护该路径下的text、html和图片等内容。

缓存用户配置的url的页面,到openresty。每次处理用户请求,从nginx缓存获取页面。

配置的url页面在nginx.conf--->http--->server--->local,local中设置缓存配置,根据自身业务特点设置缓存10~30天不等。

若被保护的页面更新,手动触发更新缓存至最新的页面。

即设置的url对应的页面,缓存中始终与real server对应的页面,保持同步,即使real server的页面被篡改。

用户请求的页面来自于openresty缓存。

经过大量测试发现:对缓存的过期与清除起作用的因素的优先级从高到低一次为:

inactive配置项、源服务器设置的Expires、源服务器设置的Max-Age、proxy_cache_valid配置项

网页缓存实现

在http{}内配置缓存cache

proxy_buffering on;

proxy_buffer_size 16k;

#设置Web缓存区名称为cache_one,内存缓存空间大小为500M,缓存的数据超过1天没有被访问就自动清除;访问的缓存数据,硬盘缓存空间大小为30G

proxy_cache_path /home/waf/openresty/proxy_cache_path levels=1:2 keys_zone=cache_one:500m inactive=365d max_size=30g;

当用户设置的缓存页面,发生修改时,手动在控制台操作,清空缓存,重新从源站缓存最新的资源。

location ~ /purge(/.*) {

allow? 127.0.0.1;

allow? 10.10.10.10;

deny all;

proxy_cache_purge? cache_one $host$1$is_args$args;

}

location ~* \.(jpg|jpeg|png)$ {

#使用Web缓存区cache_one,已在nginx.conf的缓存配置中命名的。

proxy_cache cache_one; ? ? ? ? ? ? ? ? ?

#设置Web缓存的Key值,Nginx根据Key值md5哈希存储缓存,这里根据"域名,URI,

#参数"组合成Key

proxy_cache_key $host$uri$is_args$args;

proxy_cache_valid 200 304 365d;

proxy_cache_revalidate on;

proxy_cache_lock on;

proxy_ignore_headers Set-Cookie Cache-Control; ?

proxy_set_header Range $http_range;

proxy_set_header?If-Range?$http_if_range;

proxy_no_cache?$http_range?$http_if_range;#range请求不缓存

add_header X-Cache $upstream_cache_status;

proxy_pass?http://rp_10_11_12_10_80cert_cn;

session_sticky_hide_cookie upstream=rp_10_12_52_89_80cert_placuna_cn;

}

location /test/index.php {

#使用Web缓存区cache_one,已在nginx.conf的缓存配置中命名的。

proxy_cache cache_one;

#设置Web缓存的Key值,Nginx根据Key值md5哈希存储缓存,这里根据"域名,URI,

#参数"组合成Key

proxy_cache_key $host$uri$is_args$args;

proxy_cache_valid 200 304 365d;

proxy_cache_revalidate on;

proxy_cache_lock on;

proxy_ignore_headers Set-Cookie Cache-Control;

proxy_set_header Range $http_range;

proxy_set_header?If-Range?$http_if_range;

proxy_no_cache?$http_range?$http_if_range; #range请求不缓存

add_header X-Cache $upstream_cache_status;

proxy_pass?http://rp_10_11_12_10_80cert_cn;

session_sticky_hide_cookie upstream=http://rp_10_11_12_10_80cert_cn;

参考连接

https://github.com/FRiCKLE/ngx_cache_purge
https://www.cnblogs.com/kevingrace/p/6198287.html
https://www.cnblogs.com/walls/p/9017821.html
https://www.cnblogs.com/wangzhilei/p/6706102.html

相关文章

市场监管总局部署索道和游乐设施安全排查

人民网北京9月26日电 (邢郑) 记者从市场监管总局获悉,中秋国庆假期即将来临,为保障群众旅游游乐安全,进一步加强景区客运索道、大型游乐设施等特种设备安全工作,市场监管总局办公厅近日印发《关于加强中秋...

新手做淘宝没货源,一件代发货源大全,再也不

新手做淘宝没货源,一件代发货源大全,再也不

随着互联网的不断发展,一件代发模式已经不再陌生,网店主想要在开网店上有所突破,那选择支持一件代发可谓是明智之举。可是由于不知道支持一件代发的货源网有哪些,所以网店主在选择一件代发上就犯了难,那该该怎么...

如何找到一个黑客高手(如何成为电脑黑客高手)-黑客用笔记本什么配置好

如何找到一个黑客高手(如何成为电脑黑客高手)-黑客用笔记本什么配置好

如何找到一个黑客高手(如何成为电脑黑客高手)(tiechemo.com)一直致力于黑客(HACK)技术、黑客QQ群、信息安全、web安全、渗透运维、黑客工具、找黑客、黑客联系方式、24小时在线网络黑客...

百度删帖,求黑客帮忙找小偷,一个黑客少年找妈妈的小说

1.login1接口会在发送暗码前先进行是否存在账号进行检测,回来相应的错误码,能够随机遍历手机号测验接口获得存在的手机号列表,或许由于注册用户较少原因,测验158号码时分只得到一个注册手机信息。...

网络黑客可以干什么(网络黑客联系方式)-黑客需要写代码吗

网络黑客可以干什么(网络黑客联系方式)-黑客需要写代码吗

网络黑客可以干什么(网络黑客联系方式)(tiechemo.com)一直致力于黑客(HACK)技术、黑客QQ群、信息安全、web安全、渗透运维、黑客工具、找黑客、黑客联系方式、24小时在线网络黑客、黑客...

哪里可以预约杭州商务

本次的內容为“哪里可以预约杭州市商务”。有关哪里可以预约杭州市商务我拥有 自身独特的看法,杭州市做为我常常去的大城市之一,那边景色美角色美,那边漂亮美女诸多,因此有关哪里可以预约杭州市商务,文中为大伙...