基于Iptables的Linux防火墙设计与实现

来源 :安徽理工大学学报·自然科学版 | 被引量 : 0次 | 上传用户:zhongkelong
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
  摘要:在对现有防火墙技术分析的基础上,描述了一种基于Linux操作系统下iptables服务的小型防火墙系统。网络管理员可以很方便地通过图形用户界面对其进行配置与管理。该系统具有很好的稳定性与可扩展性,能很好地满足小型企业局域网的安全需求。最后给出了该系统的实现。
  关键词:Linux;iptables;防火墙;图形用户界面
  中图分类号:TP393.08 文献标识码:A 文章编号:1672-1098(2009)02-0047-03
  
  随着计算机的普及和互联网的发展,人们的工作、学习和生活已经和网络技术密不可分,网络的安全问题日趋成为人们关注的焦点,防火墙作为一种最为有效地网络安全产品得到了广泛的应用。根据使用的技术不同主要可以将其分为包过滤防火墙、应用层网关防火墙。包过滤防火墙通过检查数据包的地址、协议、端口等信息来决定是否允许此数据包通过。应用层网关防火墙通过自身复制传递数据,检查进出的数据包,防止在受信主机与非受信主机间直接建立联系。与应用层网关防火墙相比,包过滤防火墙具有速度快、效率高的特点。Linux操作系统性能优异、功能强大,其内核中实现了防火墙组件Netfiher,并通过外部的iptables服务来进行配置。以Linux操作系统和Netfilter/iptables为基础,来实现具有包过滤功能、图形用户界面的局域网防火墙。
  
  1 防火墙的结构与功能分析
  
  1.1防火墙系统网络结构
  防火墙就是内部网络与外部网络之间的一道安全防护系统。通过对经过的网络数据包的扫描与分析,过滤掉一些网络攻击并阻止非授权用户访问内部网络。从而大大提高内部网络的安全(见图1)。图1中的防火墙就是采用了Netfiher/iptables机制的Linux服务器,服务器配置有两块网卡,其中一块连接到外网,另一块与交换机(集线器)相连。这样内部的多台主机就可以通过交换机(集线器)访
  1.2防火墙系统功能模块
  经过对现有防火墙系统以及iptables的使用和分析,设计了防火墙系统,包括登陆、基本参数设置、元素及规则定义、规则应用、地址扫描、文件管理和登陆设置模块(见图2)。
  本防火墙系统包括最基本的包过滤和网络地址转换(NAT)功能,它可以满足小型局域网安全性与网络应用。在此基础上添加了MAC地址绑定、自动扫描相邻主机IP地址、基于时间的规则调度以及日志等较为实用的功能。
  
  2 防火墙系统实现
  
  2.1界面设计
  Qt是跨平台的基于C++语言的图形用户界面(GUI)工具包,它是TrollTeeh公司的标志产品。Qt能以漂亮的用户界面,快速而有效地开发软件。Qt又是一种跨平台的GUI工具包,能确保软件非常方便地应用于绝大多数的操作系统,如Mi—crosoft Windows系列,Linux,Solaris,FreeBSD等。Qt类库拥有超过400个c++类,同时还在不断扩展。它封装了用于端到端应用程序开发所需要的所有基础结构。
  


  采用了Qt库来开发防火墙系统的图形用户界面,使用qt Designer设计了登陆界面、防火墙主界面、登陆设置界面、规则文件管理界面以及帮助界面。其中主界面是防火墙的核心界面,它提供了对主要功能的访问和对参数的设置功能(见图3)。
  防火墙主界面包括五个标签页,能分别对防火墙基本参数和规则元素及过滤规则进行设置。顶部的功能按钮提供了对不同服务功能模块的访问。
  为了使界面中的多个对象之间协同工作,需要应用信号和槽来进行组件通信。信号和槽是一种高级接口,应用于对象之间的通信,它是Qt的核心特性,也是Qt区别于其它工具包的重要地方。信号和槽是Qt自行定义的一种通信机制,它独立于标准的C/C++语言,因此要借助称为MOC(Meta Ob-jeet Compiler)的Qt工具来正确的处理信号和槽,该工具是一个c++预处理程序,它为高层次的事件处理自动生成所需要的附加代码。
  
  2.2底层设计
  系统底层需要完成保存用户定义的规则及元素、实现多线程地址扫描、规则的应用以及规则文件的导入和导出等功能。分别进行如下说明:
  (1)数据的保存定义了5个链表类:IpList、Group、GroupList、ServiceList和RuleList,用来保存用户定义的IP地址、地址组、服务和防火墙规则。各个类提供了對用户定义数据的添加、修改、删除、查询和排序等功能,通过程序界面的按钮响应函数来调用对应功能。
  (2)多线程地址扫描Qt提供了丰富的多线程编程支持,在Qt系统中与线程相关的最重要的类是QThread类,该类提供了创建一个新线程以及控制线程运行的各种方法。为了完成所需要的功能,可以从QThread类派生出自己的线程类,重载它的run()函数以实现自己需要的功能。为了实现多线程之间的通信,该派生类可以使用系统提供的信号与槽机制,因此它必须多继承QThread类与QObject类。并声明其信号和槽。
  (3)规则的应用 将规则划分为若干规则参数,包括规则类型、源和目的地址、服务、时间调度参数以及对匹配数据包的操作,利用Qt系统函数system()执行包含了各种参数的SHELL语句,通过它调用编写好的SHELL脚本,向iptables中导入用户所定义的防火墙规则。
  (4)规则文件导入和导出 通过QFile类打开需要写入或读取的文件,再利用它构建QTextStr-eam字符流对象,通过对该对象的操作来逐行的写入或读取规则信息。
  
  2.3时间调度的实现
  Iptables在默认安装时并不具备根据时间来进行规则匹配的功能,需要向Linux系统内核的Netfilter添加时间匹配模块time。可以使用Netfil,ter开发组提供的补丁包patch-o-matic来加入时间匹配模块,对内核进行重新配置并编译所需要的模块。之后再重新编译安装新版本的iptables程序,就可以实现基于时间的规则调度。
  
  3 结束语
  
  本文所设计的基于Iptables的Linux防火墙具有使用简单、配置容易、功能强大等特点,可以满足中小型企业网络安全防护功能。若将功能再进一步扩展,如添加VPN等功能,即可成为具有大型企业级功能的防火墙。
