前言
在网站维护和开发的过程中,我们常常遇到一些痛点。早期使用基于 nginx、apache 或 iis 的插件进行防护时,发现插件形式的耦合度过高,难以满足定制化需求。
后期转向云计算防护方案,但对于小型企业和个人工作室而言,高昂的成-本使得私有化部署变得不太现实。此外,出于隐私保护的需求,我们希望能够对本地数据进行加密处理,并且在管理端与服务器之间的通信也做到安-全加密。
更重要的是,希望能有一款工具让我们可以根据自身需求进行功能定制。如果没有使用过类似 WAF(Web Application Firewall)的话,很难从日志中清晰地了解到网站访问的具体情况。
那么,有没有这样一款软件可以处理这些问题呢?
软件介绍
SamWaf 正是为了处理上述问题而生的一款轻量级网站防火墙。它适用于小公司、工作室乃至个人网站,完全私有化部署,数据加密保存且仅保留在本地。
SamWaf 采用一键启动的方式,支持 Linux 和 Windows 64 位cao作系统,为用户提供了一种简单高-效的方式来保护他们的网站免受异常情况的影响。
特点
-
完全开源:任何人都可以查看和修改源码。
-
私有化部署:无需担心数据泄露问题。
-
轻量化:不依赖任何第三方服务,独立运行。
-
独立引擎:防护功能不依赖于 IIS、Nginx 等服务器软件。
-
自定义防护规则:支持通过脚本和界面编辑规则。
-
支持白名单和黑名单:可以设定允许或拒绝特定 IP 访问。
-
URL 白名单和黑名单:可以控制 URL 的访问权限。
-
数据隐私输出:可选择性地输出界面数据。
-
支持 CC 攻击防护:防止恶意流量导致的服务中断。
-
一键配置:全局设置简单快捷。
-
分网站防护策略:根据不同网站需求设置不同的防护策略。
-
日志加密保存:确保日志的安-全性。
-
通讯日志加密:传输过程中的信息安-全。
-
信息保存:保护敏感信息不被暴露。
技术架构
SamWaf 采用了先进的技术架构,确保其高-效稳定的同时,也提供了强大的扩展性和安-全性。
部署方式
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 方式
version: '3.8'
services:
samwaf-instance:
image: samwaf/samwaf
container_name: samwaf-instance
ports:
- "26666:26666"
- "8089:80"
- "443:443"
volumes:
- ./conf:/app/conf
- ./data:/app/data
- ./logs:/app/logs
restart: unless-stopped
启动访问
访问地址:127.0.0.1:26666
默认账号:admin
密码:admin868
(登录建议立即更改密码)
核心功能
SamWaf 的一些核心功能可以通过实际cao作来更好地理解。
下面我们将详细介绍几个主要功能点:
1. 添加主机
在 SamWaf 中添加主机是指将你的网站或应用纳入防火墙的保护范围之内。这个过程通常涉及到以下几个步骤:
-
配置域名或 IP 地址:需要设定你要保护的网站的域名或 IP 地址。
-
设置端口:对于 HTTP 和 HTTPS 请求,默认端口分别为 80 和 443,但如果你的应用使用了非标准端口,则需要在这里进行配置。
-
选择防护策略:可以选择默认的防护策略,或者根据实际情况自定义防护规则。
2. 查看攻击日志
SamWaf 提供了详细的日志记录功能,可以帮助你了解网站遭受的攻击情况。这些日志通常包括但不限于:
-
时间戳:记录攻击发生的时间。
-
IP 地址:发起攻击的客户端 IP 地址。
-
请求类型:HTTP 请求的方法(GET, POST 等)。
-
请求 URL:被攻击的具体 URL。
-
攻击类型:根据预设规则识别的攻击类型(如 SQL 注入、XSS 等)。
通过查看这些日志,你可以分析攻击模式,从而采取相应措施加强防御。
3. 配置 CC 攻击防护
CC 攻击(Challenge Collapsar,通常指的是利用大量合法请求占用大量网络资源,从而导致服务器资源耗尽)是一种常见的 DDoS 攻击方式。SamWaf 提供了 CC 攻击的防护机制,主要包括:
-
设置访问频率限制:可以为每个 IP 设置单位时间内允许的请求数量。
-
触发阈值:当达到设定的访问频率上限时,系统将自动采取措施阻止进一步的请求。
-
响应策略:可以选择返回错误页面、验证码验证或其他响应方式来处理超出限制的请求。
4. 管理 IP 黑白名单
-
黑名单:可以将已知的恶意 IP 地址加入黑名单,阻止它们访问你的网站。
-
白名单:可以设置信任的 IP 地址,这些 IP 发起的请求将被优先处理或绕过某些安-全检查。
5. 管理 URL 黑白名单
-
黑名单:可以将已知的危险 URL 加入黑名单,防止用户访问。
-
白名单:可以设定哪些 URL 是允许访问的,所有未列出的 URL 将被拦截
结语
SamWaf 以其轻量、安全、易用的特点,成为了小公司、工作室和个人网站的理想选择。通过 SamWaf,您可以有效地保护网站免受威胁,并且能够根据自身需求进行灵活配置。
源码:https://gitee.com/samwaf/SamWaf
http://127.0.0.1:26666
默认帐号:admin 默认密码:admin868