部队简介
中型局域网,100-200用户数量。局域网内的电脑只能访问内网,无法访问外网。在交换机上已经设置一台服务器,计划在局域网内单独设置一台专用的文件服务器,用于存储共享文件,文件数量非常多,大概有上万个,格式均不同。
管理需求
● 非管理人员,都只能查看服务器上的共享文件,对于没有权限的用户,或者非法接入局域网的用户,禁止其查看共享文件或者设置对其隐藏。
● 详细记录每个用户在什么时间、访问过哪个文件,包括IP、MAC地址、计算机名、用户名、路径等信息。记录可以批量导出,分类查看。
解决方案
大势至公司根据用户提供的网络拓扑图和需求,决定通过串接、桥接的方式,在服务器和交换机之间部署大势至局域网共享文件管理系统(硬件版)。然后将共享文件全部导入系统中,对所有用户设置只允许读取的权限,同时安装数据库,开始记录日志。
设置完成后,用户直接通过IP地址访问共享文件即可。
技术特点
本系统基于NDIS核心层文件过滤驱动进行实现,并针对不同操作系统版本集成了Windows操作系统各个版本的NDIS版本,从而保证了系统的兼容性。具体处理流程如下:
其中,最上层是一个NDIS Protocol Driver,它向上提供一个Transport Driver Interface(TDI),向下通过NDIS接口与下面的NDIS中间层的上边界交互,NDIS中间层的下边界通过NDIS接口与下层的NDIS Miniport Driver交互。最后,由NDIS Miniport Driver利用NDIS接口与物理网络设备NetCard交互。
同时,本系统对共享文件访问动作的识别基于SMB、SMB2协议来实现。为了识别用户对共享文件的各类动作(比如删除、重命名等),需要对SMB、SMB2协议进行全解析;由于SMB/SMB2协议存在上下文,因此在会话开始和结束的时候要对信息进行保存,会话进行过程中根据应用程序设置的规则对共享文件的路径和行为进行判定,如果不符合权限要求,修改网络包信息,使得SMB服务器拒绝访问。需要注意的是,修改网络包后,要根据PSD信息修改TCP、IP校验码,否则TCP协议栈会拒绝此网络包。
另外,对于用户的其他动作(如另存为、打印、拷贝文件内容等),由于是在用户已经打开了共享文件的情况下进行的上述动作,此时共享文件已经缓存到本地磁盘,因此对用户访问共享文件某些权限的控制需要在用户电脑运行客户端(如果不运行将会阻止其读取共享文件),运行客户端后将会根据服务端配置的权限,阻止用户的各类行为;为了防止用户随意关闭软件,采用了双进程保护的策略。即使用户使用特殊技术手段结束进程,服务端发现客户端结束后,也会拒绝用户的进一步访问行为。