项目简介
本项目是基于Linux内核的网络应用过滤系统,借助内核模块对网络流量进行监控与过滤。系统能加载预定义的应用特征配置,识别并过滤特定网络流量,还提供用户空间接口进行动态配置和管理。
项目的主要特性和功能
- 网络客户端信息管理:利用
/proc
文件系统展示当前连接客户端的MAC和IP地址,提供读取和管理客户端信息的接口。 - 日志系统管理:初始化和管理日志系统配置,涵盖日志级别、测试模式等,可通过
/proc/sys/oaf/
路径下的参数动态调整。 - 基础工具函数:提供获取时间戳、检查本地网络IP等基础工具函数,支持字符串解析和格式化输入输出。
- 应用过滤功能:加载应用特征列表识别特定网络应用,依据预设特征过滤网络流量,更新客户端应用访问信息。
- 配置管理:处理网络应用过滤配置,如添加、删除应用ID,设置MAC地址列表,通过字符设备与用户空间交互。
- JSON处理:提供JSON解析和生成功能,用于处理配置文件和用户消息。
- 正则表达式匹配:实现正则表达式的编译和匹配,处理复杂过滤规则。
- Ubus接口:通过Ubus接口提供设备访问列表、访问时间等服务。
安装使用步骤
假设用户已经下载了本项目的源码文件。
1. 编译内核模块:进入项目目录,使用make
命令编译内核模块。
2. 加载内核模块:使用insmod
命令加载编译好的内核模块。
3. 配置和管理:通过/proc/sys/oaf/
路径下的参数动态调整日志系统和应用过滤的配置;使用字符设备接口进行动态配置和管理。
4. 运行和监控:启动应用过滤系统,监控网络流量并根据配置进行过滤;通过/proc
文件系统查看和管理网络客户端信息。
下载地址
点击下载 【提取码: 4003】【解压密码: www.makuang.net】