Add complete French (fr) and Chinese (zh) translations for all documentation: - Root files: README, CHANGELOG, SECURITY, BETA-RELEASE - docs/: All 16 core documentation files - DOCS/: All 19 deep-dive documents including embedded/ and archive/ - package/secubox/: All 123+ package READMEs - Misc: secubox-tools/, scripts/, EXAMPLES/, config-backups/, streamlit-apps/ Total: 346 translation files created Each file includes language switcher links for easy navigation between English, French, and Chinese versions. Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
6.1 KiB
6.1 KiB
SecuBox App - CrowdSec
版本
- 软件包:secubox-app-crowdsec
- CrowdSec 核心:v1.7.4
- 发布版本:3
- 最后更新:2025 年 1 月
描述
CrowdSec 是一个开源、轻量级的安全引擎,用于检测和响应恶意行为。此 SecuBox 软件包为 OpenWrt 路由器提供 CrowdSec,并支持自动日志采集配置。
主要功能 (v1.7.4)
- 具有 DropRequest 助手的 WAF 功能,用于请求阻止
- 使用 RestartableStreamer 重构的 syslog 采集
- 可选的纯 Go SQLite 驱动,提供更好的兼容性
- 增强的日志配置,支持 syslog 媒体
- 可配置的使用指标导出 (api.server.disable_usage_metrics_export)
- 修复了 Prometheus 的 LAPI 指标基数问题
- 防止 Docker 采集中的数据竞争
- 决策流的数据库查询优化
- 自动 OpenWrt 日志采集配置
- 基于 UCI 的采集管理
软件包内容
- Makefile:CrowdSec v1.7.4 的 OpenWrt 软件包定义
- files/:配置和初始化脚本
crowdsec.initd:服务管理的初始化脚本crowdsec.config:UCI 配置(包含采集设置)crowdsec.defaults:带自动检测的默认配置acquis.d/:采集配置模板openwrt-syslog.yaml:系统 syslog 日志openwrt-dropbear.yaml:SSH/Dropbear 日志openwrt-firewall.yaml:iptables/nftables 防火墙日志openwrt-uhttpd.yaml:uHTTPd Web 服务器日志
安装
# 从 SecuBox 构建环境
cd /home/reepost/CyberMindStudio/_files/secubox-openwrt
make package/secubox/secubox-app-crowdsec/compile V=s
# 在路由器上安装
opkg install crowdsec_1.7.4-3_*.ipk
配置
UCI 配置
CrowdSec 使用 UCI 进行配置,位于 /etc/config/crowdsec:
# 查看当前配置
uci show crowdsec
# 主要设置
uci set crowdsec.crowdsec.data_dir='/srv/crowdsec/data'
uci set crowdsec.crowdsec.db_path='/srv/crowdsec/data/crowdsec.db'
# 采集设置
uci set crowdsec.acquisition.syslog_enabled='1'
uci set crowdsec.acquisition.firewall_enabled='1'
uci set crowdsec.acquisition.ssh_enabled='1'
uci set crowdsec.acquisition.http_enabled='0'
uci set crowdsec.acquisition.syslog_path='/var/log/messages'
# Hub 设置
uci set crowdsec.hub.auto_install='1'
uci set crowdsec.hub.collections='crowdsecurity/linux crowdsecurity/iptables'
uci set crowdsec.hub.update_interval='7'
uci commit crowdsec
文件位置
- 主配置:
/etc/crowdsec/config.yaml - 采集目录:
/etc/crowdsec/acquis.d/ - 旧版采集:
/etc/crowdsec/acquis.yaml - 配置文件:
/etc/crowdsec/profiles.yaml - 本地 API:
/etc/crowdsec/local_api_credentials.yaml - 数据目录:
/srv/crowdsec/data/
日志采集配置
自动检测
首次启动时,defaults 脚本会自动:
- 检测 OpenWrt 日志文件配置
- 识别已安装的服务(Dropbear、防火墙)
- 生成适当的采集配置
- 安装推荐的 Hub 集合
支持的日志源
| 日志源 | 默认 | 所需集合 |
|---|---|---|
| 系统 Syslog | 启用 | crowdsecurity/linux |
| SSH/Dropbear | 启用 | crowdsecurity/linux |
| 防火墙 (iptables/nftables) | 启用 | crowdsecurity/iptables |
| HTTP (uHTTPd/nginx) | 禁用 | crowdsecurity/http-cve |
自定义采集
在 /etc/crowdsec/acquis.d/ 中添加自定义采集配置:
# /etc/crowdsec/acquis.d/custom.yaml
filenames:
- /var/log/custom-app/*.log
labels:
type: syslog
Syslog 服务模式
将 CrowdSec 作为 syslog 服务器运行(接收其他设备的日志):
uci set crowdsec.acquisition.syslog_listen_addr='0.0.0.0'
uci set crowdsec.acquisition.syslog_listen_port='514'
uci commit crowdsec
/etc/init.d/crowdsec restart
服务管理
# 启动 CrowdSec
/etc/init.d/crowdsec start
# 停止 CrowdSec
/etc/init.d/crowdsec stop
# 重启 CrowdSec
/etc/init.d/crowdsec restart
# 检查状态
/etc/init.d/crowdsec status
CLI 使用
CrowdSec CLI 通过 cscli 可用:
# 检查版本
cscli version
# 检查采集状态
cscli metrics show acquisition
# 列出决策
cscli decisions list
# 查看警报
cscli alerts list
# 管理集合
cscli collections list
cscli collections install crowdsecurity/nginx
# 管理 Hub
cscli hub update
cscli hub upgrade
# 管理 bouncers
cscli bouncers list
cscli bouncers add firewall-bouncer
OpenWrt 的 Hub 集合
推荐集合
# 核心 Linux 检测(SSH 暴力破解等)
cscli collections install crowdsecurity/linux
# 防火墙日志分析(端口扫描检测)
cscli collections install crowdsecurity/iptables
# Syslog 解析
cscli parsers install crowdsecurity/syslog-logs
# 白名单以减少误报
cscli parsers install crowdsecurity/whitelists
可选集合
# HTTP 攻击检测
cscli collections install crowdsecurity/http-cve
# nginx 日志
cscli collections install crowdsecurity/nginx
# Smb/Samba
cscli collections install crowdsecurity/smb
与 SecuBox 集成
此软件包集成:
- luci-app-crowdsec-dashboard v0.5.0+
- secubox-app-crowdsec-bouncer - 防火墙 bouncer
- SecuBox 主题系统
- SecuBox 日志(
secubox-log)
依赖项
- Go 编译器(构建时)
- SQLite3
- OpenWrt 基础系统
参考
- 上游:https://github.com/crowdsecurity/crowdsec
- 文档:https://docs.crowdsec.net/
- Hub:https://hub.crowdsec.net/
- 采集文档:https://docs.crowdsec.net/docs/next/log_processor/data_sources/intro/
- SecuBox 项目:https://cybermind.fr
更新日志
v1.7.4-3 (2025-01)
- 添加自动日志采集配置
- 添加基于 UCI 的采集管理
- 添加带有 OpenWrt 特定模板的 acquis.d 目录
- 改进 Hub 集合自动安装
- 添加 syslog、SSH/Dropbear、防火墙、HTTP 采集
- 增强的 defaults 脚本带检测逻辑
v1.7.4-2 (2024-12)
- 从 v1.6.2 更新到 v1.7.4
- 添加 WAF/AppSec 支持
- 改进 syslog 采集
- 增强指标导出配置
- 修复 Prometheus 基数问题
v1.6.2-1(之前)
- 初始 SecuBox 集成
- 基本 OpenWrt 兼容性补丁
许可证
MIT 许可证
维护者
CyberMind.fr - Gandalf gandalf@gk2.net