介绍
SSlogs 是一款面向日志分析场景的轻量化开源工具,其核心架构整合了结构化日志解析、多维度特征提取与智能语义分析能力,可适配 Web 服务日志(如 Nginx 访问日志)、系统运维日志(如 dpkg 包管理日志)等多类型日志格式的解析需求。该工具依托配置化的规则引擎实现日志字段的精准提取,结合 AI 驱动的异常行为识别算法,能够对日志数据中的访问特征、异常请求及潜在安全风险进行量化分析,同时支持 GeoIP 地理位置映射与多维度可视化输出,为网络运维与安全审计领域的日志研判提供了标准化、可复现的分析范式。
从技术范式来看,SSlogs 采用模块化设计思路,将日志读取、格式适配、特征工程与智能分析解耦,通过 YAML 配置文件实现日志路径、解析规则与分析维度的灵活定义,兼容 Linux 系统下主流日志存储路径与权限管理机制。其核心价值在于突破传统人工日志审计的效率瓶颈,借助自动化的语义解析与模式匹配技术,将非结构化的日志文本转化为结构化的分析指标,为运维人员与安全研究者提供可量化的日志分析结论,在网络安全态势感知、服务性能诊断等场景中具备显著的实用价值与学术研究参考性。
本文将详细介绍如何在 Kali Linux 虚拟机(推荐生产 / 测试环境)和 Windows 主机 / 虚拟机 上部署、配置并使用 SSlogs,结合 AI 能力实现智能安全日志分析,步骤清晰且覆盖核心功能验证。
操作系统:
Linux 或 Windows 10/11/Server 2019+
Python 版本:3.8+(必须,低版本会导致依赖安装失败)
网络:能访问 GitHub(克隆项目,也可以用文末压缩包)、可选访问 AI 服务商接口(云端 DeepSeek)
硬件:至少 4GB 内存(本地 AI 模式建议 16GB+)
基础配置--工具部署--基本用法
更新系统包(确保依赖库最新)
sudo apt update && sudo apt upgrade -y安装Python3、pip、git
sudo apt install python3 python3-pip git wget -y安装虚拟环境工具
sudo apt install python3-venv -y验证安装(检查版本,安装是否成功,以及确保Python≥3.8)
python3 --version pip3 --version git --version克隆项目代码
git clone https://github.com/wooluo/SSlogs.git如果克隆失败或者网络异常,可以下载文末压缩包,将解压后文件夹通过VMtool克隆给kali
进入项目目录
cd SSlogs创建虚拟环境
python3 -m venv venv激活虚拟环境
source venv/bin/activate出现红框框中的地方就是成功了
安装项目所需依赖(要等的时间有些长)
pip3 install -r requirements.txt配置 GeoIP 数据库:
登录
https://www.maxmind.com/en/home注册一个MaxMind账户
登录
如图所示下载对应压缩包
解压后里面就是我们需要的GeoLite2-Country.mmdb文件
将GeoLite2-Country.mmdb复制到Kali的SSlogs的config文件夹
配置 AI 服务,我用的是硅基流动的云端Deepseek
编辑config.yaml
nano config.yaml选项一:使用云端 DeepSeek (推荐)
deepseek: api_key: "your-api-key-here" # 替换为实际API密钥 ai: type: "cloud" cloud_provider: "deepseek"选项二:使用本地 Ollama
ai: type: "local" local_provider: "ollama" ollama: model: "deepseek-r1:14b" base_url: "http://localhost:11434/api/chat"选项三:使用 LM Studio (v3.1新增)
ai: type: "local" local_provider: "lm_studio" lm_studio: base_url: "http://localhost:1234/v1/chat/completions" model: "auto" # 自动检测可用模型基本用法
# 基础日志分析(交互式输入主机IP) python main.py --config config.yaml # 启用AI智能分析(推荐) python main.py --config config.yaml --ai # 直接指定主机IP地址 python main.py --config config.yaml --ai --server-ip 192.168.1.100 # 从日志样例自动生成解析规则 python main.py --generate-rules "192.168.1.1 [10/Oct/2023:13:55:36] \"GET /index.php HTTP/1.1\" 200 1234" # v3.1新增:使用LM Studio进行本地AI分析 python main.py --config config.yaml --ai --lm-studioWindows 部署方法
若需在 Windows 上部署,核心步骤一致,仅命令行适配:
安装基础工具
下载 Python 3.8+:
https://www.python.org/downloads/(勾选 “Add Python to PATH”)下载 Git:
https://git-scm.com/download/win(默认安装即可)验证:打开 CMD/PowerShell,执行
python --version git --version进入powershell,克隆仓库
git clone https://github.com/wooluo/SSlogs.git cd SSlogs安装依赖
pip install -r requirements.txt下载GeoIP数据库方法同上
配置 config.yaml
用记事本打开 SSlogs 目录,config.yaml 文件,粘贴 Linux 步骤 5.2 的配置
保存时注意:编码为 UTF-8,文件名无后缀(避免 config.yaml.txt)
运行 SSlogs
使用:
命令行模式(默认)
# 启动命令行界面 python main.py --config config.yaml # 启用AI智能分析(推荐) python main.py --config config.yaml --ai # 直接指定主机IP地址 python main.py --config config.yaml --ai --server-ip 192.168.1.100 # 从日志样例自动生成解析规则 python main.py --generate-rules "192.168.1.1 [10/Oct/2023:13:55:36] \"GET /index.php HTTP/1.1\" 200 1234"图形用户界面模式
PyQt6版本(推荐)
# 启动PyQt6图形用户界面 python launcher.py --gui # 启动支持LM Studio的GUI界面 python launcher.py --gui --lm-studio如果遇到GUI依赖问题,请先安装PyQt6:
pip install PyQt6资源
github地址:
https://github.com/wooluo/SSlogs.git
通过网盘分享的文件:SSlogs.zip
链接:
https://pan.baidu.com/s/1pE1xn_V43r658M3bP1u9ow?pwd=3cqg 提取码: 3cqg
--来自百度网盘超级会员v3的分享