Linux防火墙iptables(三)

Linux防火墙iptables(三)

我们前面两篇已经把iptables介绍的比较充分了,今天来说一个iptables对layer 7的实践。我们说过iptables/netfilter工作在内核空间是不支持应用层协议的,但是诸如QQ、MSN、迅雷等应用我们是无法在传输层或者网络层完全封闭它们的,因为它们非常狡猾发现自己的端口被封掉之后会用其它打开的端口进行传输数据,所以只有在7层中封闭它们才行。所以有人就针对这种情况对iptables/netfilter进行了二次开发,写了一些补丁,我们打上这些补丁可以使iptables支持7层协议。

因为iptables-l7的作者在09年之后就没有在更新过这个补丁,所以它所依赖的内核版本和iptables程序包都比较老,所以我们需要自己编译内核,自己编译iptables才能使用。

我们需要用到以下几个包:

安装编译环境:

创建编译所需用户、解压内核文件:

向内核打layer 7的补丁:

配置并编译内核:

为了节省时间,我们用系统自带的config文件做模板在其基础上进行修改

选择网络功能:

选择网络选项:

选择netfilter模块:

选择netfilter核心配置:

添加支持layer7层模块:

关闭RedHat内核模块校验:

保存退出:

因为红帽为了防止其它人更改其内核模块进行二次发行,所以添加了模块签名机制,我们的模块没有红帽的签名,所以需要关闭这个功能才能编译成功。

#yum install screen -y

#screen

#make –j 4

#make modules_install

#make install

查看新内核是否安装成功:

使用新内核启动:

编译前的准备工作:

编译安装:

设置配套的脚本和配置文件:

安装layer7的补丁:

开启连接追踪功能:

构建实验拓扑:

NAT Server:192.168.1.0/24, 192.168.23.0/24

Client:192.168.23.0/24

创建NAT条目:

可以看到Client的确是通过NAT Server上网的:

现在QQ也可以登录:

设置layer7层条目拒绝QQ:

已经登录失败了:

匹配到的layer7的规则:

还是能够上网:

匹配到的NAT规则:

拒绝QQ连接的原理:

OK,我们的实验成功啦。可以有效的防止QQ登录,但是还可以上网。虽然我们可以完成这样甚至限制更多的7层服务的功能,但是我是不赞成公司使用的,因为只有自由开放的公司才有活力,靠权利去禁止某些东西归根结底治标不治本。如有错误敬请指出。

原创声明,本文系作者授权云+社区发表,未经许可,不得转载。

如有侵权,请联系 yunjia_community@tencent.com 删除。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏林德熙的博客

win10 uwp 无法附加到CoreCLR 查询临时变量:

本文说的是在vs调试无法附加到CoreCLR。拒绝访问。已经如何去解决,可能带有一定的主观性和局限性,说的东西可能不对或者不符合每个人的预期。如果觉得我有讲的不...

731
来自专栏*坤的Blog

Word文件乱码XML

一个朋友写的文档因为异常关机,导致全部文件变成了xml的乱码,正好帮他解决了,感觉这些或许有些帮助,就先记录下来了.

3329
来自专栏喵了个咪的博客空间

[喵咪PHP]页面显示空白问题

#[喵咪PHP]页面显示空白问题# ? ##前言## 哈喽!大家好啊,喵咪PHP第一次和大家见面了,熟悉的朋友呢也之道喵咪我也开了喵咪Liunx和喵咪Golan...

36011
来自专栏较真的前端

关于webpack的面试题总结

本文首发于前端面试总结@知乎专栏,各位可以通过点击文章下方的阅读原来来访问原文地址

5.6K6
来自专栏乐沙弥的世界

HeartBeat 集群组件概述

932
来自专栏ShaoYL

GitHub 使用手册 - 基础篇

4508
来自专栏xingoo, 一个梦想做发明家的程序员

RequireJS实例分析

  随着JS越来越庞大,已经不仅仅是以前复制粘贴做特效的时代了,JS越来越偏向于业务逻辑与应用。恰逢Node的流行,JS在web开发中占有越来越重要的地位。由...

3025
来自专栏编程

Linux常用网络工具总结(一)

本文整理了在实践过程中使用的Linux网络工具,这些工具提供的功能非常强大,我们平时使用的只是冰山一角,比如、、、等。 本文不会深入研究这些命令的强大用法,因为...

3217
来自专栏web前端

JavaWeb 入门1

一、相关基础知识 1、C/S(Client/Server)架构和B/S(Browser/Server)架构 首先说C/S架构,简单讲其实很常见,类似QQ等需要下...

20710
来自专栏令仔很忙

静态网页VS动态网页

在做《牛腩新闻发布系统》的时候,建立的网页有.html的,还有.aspx,刚开始接触,还以为这些东西是一样的呢,当看ASP.NET视频的时候,听见里面讲课的老...

1981

扫码关注云+社区

领取腾讯云代金券