ModSecurity

在Ubuntu和Nginx上安装,nginx版本为1.14.0。

安装需要包

下载编译ModSecurity 3.0源代码

进入目录运行编译

如果出现fatal: No names found, cannot describe anything.,是可以忽略的。

ModSecurity连接器

下载连接器代码

根据已安装的nginx版本安装需要的nginx原代码

需要把连接器编译为动态模块到nginx中,到nginx目录下,其中的编译命令根据nginx -V来决定。

PS:运行nginx -t测试nginx运行,如果出现报错ModSecurity二进制文件不匹配,则可能是nginx版本验证不匹配,那就需要源码编译安装nginx,同时把ModSecurity一起编译。

加载nginx动态模块

编译完成后的动态模块需要到配置文件中启动加载,修改配置文件/etc/nginx/nginx.conf中

启用和测试规则

安装Spiderlabs的规则

把ModSecurity中的unicode.mapping文件复制到以上目录

修改配置文件,其中配置部分被注释,需要安需要启用。

添加owasp的规则,在nginx下创建目录

在modsec中修改modsecurity.conf,添加配置文件,同时把rules目录下的配置文件添加进去

在nginx配置文件中添加此配置

可以到crs配置文件中找到对应的规则来启用,比如如下启用id为900240的后缀文件检测

默认情况下会拦截常见的web攻击,比如

配置新的conf文件

如果默认的规则文件不符合需求,获取由于其他原因需要添加规则。先看一个普通的规则是怎么样的

相当于在wp-login.php页面中,禁用对参数pwd的拦截检查。其中的格式是

比如,我们打算写一个只允许特定IP访问的路径。这时候需要两条规则来判断,需要chain来连接动作。把它保存到上面crs配置文件路径。重启nginx

配置文档参考:http://www.modsecurity.cn/chm/ConfigurationDirectives.html

VeryNginx

VeryNginx 基于 lua_nginx_module(openrestry) 开发。 集成在 Nginx 中运行,扩展了 Nginx 本身的功能,并提供了友好的 Web 交互界面。本质上这并不是一个WAF,只是openrestry的界面化。但是可以通过界面化的配置规则来实现waf的功能。

https://github.com/alexazhou/VeryNginx

一键配置

克隆 VeryNginx 仓库到本地, 然后进入仓库目录,执行以下命令

即可一键安装 VeryNginx 和 以及依赖的 OpenResty,可以先修改其中的版本为新版本地址再安装。

手动安装

手动安装,需要本地的nginx有openrestry,所以先安装。

这时候会把openrestry加入快捷命令,如果直接执行openrestry将开启自带的nginx。

再来安装verynginx

在nginx的配置文件中添加以下规则,需要配置到不同的地方。

在地址/verynginx/index_zh.html下即可访问到页面。

默认的账号密码都是verynginx / verynginx。添加规则的方式比modsecurity简单,但自带的规则过于简单,需要自己添加规则。

已有的规则可以参考:https://github.com/unixhot/waf

JxWaf

https://github.com/jx-sec/jxwaf

jxwaf(锦衣盾)是一款开源WEB应用防火墙,分为客户端和服务端,客户端也是openrestry开发而来。

服务端安装

采用私有化部署

拉取后,访问地址邮箱验证码随便填写,注册账号在全局配置页面获取”api key”和”api password”

客户端安装

在下载的文件内:

在网站管理中添加对应的域名和IP端口

Janusec

可多节点布置的应用网关。https://github.com/Janusec/janusec

此处选择的是1,主节点。默认安装的路径为 /usr/local/janusec/

由于需要postgresql

然后编辑 /usr/local/janusec/config.json ,尝试开启waf

设置中管理太台监听设置为true,则使用http:9080端口,此处修改为false,直接在目录janusec-admin/

默认用户名:admin,默认口令:J@nusec123。在应用管理中添加IP端口信息即可。

