利用开源软件自建WAF系统--OpenResty+unixhot

目录

  • 介绍
  • 安装Openresty
  • 修改nginx.conf
  • 部署WAF
  • 测试WAF

简介:利用OpenResty+unixhot自建WAF系统

介绍

??OpenResty是一个基于 Nginx 与 Lua 的高性能 Web 平台,其内部集成了大量精良的 Lua 库、第三方模块以及大多数的依赖项。用于方便地搭建能够处理超高并发、扩展性极高的动态 Web 应用、Web 服务和动态网关。
??OpenResty通过汇聚各种设计精良的 Nginx 模块(主要由 OpenResty 团队自主开发),从而将 Nginx 有效地变成一个强大的通用 Web 应用平台。这样,Web 开发人员和系统工程师可以使用 Lua 脚本语言调动 Nginx 支持的各种 C 以及 Lua 模块,快速构造出足以胜任 10K 乃至 1000K 以上单机并发连接的高性能 Web 应用系统。
??OpenResty的目标是让你的Web服务直接跑在 Nginx 服务内部,充分利用 Nginx 的非阻塞 I/O 模型,不仅仅对 HTTP 客户端请求,甚至于对远程后端诸如 MySQL、PostgreSQL、Memcached 以及 Redis 等都进行一致的高性能响应。

安装Openresty

以CentOS7.5为例
1.安装命令如下

yum install yum-utils -y
yum-config-manager --add-repo https://openresty.org/package/centos/openresty.repo
yum install openresty-resty -y
yum --disablerepo="*" --enablerepo="openresty" list available #列出所有 openresty 仓库里的软件包

安装完成如下图所示

2.查看openresty所在目录

whereis openresty

修改nginx.conf

cd /usr/local/openresty/nginx/conf
ls
mv nginx.conf nginx.conf.$(date +%Y%m%d) #将nginx.conf移入nginx.conf.$(date +%Y%m%d)


vim nginx.conf #此时为新建 nginx.conf
将以下内容复制到nginx.conf中并保存

worker_processes  1;
error_log logs/error.log;
events {
    worker_connections 1024;
}
http {
    server {
        listen 8080;
        location / {
            default_type text/html;
            content_by_lua '
                ngx.say("<p>hello, world</p>")
            ';
        }
    }
}

添加环境变量

echo "export PATH=$PATH:/usr/local/openresty/nginx/sbin" >> /etc/profile
source /etc/profile

启动Openresty

nginx -c /usr/local/openresty/nginx/conf/nginx.conf

查看服务

ps -ef | grep  nginx

访问web服务验证是否正常

curl http://localhost:8080/

重启web服务

nginx -s reload

部署WAF

unixhot下载,如果没有git,先安装一下

yum -y install git
git clone https://github.com/unixhot/waf.git

将WAF配置文件夹复制到nginx的配置下

cp -a ~/waf/waf /usr/local/openresty/nginx/conf/

修改nginx.conf配置,加入如下代码并保存

#WAF
lua_shared_dict limit 10m;
lua_package_path "/usr/local/openresty/nginx/conf/waf/?.lua";
init_by_lua_file "/usr/local/openresty/nginx/conf/waf/init.lua";
access_by_lua_file "/usr/local/openresty/nginx/conf/waf/access.lua";

到目前为止,修改过的nginx.conf文件如下图所示:

测试配置

/usr/local/openresty/nginx/sbin/nginx -t


重新加载配置

/usr/local/openresty/nginx/sbin/nginx -s reload

测试WAF

模拟SQL注入

本文参考链接:
https://www.cnblogs.com/sanduzxcvbnm/p/11322946.html

原文地址:https://www.cnblogs.com/RitaWWang/p/11949896.html

时间: 2024-10-31 00:35:42

利用开源软件自建WAF系统--OpenResty+unixhot的相关文章

利用开源软件strongSwan实现支持IKEv2的企业级IPsec VPN,并结合FreeRadius实现AAA协议(下篇)

续篇—— 利用开源软件strongSwan实现支持IKEv2的企业级IPsec VPN,并结合FreeRadius实现AAA协议(上篇) 上篇文章写了如何构建一个支持IKEv2的VPN,本篇记录的是如何利用freeradius,以及结合Daloradius进行VPN的 Web 管理.先让freeradius做个自述吧. 一.Radius 介绍 远端用户拨入验证服务(RADIUS, Remote Authentication Dial In User Service)是一个AAA协议,意思就是同时

利用开源软件搭建JAVA工程CI&CD自动化工具链

