Nginx使用Lua模块实现WAF】的更多相关文章

前言:最近一段时间在写加密数据功能,对安全相关知识还是缺少积累,无意间接触到了WAF相关知识,刚好Nginx可以实现WAF功能,也简单学习了Lua这门语言,分享下 一.WAF产生的背景 过去企业通常会采用防火墙,作为安全保障的第一道防线:当时的防火墙只是在第三层(网络层)有效的阻断一些数据包:而随着web应用的功能越来越丰富的时候,Web服务器因为其强大的计算能力,处理性能,蕴含较高的价值,成为主要的被攻击目标(第五层应用层).而传统防火墙在阻止利用应用程序漏洞进行的攻击方面,却没有办法:在此背…
Nginx中的stub_status模块主要用于查看Nginx的一些状态信息. 本模块默认是不会编译进Nginx的,如果你要使用该模块,则要在编译安装Nginx时指定: ./configure –with-http_stub_status_module   这个模块如果需要也可以加入 #########################  下面是 lua模块 unknown directive "access_by_lua" unknown directive "set_une…
nginx安装lua扩展模块 1.下载安装LuaJIT-2.0.4.tar.gz wget -c http://luajit.org/download/LuaJIT-2.0.4.tar.gz tar xzvf LuaJIT-2.0.4.tar.gz cd LuaJIT-2.0.4 make install PREFIX=/usr/local/luajit #注意环境变量! export LUAJIT_LIB=/usr/local/luajit/lib export LUAJIT_INC=/usr…
需求: nginx上将特定请求拒绝,并返回特定值. 解决办法: 使用lua脚本,实现效果. 操作步骤: 安装Luajit环境 重新编译nginx(目标机器上nginx -V 配置一致,并新增两个模块ngx_devel_kit,lua-nginx-module) 热升级(不中断服务)或重启 配置文件添加lua脚本: #匹配请求体里的 hello=world时返回此变量和值 location /hello { rewrite_by_lua_block { ngx.req.read_body() lo…
1.Lua及基础语法 Nginx与Lua环境 场景:用Nginx结合Lua实现代码的灰度发布 1.Lua 是一个简洁.轻量.可扩展的脚本语言 2.Nginx+Lua优势 充分的结合Nginx的并发处理epoll优势和Lua的轻量 实现简单的功能切高并发的场景. 3.Lua的基础语法 1.运行 [root@web-01 ~]# lua Lua 5.1.4 Copyright (C) 1994-2008 Lua.org, PUC-Rio > print("Hi I'm lewen")…
需求背景 类似于论坛型的网站经常会被黑掉,除了增加硬件防护感觉效果还是不太好,还会偶尔被黑,waf的功能正好实现了这个需求. waf的作用: 防止sql注入,本地包含,部分溢出,fuzzing测试,xss,SSRF等web攻击 防止svn/备份之类文件泄漏 防止ApacheBench之类压力测试工具的攻击 屏蔽常见的扫描黑客工具,扫描器 屏蔽异常的网络请求 屏蔽图片附件类目录php执行权限 防止webshell上传 nginx 的话我选择春哥开源的:OpenResty一个伟大的项目. OpenR…
前言 对于项目里面只是使用代理等常用功能,在线安装即可,如需制定化模块,则推荐编译安装 PS:本文不仅仅包含Nginx相关的知识点,还包含了逆天学习方法(对待新事物的处理) 官方网站:https://nginx.org/ Github:https://github.com/nginx/nginx Nginx书籍: Nginx Cookbook 中文版 https://huliuqing.gitbooks.io/complete-nginx-cookbook-zh/content/ Nginx官方…
Nginx的nb之处就不说了,lua也是一个小巧的脚本语言,由标准C编写而成,几乎可以运行在所有的平台上,也非常强大,其他特性请自行度娘.nginx_lua_module是由淘宝的工程师清无(王晓哲)和春来(章亦春)所开发的nginx第三方模块,它能将lua语言嵌入到nginx配置中,从而使用lua就极大增强了nginx的能力 http://wiki.nginx.org/HttpLuaModule 下面说说mac下Nginx如何编译集成nginx_lua_module模块 1. 下载nginx需…
一 .安装LuaJit 1.下载LuaJit # wget http://luajit.org/download/LuaJIT-2.0.5.tar.gz 2.编译安装 # tar xzvf LuaJIT-2.0.5.tar.gz # cd LuaJIT-2.0.5 # make PREFIX=/opt/programs/nginx_1.12.2/lua/luajit # make install PREFIX=/opt/programs/nginx_1.12.2/lua/luajit 二.下载…
Nginx+Lua的安全waf防火墙 看一下别人写好的:https://github.com/loveshell/ngx_lua_waf 先安装git:yum -y install git 在/opt/download下执行:git clone https://github.com/loveshell/ngx_lua_waf.git 这里如果不能克隆的话,手动下载再上传至服务器 把克隆下来的ngx_lua_waf下的所有文件,移到/etc/nginx/waf下 修改配置文件中的两个路径 wafc…