项目介绍

SamWaf 是一款开源轻量级的网站应用防火墙,适用于小公司、工作室和个人网站。完全私有化部署,数据加密且仅保存本地,一键启动,支持 Linux,Windows 64位,Arm64。

开发初衷

  • 轻量 - 早期在使用过一些产品基于 nginx,apache,iis 做插件进行防护,但是插件形式耦合度太高了
  • 私有化 - 后期基本上都是有云防护,而私有化部署针对一般的中大企业能承受,普通小企业公司,小工作室费用有点太高了
  • 隐私加密 - 网站防护过程中不希望本地数据上云做处理,想做一款涉及的本地信息进行加密,管理端的网络通信进行加密
  • DIY - 在这么多年网站维护开发过程中有些特定的功能想加入自己的想法,无法实现
  • 感知 - 如果站长没有用过类似的 waf ,单纯从自己的日志或者是 nginx 、apache 、IIS 等查看信息不方便,不知道到底网站有谁在访问,都请求了什么

主要功能

  • 代码完全开源
  • 支持私有化部署
  • 轻量化不依赖三方服务
  • 完全独立引擎,防护功能不依赖IIS,Nginx
  • 自定义防护规则,支持脚本和界面编辑
  • 支持白名单访问
  • 支持IP黑名单
  • 支持URL白名单
  • 支持限制URL访问
  • 支持指定界面数据隐私输出
  • 支持CC频率访问
  • 支持全局一键配置
  • 支持分网站单独防护策略
  • 日志加密保存
  • 通讯日志加密
  • 信息脱敏保存
  • 支持OWASP CRS规则集
  • 自动SSL证书申请以及续签
  • SSL证书批量检测到期情况
  • 支持IPV6
  • 支持自定义拦截界面

快速启动

Windows

直接启动:SamWaf64.exe

服务形式(安装服务需以管理员身份运行cmd):

//安装并启动
SamWaf64.exe install && SamWaf64.exe start
//停止并卸载
SamWaf64.exe stop && SamWaf64.exe uninstall

Linux

一键自动下载并安装脚本:

curl -sSO https://update.samwaf.com/latest/install_samwaf.sh && bash install_samwaf.sh install

Docker

docker run -d --name=samwaf-instance \
  --restart always \
  -p 26666:26666 \
  -p 80:80 \
  -p 443:443 \
  -v /path/to/your/conf:/app/conf \
  -v /path/to/your/data:/app/data \
  -v /path/to/your/logs:/app/logs \
  -v /path/to/your/ssl:/app/ssl \
  samwaf/samwaf

项目信息


文章来源:Gitee开源探索 - https://gitee.com/explore

项目链接:https://gitee.com/samwaf/SamWaf