博客
关于我
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/

你可能感兴趣的文章
Passport 密码模式
查看>>
Spring Boot(七十六):集成Redisson实现布隆过滤器(Bloom Filter)
查看>>
passport 简易搭配
查看>>
passwd命令限制用户密码到期时间
查看>>
Spring Boot 动态加载jar包,动态配置太强了!
查看>>
Spring @Async执行异步方法的简单使用
查看>>
PAT (Basic Level) Practice 乙级1021-1030
查看>>
PAT (Basic Level) Practice 乙级1031-1040
查看>>
PAT (Basic Level) Practice 乙级1041-1045
查看>>
SparkSql的元数据
查看>>
PAT (Basic Level) Practice 乙级1051-1055
查看>>
PAT (Basic Level) Practise - 写出这个数
查看>>
PAT 1027 Colors in Mars
查看>>
PAT 1127 ZigZagging on a Tree[难]
查看>>
PAT 2-07. 素因子分解(20)
查看>>
PAT A1033 重点题
查看>>
SparkSQL学习03-数据读取与存储
查看>>
PAT L2-012. 关于堆的判断
查看>>
PAT Spell It Right [非常简单]
查看>>
PAT-1044. Shopping in Mars (25)
查看>>