博客
关于我
WAF安全应用防火墙(nginx+lua)
阅读量:87 次
发布时间:2019-02-26

本文共 2410 字,大约阅读时间需要 8 分钟。

Nginx 403 ? 404 ?????? WAF ????

Nginx ??????? HTTP ?????????????????? web ???????? Nginx????????? 403 ? 404 ??????????Nginx ??????? Lua ????????? web ??????WAF???????????????? Nginx ? 403 ? 404 ????????? Nginx ?? Lua ????? WAF ??????


Nginx ?? 403 ???

??? Nginx ?? 403 ?????????????????????????????????????

set $block_user_agent 0;if ($http_user_agent ~ "Wget|AgentBench") {    set $block_user_agent 1;}if ($block_user_agent = 1) {    return 403;}

??????????? "Wget" ? "AgentBench" ?????????? 403 ????


Nginx ?? 404 ???

??? Nginx ?? 404 ????????? Nginx ???????????????????????????????

location ~* "\.(sql|bak|zip|tgz|tar.gz)" {    return 404;}

??????????? .sql?.bak?.zip?.tgz ? .tar.gz ???????????? 404 ????


Nginx ?? Lua ???? WAF ??

Nginx ?????????????????? WAF ????????? Nginx ? Lua ??????????????

????

??????? Nginx ? PCRE ???????????

# ?? Nginx ??wget http://nginx.org/download/nginx-1.9.4.tar.gz# ?? PCRE ??wget https://ftp.pcre.org/pub/pcre/pcre-8.40.tar.gz# ?? LuaJIT ? Nginx ??????NDK?wget http://luajit.org/download/LuaJIT-2.0.3.tar.gzwget https://github.com/simpl/ngx_devel_kit/archive/v0.2.19.tar.gzwget https://github.com/openresty/lua-nginx-module/archive/v0.9.16.tar.gz# ?? Nginx ???????useradd -s /sbin/nologin -M www

????? LuaJIT ? Nginx ??

????? LuaJIT ??????

# ?? LuaJIT ??tar -zxvf LuaJIT-2.0.3.tar.gz# ?? Nginx ?????? Lua ??tar -zxvf ngx_devel_kit-0.2.19.tar.gztar -zxvf lua-nginx-module-0.9.16.tar.gz

?? LuaJIT ? Nginx

?? LuaJIT ? Nginx?

# ?? PCREtar -zxvf pcre-8.40.tar.gz# ?? Nginxtar -zxvf nginx-1.9.4.tar.gz# ?? Nginx ????cd nginx-1.9.4# ?? Nginx ????????export LUAJIT_LIB=/usr/local/libexport LUAJIT_INC=/usr/local/include/luajit-2.0# ?? Nginx ??????./configure --prefix=/usr/local/nginx --user=www --group=www \    --with-http_ssl_module --with-http_stub_status_module --with-file-aio --with-http_dav_module \    --add-module=../ngx_devel_kit-0.2.19/ --add-module=../lua-nginx-module-0.9.16/ \    --with-pcre=/usr/local/src/pcre-8.40# ????? Nginxmake -j2 && make install

??????

???? LuaJIT ??????

ln -s /usr/local/lib/libluajit-5.1.so.2 /lib64/libluajit-5.1.so.2

????

???????????? Nginx ??????????????

location /hello {    default_type 'text/plain';    content_by_lua 'ngx.say("hello, lua")';}

???????? Nginx ???

/usr/local/nginx-1.9.4/sbin/nginx -t/usr/local/nginx-1.9.4/sbin/nginx

??????????????? Nginx ? 403 ? 404 ??????????????? Lua ????????? WAF ??????????? WAF ???????????????????

转载地址:http://vomk.baihongyu.com/

你可能感兴趣的文章
nodejs中Express 路由统一设置缓存的小技巧
查看>>
Nodejs中的fs模块的使用
查看>>
nodejs包管理工具对比:npm、Yarn、cnpm、npx
查看>>
NodeJs单元测试之 API性能测试
查看>>
nodejs图片转换字节保存
查看>>
nodejs字符与字节之间的转换
查看>>
NodeJs学习笔记001--npm换源
查看>>
NodeJs学习笔记002--npm常用命令详解
查看>>
nodejs学习笔记一——nodejs安装
查看>>
nodejs封装http请求
查看>>
nodejs常用组件
查看>>
nodejs开发公众号报错 40164,白名单配置找不到,竟然是这个原因
查看>>
Nodejs异步回调的处理方法总结
查看>>
NodeJS报错 Fatal error: ENOSPC: System limit for number of file watchers reached, watch ‘...path...‘
查看>>
Nodejs教程09:实现一个带接口请求的简单服务器
查看>>
nodejs服务端实现post请求
查看>>
nodejs框架,原理,组件,核心,跟npm和vue的关系
查看>>
Nodejs模块、自定义模块、CommonJs的概念和使用
查看>>
nodejs生成多层目录和生成文件的通用方法
查看>>
nodejs端口被占用原因及解决方案
查看>>