其他文献
摘 要:植物保护专业技能拓展课程是河北农业大学植物保护学院为了更好地践行教育部、农业农村部以及国家林业和草原局对卓越農林人才教育培养计划的要求,专门为卓越农林班学生开设的一门必修课,具有较高的创新性和综合性。但是在教学过程中却发现学生缺乏学习的热情和主动性,参与度低。为此,课程组在课程设计中,深入挖掘课程思政元素和趣味知识点来提升学生的学习热情;教学过程中采用翻转课堂、结合创新创业、以赛促学、改变
期刊
摘 要:以中国知网CNKI数据库为检索源进行“耕地质量监测”主题检索,利用文献计量法对1994—2020年国内刊发的文献进行了统计分析。结果表明:1994—2020年间以“耕地质量监测”为主题发表的文献共计732篇,从2008年开始,年度文献发表量随年份的推移呈显著增加趋势,但高水平文献的数量仍有待于进一步提升。在耕地质量监测领域,发文数量最多的研究机构是中国地质大学(北京),刊文数量最多的期刊是
期刊
摘 要:“田园综合体”模式作为乡村新型产业亮点,并随着宜宾市电子商务平台的拓展与完善,打造“农旅销”一体化信息服务平台已成为促进当地多产业融合发展的重要举措之一。该研究以宜宾市龙溪谷生态产业园区为对象,对其打造“农旅销”一体化信息服务平台的可能性进行了评估,分析了搭建平台过程中可能出现的问题,并提出了相应的对策建议。  关键词:农旅融合;电子商务;宜宾市  中图分类号 F323 文献标识码
期刊
摘 要:少数民族地区资源丰富,特色鲜明,发展旅游业成为特色村寨经济增长新的赋能点,也是推进乡村振兴战略的有力举措。但在实践中也面临内源式动力欠缺、传统民风民俗危机化、特色产业发展后劲不足等困境,阻断着乡村振兴战略的有效推进。因此,做好旅游发展定位、整合旅游资源、复原村民主体的话语权、产业融合发展成为促进少数民族地区高质量发展的有效路径。  关键词:乡村旅游;乡村振兴;发展路径  中图分类号 F32
期刊
摘 要:蔬菜栽培学是一门园艺专业学生的必修专业课程,在培养现代农业技术人才中发挥了重要作用,课程蕴含丰富的思想政治教育资源,在教学过程中充分挖掘和融合其中的思政元素是实现课程“三全育人”目标的新要求。该文从思政元素的挖掘、思政元素与知识教授的融合策略等方面探讨了蔬菜栽培学课程思政教学的改革措施,为蔬菜栽培学课程的隐性德育教育提供改革参考。  关键词:蔬菜栽培学;课程思政;教学改革  中图分类号 G
期刊
摘要:用分光光度法研究了新试剂2-(2-噻唑偶氮)-5-磺丙氨基苯酚(TAsPAP)与镉(Ⅱ)的显色反应性能。在pH=8的Clark—Lubs缓,中溶液中,TASPAP与镉(Ⅱ)形成_配合物,该配合物的最大吸收峰位于550nm波长处,镉(Ⅱ)的量在O~60μg范围内符合郎伯一比尔定律,表观摩尔吸光系数为3.30×104(L·mol-1·cm-1),灵敏度较高,该方法用于镉离子的测定,结果令人满意。
期刊
摘 要:乡村要振兴,脱贫必在先。农业职业学校在精准扶贫中具有丰富的人才、专业、科技等资源优势,精准扶贫不仅是学校履行自己的社会责任和为地方区域经济社会发展服务的重要途径,更是促进自身发展、提升内涵建设的需要。该文结合扶贫工作实际,总结了农业职业学校精准扶贫的有效举措,并就农业职业学校做好精准扶贫与乡村振兴有机衔接提出了几点建议。  关键词:农业职业学校;精准扶贫;乡村振兴  中图分类号 F323
期刊
摘要:基于独立成分分析较强的信号分析能力,提出了一种针对步进频率探地雷达的独立成分分析与中值滤波处理相结合的目标信息提取方法,从进频率探地雷达回波信号中提取出目标信息。通過对实测数据的处理,结果表明该方法取得了较好的效果。
期刊
摘要:根据交流双馈电动机在旋转坐标系中的数學模型,经理论分析,建立了8种不同运转状态下的空间矢量图(由不同运转方向、电动与制动、低同步与超同步3个变量构成的8种状态);给出了空间矢量图的绘制方法;并通过了仿真验证。空间矢量图揭示了在旋转坐标系中转子回路的感应电势、外接变频电源电压、电流之间的关系,为正确设计转子变频器打下良好的理论基础。
期刊
摘要:硝酸生产尾气中含有的氮氧化物是大气污染源之一,研究采用等离子体协同稀土改性凹凸棒石粘土催化剂可有效净化脱除硝酸生产尾气中的NOx;同时该催化剂对氮氧化物还具有吸附功能,提高了反应物浓度和反应速率。试验研究表明随等离子体输入电压增加NOx脱除率增大,等离子体能够有效提高活性粒子和氧自由基濃度,增大催化剂的活性和根附性能;催化剂煅烧温度对其催化活性也具有显著影响,适宜煅烧温度可增加催化剂表面活性
期刊