随着开源 Web 框架和各种建站工具的兴起,搭建网站已经是一件成本非常低的事情,但是网站的安全性很少有人关注,以至于 WAF 这个品类也鲜为人知。

一、WAF 是什么?

WAF 是 Web 应用防火墙(Web Application Firewall)的缩写,也就是我们俗称的网站防火墙。它可以保护网站不被黑客所攻击,通常以 Web 网关的形式存在,作为反向代理接入。WAF 可以识别常见的 Web 攻击并实施阻断,比如:SQL 注入、跨站脚本攻击(XSS)、跨站请求伪造(CSRF)、服务端请求伪造(SSRF)、WebShell 上传与通信等等。

二、雷池

今天 HelloGitHub 给大家带来的是一款开箱即用、功能强大、广受好评的网站防护工具——雷池 WAF,不让黑客越雷池半步。

GitHub 地址:https://github.com/chaitin/safeline

雷池是一款简单易用、广受好评的社区 WAF 项目,它底层基于 Nginx 的 Web 网关,作为反向代理接入网络,清洗来自黑客的恶意流量,保护你的网站不受黑客攻击。雷池拥有友好的 Web 界面,就算你不具备网络安全技术背景,也可以通过它发挥出顶尖的网站防护效果

雷池由国内顶尖的网络信息安全公司长亭科技,在今年 4 月开源的网站防火墙工具。它迭代速度相当惊人,短短四个月的时间共发布了 31 个版本,被 1.8w 的网站站长使用,在 GitHub 收获了 3K+ 的 Star。

下面,就让我们一起上手这款国产开源网站防火墙神器吧!

三、安装部署

雷池采用容器化部署的方式,服务由多个 Docker 容器组成,支持简单方便的一条龙安装脚本。只要服务器能联网,执行安装脚本后,自动拉取镜像、初始化配置文件、启动服务一气呵成。

3.1 一条命令安装

直接使用在线安装脚本。

bash -c "$(curl -fsSLk https://waf-ce.chaitin.cn/release/latest/setup.sh)"

3.2 克隆仓库安装

克隆仓库后,执行 setup.sh 脚本即可安装。

git clone git@github.com:chaitin/safeline.git
cd safeline
bash ./setup.sh

3.3 安装成功

整个安装过程对新手十分友好,提示词为中文、自动安装 Docker 等,只需按照提示一路向下即可。

  ____             __          _       _
