案例需求 ——公司最近发现有很多员工在工作期间使用QQ、MSN等工具聊天,严重影响工作效率。为了加强工作纪律管理,公司采取了一些行政手段禁止员工采用类..."> 案例需求 ——公司最近发现有很多员工在工作期间使用QQ、MSN等工具聊天,严重影响工作效率。为了加强工作纪律管理,公司采取了一些行政手段禁止员工采用类..." /> 案例需求 ——公司最近发现有很多员工在工作期间使用QQ、MSN等工具聊天,严重影响工作效率。为了加强工作纪律管理,公司采取了一些行政手段禁止员工采用类..." />
用户登录
用户注册

分享至

IPTABLES防火墙&&Layer7应用层过滤策略

  • 作者: 随便42014966
  • 来源: 51数据库
  • 2020-09-19
editor-side-new">

案例需求

——公司最近发现有很多员工在工作期间使用QQ、MSN等工具聊天,严重影响工作效率。为了加强工作纪律管理,公司采取了一些行政手段禁止员工采用类似工具私自聊天,同时要求网络管理员在网关服务器上做相应的技术封锁。由于使用IP地址和端口号过滤的方式灵活性较差,需要为netfilter/iptables体系增加Layer7补丁,以更便于对员工的应用层访问进行控制

需求描述

重新编译Linux内核,添加l7-filter应用层过滤补丁

重新编译iptables,添加l7-filter应用层过滤补丁

设置过滤规则,禁止使用QQ、MSN等聊天工具

设置过滤规则,禁止使用BT、电驴等下载工具

实现思路

1. 解压释放netfilter-layer7和Linux内核源码包,使用patch工具合并补丁文件

2. 重新配置内核编译参数,添加state机制及layer7支持

附:

在配置界面中的操作

方向键á、a、?、à用于定位功能项、菜单项

菜单项 <Select>、<Exit>、<Help>

空格键用于选择配置类型

对不同功能的配置选择

[ ]:空选时表示不需要在新内核中使用该功能

[ M ]:表示将此项功能编译为模块,以便在需要时加载

[ * ]:将此项功能直接编入新内核,作为新内核的一部分

A. Code Netfilter Configuration 网络过滤代码配置

B. IP: Netfilter Configuration IP包过滤功能配置

3. 编译新内核,并安装新内核文件、复制模块文件(编译(make)的过程耗时有点儿长啊)

4. 调整GRUB引导菜单,使系统默认以新内核启动,然后重启主机(因默认仍然以老的内核启动系统)

5. 卸载系统原有的iptables相关软件包

6. 解压释放iptables源码包,并应用补丁文件(复制到extensions子目录即可)

7. 配置、编译并安装iptables,需使用”—with-ksource”参数指定内核源码路径

8. 安装L7-protocols协议定义包

9. 使用iptables设置应用层过滤功能(这里我编写了一个Shell脚本,便于移植)

注意事项

为了节省编译时间,可直接从“make modules_install”步骤开始即可

注意选择的layer7补丁文件要与内核、iptables的版本相匹配

附:layer7应用层过滤功能

默认 netfilter/iptables 体系的不足

以基于网络层的数据包过滤机制为主,同时提供少量的传输层、数据链路层的过滤功能

难以判断数据包对应于何种应用程序(如QQ、MSN)

netfilter-layer7 补丁包的作用

由“L7-filter”项目提供

源码站点位于 http://l7-filter.sourceforge.net

通过为Linux内核、iptables添加相应的补丁文件,重新编译安装后提供基于应用层(第7层)的扩展功能

通过独立的 l7-protocols 协议包提供对各种应用层数据的特征识别定义,便于更新

使用的软件包列表

Linux内核源码包:linux-2.6.28.8.tar.bz2

iptables源码包:iptables-1.4.2.tar.bz2

layer7补丁源码包:netfilter-layer7-v2.21.tar.gz

协议定义包:l7-protocols-2009-05-10.tar.gz

 

pdf资料下载: http://down.51cto.com/data/102033

附件:http://down.51cto.com/data/2356209
软件
前端设计
程序设计
Java相关