• 搜索
  • 夜间模式
    ©2012-2026  陈十一的小破站 Theme by OneBlog

    陈十一的小破站博客

    搜索
    标签
    # Nodejs # CentOS # Git # Golang # Docker # Windows # Nginx # 反向代理 # 脚本 # Linux
  • 首页>
  • 技术>
  • 正文
  • SamWaf开源轻量级网站防火墙,完全私有化部署

    2024年10月04日 2.5 k 阅读 14 评论 5395 字

    English | 简体中文

    一款开源轻量级的网站应用防火墙 [![Release](https://img.shields.io/github/release/samwafgo/SamWaf.svg)](https://github.com/samwafgo/SamWaf/releases) [![Gitee](https://img.shields.io/badge/Gitee-blue?style=flat-square&logo=Gitee)](https://gitee.com/samwaf/SamWaf) [![GitHub stars](https://img.shields.io/github/stars/samwafgo/SamWaf?style=flat-square&logo=Github)](https://github.com/samwafgo/SamWaf) [![License](https://img.shields.io/badge/License-Apache%202.0-blue?style=flat-square)](LICENSE)

    开发初衷:

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

    软件介绍

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

    架构

    界面

    添加主机 攻击日志
    CC IP黑名单
    IP白名单 LDP
    添加规则脚本日志 选择日志
    日志详情 手动规则
    URL黑名单 URL白名单

    主要功能:

    • 代码完全开源
    • 支持私有化部署
    • 轻量化不依赖三方服务
    • 完全独立引擎,防护功能不依赖IIS,Nginx
    • 自定义防护规则,支持脚本和界面编辑
    • 支持白名单访问
    • 支持IP黑名单
    • 支持URL白名单
    • 支持限制URL访问
    • 支持指定界面数据隐私输出
    • 支持CC频率访问
    • 支持全局一键配置
    • 支持分网站单独防护策略
    • 日志加密保存
    • 通讯日志加密
    • 信息脱敏保存

    使用说明

    强烈建议您在测试环境测试充分在上生产,如遇到问题请及时反馈

    下载最新版本

    gitee: https://gitee.com/samwaf/SamWaf/releases

    github: https://github.com/samwafgo/SamWaf/releases

    快速启动

    Windows

    • 直接启动

      SamWaf64.exe
    • 服务形式

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

    Linux

    • 直接启动

      ./SamWafLinux64
    • 服务形式

      //安装
      ./SamWafLinux64 install 
      
      //启动
      ./SamWafLinux64 start
      
      //停止
      ./SamWafLinux64 stop
      
      //卸载
      ./SamWafLinux64 uninstall

    Docker

    docker run -d --name=samwaf-instance \
               -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 \
               samwaf/samwaf
    
    

    更多docker启动上面的解释 https://hub.docker.com/r/samwaf/samwaf

    启动访问

    http://127.0.0.1:26666

    默认帐号:admin 默认密码:admin868 (注意首次进入请把默认密码改掉)

    升级指南

    注意:升级过程会终止服务,请在闲时进行升级。

    自动升级

    如有新版本页面会弹出升级框进行确认即可发起升级,升级完毕后,页面会自动刷新。

    手动升级

    • 对于直接启动方式

    关闭应用,下载最新程序替换,再手工启动就可以了。

    • 对于以服务形式

      1.先暂停服务
      
      windows: SamWaf64.exe stop
      linux: ./SamWafLinux64 stop
      
      2.替换最新应用文件
      
      3.启动
      windows: SamWaf64.exe start
      linux: ./SamWafLinux64 start

    PS:windows服务形式升级时候貌似会触发360、火绒规则导致无法正常替换新文件。此时可以手工替换。
    熟悉这方面的朋友可以帮看下正确方式怎么处理。

    在线文档

    在线文档

    代码相关

    代码托管

    • gitee
      https://gitee.com/samwaf/SamWaf
    • github
      https://github.com/samwafgo/SamWaf

    介绍和编译

    How to compile
    编译说明

    已测试支持的平台

    已测试支持的平台

    测试效果

    测试效果

    安全策略

    安全策略

    问题反馈

    当前 SamWaf 还正在不停迭代,欢迎大家反馈问题、提出意见

    • gitee issues
    • github issues
    • 邮件反馈:samwafgo@gmail.com

    许可证书

    SamWaf 采用 Apache 2.0 license. 详细见 LICENSE .

    第三方软件使用声明,见ThirdLicense

    贡献代码

    感谢以下小伙伴对本仓库的贡献!



    本文著作权归作者 [ 陈十一 ] 享有,未经作者书面授权,禁止转载,封面图片来源于 [ 互联网 ] ,本文仅供个人学习、研究和欣赏使用。如有异议,请联系博主及时处理。
    Waf
    — END —
    Copyright©2012-2026  All Rights Reserved.  Load:0.014 s
    Theme by OneBlog V3.6.5
    夜间模式

    开源不易,请尊重作者版权,保留基本的版权信息。