🌍 获取天气中...
在线2FA 开发工具 IP查询 友情链接
首页 PHP 员工上网行为管理系统
PHP

员工上网行为管理系统

原创 作者: 童建平 2010-10-19

系统概述

本系统是一套基于 PHP + MySQL 架构的员工上网行为管理系统(B/S架构),由**雄鹰(童建平)**设计开发,主要用于企业内部员工上网行为的监控、审计与管理。系统采用经典的 iframe MDI(多文档界面)架构,所有功能模块以标签页形式在主框架内打开,提供统一的操作体验。

  • 系统名称:美亚柏科网络管理系统
  • 版本号:2010.11.19
  • 开发者:雄鹰(童建平)
  • 官方网站www.xmyy.com
  • 字符编码:GB2312

IBM

技术架构

项目 说明
后端语言 PHP(原生PHP,无框架)
数据库 MySQL
前端技术 JavaScript + CSS + iframe
界面架构 MDI 多标签页(iframe-based)
字符编码 GB2312
邮件组件 PEAR Mail + SMTP
Excel处理 Spreadsheet_Excel_Writer / excel_reader
部分加密 Zend Encoder(部分业务文件加密)
操作系统 支持 Windows / Linux

系统目录结构

meiya/
├── index.php              # 系统主入口(MDI框架页面)
├── login.php              # 登录页面
├── login_check.php        # 登录验证逻辑
├── logout.php             # 登出处理
├── top.php                # 顶部横幅
├── topmenu.php            # 顶部导航菜单(动态权限菜单)
├── tool.php               # 标签页工具栏
├── pass.php               # 随机密码生成器
├── version.php            # 版本信息页
├── close.htm              # 窗口关闭辅助页(VPN场景)
├── Mail.php               # 邮件发送入口
├── common/                # 公共核心目录
│   ├── config.php         # 数据库及系统配置
│   ├── global.php         # 全局配置引入与初始化
│   ├── global_fuc.php     # 全局函数库(核心)
│   ├── mysql.class.php    # MySQL数据库操作类
│   ├── session.class.php  # Session管理类
│   ├── email.class.php    # 邮件发送类
│   ├── validator.php      # 数据验证器
│   ├── excel_reader.php   # Excel读取器
│   ├── excel_reader2.php  # Excel读取器扩展
│   ├── confighardware.php # 硬件配置
│   └── globalhardware.php # 硬件全局配置
├── left/
│   └── control.php        # 左侧树形菜单控制面板
├── main/                  # 业务功能目录
│   ├── emp_manager.php    # 员工账号管理
│   ├── search.php         # 上网记录查询与导出
│   ├── userinfo.php       # 用户信息映射表
│   ├── countmail.php      # 邮件统计(Zend加密)
│   ├── staffcom.php       # 员工通讯管理(Zend加密)
│   ├── scan.php           # 网络扫描功能(Zend加密)
│   ├── scan5.sh/scan6.sh  # 网络扫描Shell脚本
│   ├── import.sh          # 数据导入脚本
│   ├── impcheck.sh        # 导入检查脚本
│   ├── mailpass.sh        # 邮件密码脚本
│   └── *.exe              # 辅助工具(备份、IPSec、FTP等)
├── ajax/
│   └── ajax_fun.php       # AJAX异步请求处理
├── js/                    # JavaScript脚本目录(27个JS文件)
├── css/                   # 样式表目录(6个CSS文件)
├── images/                # 图片资源目录
├── Mail/                  # PEAR邮件发送库
├── PEAR/                  # PEAR框架库
├── logsee/                # 服务器日志HTML文件(按IP分)
└── source/
    └── mysql/             # 数据库SQL脚本(55个建表/数据文件)

核心功能模块