JAVA传统项目交付流程的问题 开发和运维间环境有明显差异 代码缺乏统一质量度量 客户要求上线时间紧,人工测试慢,导致测试不充分,时常做线上BUG修复 打造工具链 ● 源码管理Gitlab● 持续集成Jenkins● 代码扫描SonarQube● 接口测试PostMan+NewMan● 制品管理ArtifactoryOSS版本(仅支持Maven)● 自动部署Ansible GitLab安装 vim /etc/yum.repos.d/gitlab-ce.repo [gitlab-ce] name=

如何利用H5响应式建站系统做响应式网站

响应式网站成为了企业建站的首选目标,是什么因素导致的呢?我想更多是因为响应式网站的强大展示方式,多元素.多样化.多功能的形态,让网站"活了"起来,还有能够一个网站便能适应所有屏幕设备,不再需要为每一个不一样的设备制定一个特定版本的网站,省去了建站,优化.管理的麻烦.让你更好的统筹管理一个网站,便能在不同设备平台上得到相同的效果. 说起响应式网站,很多人会疑惑.那么好的类型网站,建设起来费用是不是要很高?建设时间是不是很长?错!错!错!其实如果在较早直接做一个响应式网站是要花费高额的开发

利用开源软件 Hugin 实现照片的景深合成

利用开源软件 Hugin 实现照片的景深合成 本文主要参考了下面的文章:http://macrocam.blogspot.jp/2013/09/using-hugin-for-focus-stacking.html 根据我自己的理解做了少量的增删.首先感谢原作者. Hugin 是一个很出名的全景照片拼接软件.但其实除了全景拼接功能外, hugin 还提供了一系列的命令行工具,可以用来操纵和融合多张图像,实现高动态图像(HDR).景深合成(Focus Stacking)等各种高级功能.本文就来介绍

利用开源软件打造自己的全功能远程工具

我们在开始之前,需要准备3个开源软件工具: Xming      开源的X服务器 winscp    开源的sftp/scp工具 mRemoteNG   开源的多协议远程连接工具 这3个工具组合,可以实现几乎一切远程连接和文件传输的需求. 这里主要介绍2个常用功能的配置: 1,启用图型界面转发 在mRemote的putty配置中打开X11的转发即可,启动Xming后,在终端有关X的窗口会自动转发到windows桌面上. 2,集成winscp实现远程与本地的文件互相传输. winscp并未直接在m

lylmwt推荐] 五款开源免费的建站系统推荐

ph5z55姓济佣夜钨绽http://blog.sina.com.cn/s/blog_17ba660cd0102x3xu.htmldbb7nl究摆苹严诶涡http://blog.sina.com.cn/s/blog_17b9447250102xq4n.html7t5n3d贤种捌珊俦朔http://blog.sina.com.cn/s/blog_17b948af60102xaek.htmlbb7r11悼厩宰揪蹿嫌http://blog.sina.com.cn/s/blog_17ba66ef3010

开源软件与知识产权

目录 1.      软件与知识产权... 2 1.1.      引言... 2 1.2.      著作权法与软件... 3 2.      开源软件概述... 3 2.1.      自由软件运动... 3 2.2.      开源软件的发展... 4 2.3.      开源软件涉及的主要权益... 4 2.3.1.       著作权... 4 2.3.2.       专利权... 4 2.3.3.       商标权... 5 2.4.      开源软件的优势与劣势... 5 3

开源软件之七宗罪以及背后的阴谋

开源软件之七宗罪以及背后的阴谋 jopen 2012-10-29 11:31:22 ? 发布 摘要:我们每天使用着大量的开源软件,我们歌颂她赞美她.当有人站出来说一句开源不好 肯定会激起N多人站出来批评.然后给你列举出N多开源的好处和闭源的坏处. 我们每天使用着大量的开源软件,我们歌颂她赞美她.当有人站出来说一句开源不好 肯定会激起N多人站出来批评.然后给你列举出N多开源的好处和闭源的坏处. 首先我不反对开源,本文只是无聊时候的自己一点思考.想喷的各位请看完再喷.谢谢 自从开源运动发起以后.各种

用开源软件建垂直搜索引擎 转载 http://news.cnblogs.com/n/60041/

用Solr.Nutch等开源软件来构建电子元器件垂直搜索引擎涉及很多实现细节,本文结合实际应用系统对数据采集.中文搜索.结果输出.分页处理.整合数据库等重点问题提出了切实可行的解决方法. 用开源软件建垂直搜索引擎 ■ 董娅 周峻松 针对搜索引擎的各种开源技术是开源社区的一枝奇葩,它大大缩短了构建搜索应用的周期,并使得根据特定需求打造个性化应用的垂直搜索引擎系统成为可能.作为一个独立的企业搜索应用解决方案,Solr在美国的众多知名网站中得到应用,如美国最大的科技资讯类网站CNet.Solr基于高性