php waf 搭建,开源WAF搭建相关推荐

  1. Nginx + Lua 搭建网站WAF防火墙

    Nginx + Lua 搭建网站WAF防火墙 一.目的 二.前期环境准备 (一).更新下yum源 (二).编译安装Nginx (三).端口放行 (四).验证安装 (五).lua编译安装 (六).端口冲 ...

  2. B站小迪安全第八天信息搜集-架构,搭建,waf

    前言: 在安全测试中,信息收集是非常重要的一个环节,此环节的信息将影响 到后续的成功几率,掌握信息的多少将决定发现漏洞机会大小,换言之决定 着是否能完成目标的测试任务.也可以很直接的跟大家说:渗透测试 ...

  3. 企业安全建设之搭建开源SIEM平台(上)

    前言 SIEM(security information and event management),顾名思义就是针对安全信息和事件的管理系统,针对大多数企业是不便宜的安全系统,本文结合作者的经验介绍 ...

  4. 开源方案搭建可离线的精美矢量切片地图服务-1.开篇(附成果演示地址)

    系列文章目录 开源方案搭建可离线的精美矢量切片地图服务-1.开篇(附成果演示地址) 开源方案搭建可离线的精美矢量切片地图服务-2.PostGIS+GeoServer矢量切片 开源方案搭建可离线的精美矢 ...

  5. 开源方案搭建可离线的精美矢量切片地图服务-3.Mapbox个性化地图定制入门

    系列文章目录 开源方案搭建可离线的精美矢量切片地图服务-1.开篇(附成果演示地址) 开源方案搭建可离线的精美矢量切片地图服务-2.PostGIS+GeoServer矢量切片 开源方案搭建可离线的精美矢 ...

  6. 阿里巴巴上线静态开源站点搭建工具 Docsite

    近日,阿里巴巴在Github上线了静态开源站点搭建工具Docsite,这是一款集官网.文档.博客和社区为一体的静态开源站点的解决方案,具有简单易上手.上手不撒手的特质,同时支持react和静态渲染.P ...

  7. 建站利器 | 阿里巴巴上线静态开源站点搭建工具 Docsite

    2019独角兽企业重金招聘Python工程师标准>>> 近日,阿里巴巴在Github上线了静态开源站点搭建工具Docsite,这是一款集官网.文档.博客和社区为一体的静态开源站点的解 ...

  8. 开源方案搭建可离线的精美矢量切片地图服务-5.Mapbox离线项目实现

    系列文章目录 开源方案搭建可离线的精美矢量切片地图服务-1.开篇(附成果演示地址) 开源方案搭建可离线的精美矢量切片地图服务-2.PostGIS+GeoServer矢量切片 开源方案搭建可离线的精美矢 ...

  9. 开源方案搭建可离线的精美矢量切片地图服务-6.Mapbox之.pbf字体库

    系列文章目录 开源方案搭建可离线的精美矢量切片地图服务-1.开篇(附成果演示地址) 开源方案搭建可离线的精美矢量切片地图服务-2.PostGIS+GeoServer矢量切片 开源方案搭建可离线的精美矢 ...

最新文章

  1. 什么是GStreamer?
  2. 以太坊去中心化_开发以太坊去中心化投票应用程序的指南
  3. 基于ceres的后端优化的代码实现
  4. (原創) 我的Design Pattern之旅[3]:使用template改進Strategy Pattern (OO) (Design Pattern) (C/C++) (template)...
  5. ORB-SLAM2源代码中ROS部分ros-mono源代码中subscribe /camera/image_raw topic谁发布publish的
  6. mysql死锁问题分析
  7. phper需要掌握的技能(简)
  8. Linux 相关术语_002
  9. 斗地主实现洗牌发牌功能
  10. iphone开发工程师面试真题(又像c的)
  11. office 2010 系列问题
  12. Java面试基础问题之(一)—— JDK和JRE区别
  13. MySQL数据库备份与还原
  14. 正大国际期货:什么是黄金保证金交易?黄金保证金交易包含哪些要点?
  15. 应用签名不一致,该应用可能被篡改的问题
  16. HTML自学笔记-1(进入篇)
  17. CV2的conda安装
  18. 深度学习矩阵乘法的终极奥义einsum,结合多个计算框架上的使用
  19. 常见密码哈希离线查询工具
  20. FFA 2022 专场解读 - Flink 核心技术

热门文章

  1. 英语俚语VS汉语俗语:狗改不了吃屎
  2. 机器学习:无监督异常检测算法
  3. python调用C语言里面的函数
  4. c++中各种长度整型的分析
  5. 机器学习算法——集成方法(Ensemble)之Stacking
  6. Gartner发布2017年数据管理技术成熟度曲线
  7. 程序流程图的主要优点
  8. 什么是全民开发?|概念、技能和优势
  9. Python爬虫爬取数据
  10. 爬虫爬取数据时各种中文乱码问题