1. 用户认证与登录系统

  • Session认证机制:基于数据库的Session管理(task_session表),支持自定义Session过期时间(默认300小时)
  • 登录验证:从 emp_list 表验证用户名/密码(MD5加密存储)
  • 自动登录:支持 Cookie 自动登录功能(autologin=1
  • 登录日志:记录合法登录和非法登录尝试(legallog/illegallog),包含IP地址、时间等信息
  • 密码安全:登录时密码MD5传输,前端提供密码强度检测(弱/中/强)
  • IP地址获取:支持多层代理环境下的真实IP获取(HTTP_CLIENT_IP → HTTP_X_FORWARDED_FOR → REMOTE_ADDR)

2. 基于角色的权限控制(RBAC)

  • 多级权限体系:通过 act_list(角色表)和 auth_list(权限/菜单表)实现
  • 菜单权限控制:左侧树形菜单和顶部导航菜单根据用户角色动态生成
  • 四级菜单深度:支持 deep 1~4 级的多级菜单结构
  • 功能级权限:每个功能模块通过 auth() 函数检查用户权限
  • 权限标识:如 emp_listall(查看账号)、emp_add(添加账号)、emp_mod(修改账号)、del_emp(删除账号)、urllog-in(导入记录)、urllog-out(查看记录)等

3. MDI 多标签页窗口管理

  • iframe标签页系统:所有功能页面在 iframe 中打开,支持多标签切换
  • 核心操作MDIOpen(打开)、MDISwitch(切换)、MDIClose(关闭)、MDIRefresh(刷新)、MDIGoBack(后退)
  • 标签页持久化:通过 tab_list 表将打开的标签页保存到数据库,用户重新登录后自动恢复
  • Cookie记忆:打开页面时自动记录到标签列表,关闭时自动删除
  • 标签页标题:自动从 auth_list 表获取页面中文名作为标签标题

4. 员工账号管理

  • 账号CRUD:支持员工账号的查询、添加、修改、删除
  • 账号属性:登录名(316位)、中文名(28位汉字)、角色、密码(MD5加密)
  • 角色分配:从 act_list 表读取可用角色列表进行分配
  • 账号搜索:支持按登录名或中文名模糊搜索
  • 分页显示:列表支持分页浏览(默认每页30条)
  • 表格排序:前端支持点击表头排序
  • 密码强度检测:添加/修改账号时前端实时检测密码强度

5. 上网行为记录管理

  • 日志导入:从多台服务器(172.16.0.x 网段)的 HTML 日志文件中解析并导入上网记录到数据库
  • 记录解析:解析服务器生成的 HTML 文件,提取URL、标题、时间、用户名、IP等信息
  • 多条件搜索
    • 按姓名搜索
    • 按IP地址搜索
    • 网址模糊搜索
    • 违规网址搜索(支持多关键字逗号分隔)
  • 时间范围过滤:支持自定义起止时间的记录筛选
  • 违规检测:可配置违规网址关键字,自动过滤工作时间(08:40~11:50, 13:15~18:00)内的违规上网记录
  • 人员过滤:支持过滤特定人员(如免监控人员、已离职人员)
  • Excel导出:搜索结果可导出为 Excel 文件(.xls),包含明细和统计两个工作表
  • 员工-IP映射:通过 userinfo.php 维护用户名到真实姓名、IP到用户名的映射关系

6. 屏幕锁定(安全保护)

  • 自动锁屏:用户无操作超过设定时间后自动锁定屏幕(通过 auto_lock_wait_time 参数配置)
  • 手动锁屏:支持手动触发屏幕锁定
  • 解锁机制:需要输入密码才能解锁
  • 状态管理:通过 Session 的 screen_safe_status 状态控制(lock/unlock)

7. 功能参数配置

  • 系统级参数:全局默认的功能参数设置
  • 用户级参数:每个用户可自定义覆盖系统参数
  • 参数存储:通过 parameter_db_list 表存储
  • 参数类型:支持多种参数类型,如 auto_lock_wait_time(自动锁屏等待时间)等
  • 参数继承:用户修改参数时,如果系统参数存在则创建用户级副本

8. 左侧树形菜单

  • dTree组件:基于自研的 JavaScript dTree 树形控件
  • 动态生成:根据用户权限从 auth_list 表动态生成菜单树
  • 多级展开:支持文件夹展开/折叠,四级菜单深度
  • 节点图标:支持根节点、文件夹、页面等多种图标样式
  • 选中高亮:点击菜单项高亮显示当前选中状态
  • Cookie状态保存:菜单展开/折叠状态通过Cookie持久化

9. 邮件管理

  • SMTP发送:通过 PEAR Mail 库支持 SMTP 方式发送邮件
  • 邮件统计:支持邮件收发统计功能(countmail 模块)
  • 多服务器支持:支持从多台邮件服务器统计数据

10. 网络扫描与监控

  • IP扫描:通过 Shell 脚本(scan5.shscan6.sh)进行网络扫描
  • IPSec VPN:集成 eagleipsec.exe 支持 VPN 连接管理
  • FTP上传:集成 ncftpput.exe 支持文件上传
  • 数据导入:通过 import.sh 脚本自动化导入监控数据
  • 日志查看logsee/ 目录存放各服务器的上网日志 HTML 文件

数据库设计

核心数据表

表名 说明
emp_list 员工账号表(登录名、密码、中文名、角色)
act_list 角色定义表(角色名称、权限列表)
auth_list 权限/菜单表(菜单名、链接URL、层级深度、父ID、是否显示)
task_session Session存储表
tab_list 标签页记录表(标签名、链接URL、SessionID、生成时间)
parameter_db_list 功能参数表(参数名、参数值、用户/系统级)
urllist 上网记录表(IP、URL、标题、时间、用户名)
staff 员工信息表(中文名、邮箱等)
legallog 合法登录日志表
illegallog 非法登录日志表

数据表前缀

系统使用 task_ 作为数据表前缀,如 task_session


系统特点

架构特点

  1. 经典B/S架构:无需安装客户端,浏览器即可访问
  2. MDI多文档界面:类似桌面应用的多标签页操作体验
  3. 前后端分离雏形:AJAX异步请求处理(ajax_fun.php
  4. 数据库Session:自定义数据库Session管理,支持分布式部署
  5. 模块化设计:各功能模块独立文件,便于维护和扩展

安全特点

  1. MD5密码加密:用户密码MD5存储
  2. SQL注入防护addslashes 转义处理(daddslashes函数)
  3. XSS防护SafeHtml 函数过滤HTML内容
  4. 权限验证:每个功能模块独立的权限检查
  5. 直接访问防护:核心文件(config.php、global.php)禁止直接访问
  6. 登录日志审计:记录所有登录尝试

运维特点

  1. Shell脚本集成:支持Linux Shell脚本自动化任务
  2. 多服务器日志聚合:支持从多台服务器收集和导入上网日志
  3. Excel导入导出:支持数据批量导入导出
  4. 数据备份:集成备份工具(backup.exe
  5. VPN支持:集成IPSec VPN客户端

用户体验特点

  1. 标签页记忆:关闭浏览器后重新登录自动恢复上次打开的页面
  2. 屏幕锁定:离开工位自动锁屏,保护系统安全
  3. 树形菜单:清晰的树形结构导航
  4. 动态菜单:根据用户权限动态显示可用功能
  5. 密码强度提示:实时密码强度检测反馈
  6. 表格交互:支持排序、分页、行悬停高亮

环境要求

  • Web服务器:Apache / IIS
  • PHP版本:PHP 5.x(支持 mysql_* 函数系列)
  • 数据库:MySQL 5.x
  • 操作系统:Windows / Linux
  • 浏览器:IE 6+(兼容老旧浏览器)
  • 扩展依赖:PEAR(Mail、Spreadsheet_Excel_Writer)

部署说明

  1. 将源码部署到 Web 服务器目录
  2. 修改 common/config.php 中的数据库连接配置
  3. 导入 source/mysql/ 目录下的 SQL 文件创建数据表
  4. 确保 PHP 支持 MySQL 扩展
  5. 访问 login.php 进行系统登录

辅助工具

文件 说明
pass.php 随机密码生成器(支持指定长度)
main/backup.exe 数据备份工具
main/eagleipsec.exe IPSec VPN 客户端
main/ncftpput.exe NFTP 上传工具
main/wget.exe 文件下载工具
main/iehis.exe IE历史记录工具

总结

这是一套功能完整的企业级员工上网行为管理系统,涵盖了用户认证、权限管理、上网记录监控、行为审计、数据导出、邮件管理、网络扫描等核心功能。系统采用经典的 PHP + MySQL 技术栈,界面简洁实用,功能模块划分清晰,特别适合中小型企业对员工上网行为进行规范化管理和审计。