/ ___| __ _ / _| ___ | | (_) _ __ ___
\___ \ / _` | | |_ / _ \ | | | | | '_ \ / _ \
___) | | (_| | | _| | __/ | |___ | | | | | | | __/
|____/ \__,_| |_| \___| |_____| |_| |_| |_| \___| [SafeLine] 脚本调用方式确认正常
[SafeLine] 缺少 Docker 环境
[SafeLine] 是否需要自动安装 Docker (Y/n)
# Executing docker install script, commit: xxx
...
[SafeLine] 雷池安装目录 (留空则为 '/data/safeline'):
[SafeLine] 目录 '/data/safeline' 当前剩余存储空间为 47G ,雷池至少需要 5G,是否确定 (Y/n)
[SafeLine] 创建安装目录 '/data/safeline' 成功
...
[SafeLine] 雷池 WAF 社区版安装成功,请访问以下地址访问控制台
[SafeLine] https://0.0.0.0:9443/ # 安装成功

安装完成后,根据提示访问本地的 Web 服务端口即可开始使用。

四、工作原理

下面将通过简单的 WAF 部署架构图,介绍雷池的工作原理。

下图是一个简单的网站拓扑,外部用户发出请求,经过网络最终传递到网站服务器。

此时,若外部用户中存在恶意用户,那么由恶意用户发出的攻击请求也会经过网络最终传递到网站服务器。

雷池以反向代理方式接入,优先于网站服务器接收流量,对流量中的攻击行为进行检测和清洗,将清洗过后的流量转发给网站服务器。

通过以上行为,可以在请求到达网站服务器前过滤掉恶意请求,最终确保外部攻击流量无法触达网站服务器。

五、核心能力

雷池是一款内外兼修的网站防火墙,它不光有好看的界面,还有强大的网站安全防护功能。

5.1 防护 Web 攻击、CC 攻击、爬虫

雷池的 Web 攻击检测能力由语义分析算法驱动,不同于通用的语义分析,雷池的自动机引擎 yanshi 可以支持对片段语法进行分析,对 HTTP 请求参数进行自动化递归解码,提取请求参数中的攻击片段,并通过攻击打分模型对参数中的攻击代码进行识别,最终判定 HTTP 请求是否为恶意攻击,具备对通用攻击的防护能力,也具备泛化识别能力,可以实现无规则检测 0Day 攻击。

雷池集成了基于恶意 IP 情报、客户端指纹、鼠标键盘行为识别、访问频率限制的人机验证算法,可用来对抗爬虫、对抗扫描、对抗 CC 攻击

5.2 Web 流量访问控制

雷池支持通过可视化页面配置网站的访问控制黑白名单,允许匹配源 IP、路径、域名、Header、Body 等条件。

5.3 网站资源识别

雷池基于 HTTP 流量自动识别 Web 资源,从而生成 API 画像持续统计和分析。采用动态基线和预测分析技术分析异常访问行为,精准识别操作正常但请求异常的攻击行为,从正常行为中检测出异常流量。

六、最后

雷池是长亭科技耗时近 10 年打造的开源网站防火墙,具有开箱即用、企业防护能力、高性能等特点。

  • 开箱即用:安装只需要一条命令,界面简单易操作。

  • 功能强大:首创的语义分析驱动的 Web 攻击检测算法,支持 IP 威胁情报、动态限频、智能建模等企业级产品才有的高级防护能力。

  • 高性能:在 Nginx 之上增加了攻击检测能力,轻松支撑 10000+ TPS 流量,攻击检测带来的延迟在 1 毫秒级别。

如果你使用后觉得雷池还不错,就给它点一个 Star 吧!

GitHub 地址:https://github.com/chaitin/safeline

一款国产开源 Web 防火墙神器!的更多相关文章

  1. GitHub 上最热的10款国产开源软件

    衡量一个开源产品好不好,看看产品在 GitHub 的 Star 数量就知道了.由此可见,GitHub 已经沦落为开源产品的“大众点评”了.一个开源产品希望快速的被开发者知道.快速的获取反馈,放到 Gi ...

  2. 几款国产开源的Windows界面库

    上次介绍的几款图形界面库http://blog.okbase.net/vchelp/archive/23.html都是国外的开源项目,今天介绍的几款都是国人的开源项目,大部分是采用DirectUI设计 ...

  3. 6 款国外开源web oa办公系统(转)

    国外的开源产品较多,而且大多提供免费的社区版本,oa办公系统也不例外. 1.eGroupware eGroupware是一个多用户,在以PHP为基础的API上的定制集为基础开发的,以WEB为基础的工作 ...

  4. 【转】10款GitHub上最火爆的国产开源项目

    将开源做到极致,提高效率方便更多用户 接触开源时间虽然比较短但是后续会努力为开源社区贡献自己微薄的力量 衡量一个开源产品好不好,看看产品在 GitHub 的 Star 数量就知道了.由此可见,GitH ...

  5. 点评10款Github上最火爆的国产开源项目

    衡量一个开源产品好不好,看看产品在Github的Star数量就知道了.由此可见,Github已经沦落为开源产品的“大众点评”了. 一个开源产品希望快速的被开发者知道.快速的获取反馈,放到Github上 ...

  6. 10款GitHub上最火爆的国产开源项目

    衡量一个开源产品好不好,看看产品在 GitHub 的 Star 数量就知道了.由此可见,GitHub 已经沦落为开源产品的“大众点评”了.一个开源产品希望快速的被开发者知道.快速的获取反馈,放到 Gi ...

  7. 国产开源JavaWeb应用程序框架——XWAF(1)

    XWAF是一个基于java反射和Servlet 技术的国产开源Web应用程序框架.其英文全称为“eXtensible Web Application Framework”,意即“可扩展的网络应用程序框 ...

  8. 2019年十大开源WEB应用防火墙点评

    2019年十大开源WEB应用防火墙点评 随着WEB应用的爆炸式成长和HTTPS加密的普及,针对网络应用层的攻击,像SQL注入.跨站脚本攻击.参数篡改.应用平台漏洞攻击.拒绝服务攻击等越来越多,传统的防 ...

  9. 教你用免费的hihttps开源WEB应用防火墙阻止暴力破解密码

    教你用免费的hihttps开源WEB应用防火墙阻止暴力破解密码 很多企业都有自己的网站,需要用户登录后才能访问,但有大量的黑客攻击软件可以暴力破解网站密码,即使破解不了也非常恶心.有没有免费的解决办法 ...

  10. JAVA首选五款开源Web开发框架

    Spring Spring是一个开源的Java/Java EE全功能栈应用程序框架,在JavaEE社区中非常受欢迎,以Apache许可证形式发布,也有.NET平台上的移植版本. Struts2 Str ...

随机推荐

  1. 安装ODOO13

    在CentOS 7服务器下安装和配置Odoo 13 录到服务器: ssh root@your_server_ip1如需检查计算机上安装的CentOS的版本,可以运行以下命令: cat /etc/red ...

  2. 自学FHQ-treap的草稿

    更新:能过模板题(和加强版)的代码: 普通平衡树: (请自行实现读入和输出函数) 点击查看代码 #include <iostream> #include <random> #i ...

  3. 园子的商业化努力-行行AI人才培养「常青藤计划」

    各位园子的小伙伴: 感谢大家长期对园子的支持,AI大模型出现之后,各行各业都在积极思考如何应对,如何把业务场景和AI结合.在这个过程中,AI人才缺乏是最核心的问题. 基于此,园子打算在AI人才培养方面 ...

  4. 使用 Sa-Token 实现 [记住我] 模式登录、七天免登录

    一.需求分析 如图所示,一般网站的登录界面都会有一个 [记住我] 按钮,当你勾选它登录后,即使你关闭浏览器再次打开网站,也依然会处于登录状态,无须重复验证密码: 本文将详细介绍在 Sa-Token中, ...

  5. 全球开源 AI 游戏开发挑战赛,只等你来!

    我们在之前的文章中 预告过 (*划重点,IP 属地法国):7 月初,我们将举办一次与 AI 游戏相关的黑客松活动,这是有史以来的首次开源游戏开发挑战赛,借助人工智能工具释放你的创造力,一起打破游戏开发 ...

  6. GPT3的内部结构:基于自回归、注意力机制等技术的语言处理框架

    目录 1. 引言 2. 技术原理及概念 3. 实现步骤与流程 4. 应用示例与代码实现讲解 6. 结论与展望 7. 附录:常见问题与解答 GPT-3 是当前最为先进的自然语言处理框架之一,由 Open ...

  7. celery笔记八之数据库操作定时任务

    本文首发于公众号:Hunter后端 原文链接:celery笔记八之数据库操作定时任务 前面我们介绍定时任务是在 celery.py 中的 app.conf.beat_schedule 定义,这一篇笔记 ...

  8. 一篇随笔学会CSS

    CSS3 1.CSS介绍 HTML+CSS+JS 结构+表现+交互 2.CSS发展史 Cascading Style Sheet 层叠级联样式表 表现层:美化网页(字体.颜色.边距.宽高.网页定位.网 ...

  9. AWVS——自动化检测发现漏洞

    AWVS简介 *AWVS作为一个工具,不可能把所有漏洞扫描出来,仅仅是作为一个渗透网站时的辅助工具 自动化Web漏洞扫描工具(基于漏洞匹配方法,通过网络爬虫测试网站安全) AWVS通过SQL注入攻击. ...

  10. 基于java+springboot的视频点播网站-在线视频点播系统

    该系统是基于java+springboot开发的视频点播系统.是给师妹开发的毕业设计. 演示地址 前台地址: http://video.gitapp.cn 后台地址: http://video.git ...