手机防火墙的系统设计

2024-10-15

手机防火墙的系统设计(共9篇)

手机防火墙的系统设计 篇1

摘要:近年来, 随着手机的普及应用, 人们时常会收到欺作短信与骚扰电话, 特别是对于老人与小孩这些防范意识薄弱的群体来说存在着严重的隐患。本文基于Android系统, 对手机防火墙的设计与实现进行了研究, 通过过滤诈骗短信与恶意电话, 来监控与保护人们的通讯安全。

关键词:Android系统,手机防火墙,设计

近几年,随着信息技术的不断发展以及手机用户的不断增加,电讯设备中Android系统的应用也越来越广泛。但与此同时,随之而来的安全问题也逐渐增加。大多数从事杀毒软件的企业都相当重视网络的安全性,但却往往没有注意到信息与通讯上的问题,特别是对于防范意识薄弱的人群,十分需要一个提高手机安全的软件来进行保护,从而更有力的保障通讯和信息的安全。有鉴于此,设计和研究基于Android系统的手机防火墙就有着非常重要的现实意义和社会意义。简单说来,该防火墙主要具有过滤短信和电话的功能,并且,Android系统本身还建设有储存垃圾短信的数据库,用户也可以通过自定义或修改、添加、删除关键字的方式,按实际需要来过滤和拦截相关垃圾短信,不仅如此,Android系统本身还可以过滤电话中的黑名单。

1、Android系统的介绍和功能性需求

1.1 Android系统的介绍

通常说来,Android系统的架构与其操作系统基本相同,其通常采用分层架构的方式进行搭建。换而言之,Android系统基本可以分为四层,从低到高分别为linux核心层、系统运行库层、应用程序框架层和应用程序层。Android系统是和它的核心应用程序包同时发布的,包含email客户端,地图、浏览器、日历以及联系人等管理程序和SMS短消息程序等,而这些程序所采用的均是JAVA语言。通过此应用程序的引用,在一定程度上简化了组件重用。不仅如此,采用Android系统,还可以使其当中的任意一个应用程序发布和运用其功能块。

1.2 功能性需求

通常来说,如果手机接到短信,先将其存人相应的短信数据库,再将具有短信的intent广播出来,任何具有接收权限程序都能够收到这类广播,为所收到短信的处理提供了两种途径:第一,通过自定义一个接收者(receiver)来接收带有短信的intent;第二,通过手机短信数据库监听,即在接收短信时,相应的短信数据库会出现一些变化,从而激活程序运行。对于接收短信intent本文所选择的是第一种方式,可对接收者的优先级进行设置,来手动调整广播时间。这种情况下,如果接受者有着最高的优先级,则可以较快的获得短信等信息,然后再对过滤规则进行设置,如遇到拦截信息,则会对广播发出终止指令,这就使得系统指定的广播接收者无法接受到这一广播,自然也就不可能对用户进行接收信息的提醒。然而,对于电话防火墙,本文所选择的则是自定义广播接收者(receiver)的方式以接收电话信息,并设置过滤规则,如果来电号码在黑名单中,则会自动挂断。

具体来说,短信拦截的一般事件流如下所示:首先由系统对相应的短信进行接收;其次,分析所读取短信的实际内容和详细发送地址;最后,借助黑名单和关键字对短信中的号码是否属于黑名单与内容是否包含关键字进行分别过滤;四是凡是在黑名单中的号码或短信内容含有关键字就终止短息。对于带有不良性质的骚扰电话等,用户可以通过自定义将其加入到黑名单中,以进行自我保护。如果来电不在被监护人的黑名单以及静音名单中,那么,这个打进来的电话,就会启动相应的录音功能,并录制下这次的通话信息,而后存储于被用户的手机里,再通知用户电话打来的信息,与此同时,对通话录音进行查看,要是通话内容里含有某些诈骗类的内容,可及时地提醒被监护人,以防造成不可估量的损失。电话拦截的基本事件流如下:一是读取电话信息;二是通过黑名单与自名单对电话号码进行过滤;三是如果判断来电在黑名单中,便自动挂断。

2、基于Android系统的手机防火墙的设计及实现

Android系统所提供的是一个抽象类,被称为SQLite Open Helper,只有继承它才可使用,主要是管理数据库版本,以满足前面所提出的要求。

SQLiteOpenHelper作为一个辅助类来管理数据库的创建和版本,其主要有以下两种方法:第一,on Create (SQLite Database db),主要用来在第一次使用软件时对数据库表进行生产操作;第二,on Upgrade (s QLite Database db, int old Version, int new Version),主要用来在升级软件时对数据库表进行更新操作。当对SQLiteOpenHelper的getWritableDatabase0或getReadableDatabase0进行调用操作时,会得出用来进行数据库操作的SQLite Database实例时,若没有数据库,Android系统可以自动生成数据库,继续调用onCreate0方法。一般来说,当初次生成数据库的时候,才会调用onCreate0方法,同时,通过onCreate0这种方法可以生成数据库表结构。另外,当出现数据库版本变化的情况时,此时所调用的就是onUpgrade0方法。

虽然getWritableDatabase0和getReadableDatabase0这两种方法都可以获得一个实际应用的SQLiteDatabase实例,然而,前一种方法是用读写方式来打开数据库的,如果数据库的磁盘空间已满,那么,数据库就不能写只能读,也就是说,在这种情况下使用该方法难免会出错。而第二种方法也是通过读写的方式来打开数据库,一旦数据库的磁盘空间已满,则会出现打开失败的结果,而打开失败之后,则继续尝试用只读的方式来打开数据库。

2.1 短信拦截

在短信拦截这一方面,基本是定义了一个Listener以继承Broadcast Receiver,并在功能清单中对自定义的广播接收者进行定。这样一来,就可以于第一时间收听广播。当Listener得到广播意图值之后,会与短信意图作出相应的对比与分析。至于短信广播的意图,往往是利用Bundle来获得信息的,并对其进行解析操作将短信的内容和地址号码等信息分离出来。与此同时,这一防火墙还会依据白名单和黑名单上的号码进行过滤操作,即当号码在白名单上时,广播将不会被中止;而当号码在黑名单上时,短信广播将会被立即中止;至于号码既不在白名单,也不在黑名单的情况,则会对关键字进行过滤,若包含关键字,则广播中止。

2.2 电话过滤

在电话过滤这一方面,是通过自定义广播接收者Listener类,得到广播意图的值,而后与电话意图值进行对比。再通过意图来获得电话号码,采用intent.Get String Extra(“incoming number”)方法。在1.1版本之后,Google已隐藏了此API,为了实现挂断电话,可选择利用Android远程(AIDL)与反射这两种方法来进行。本文本文所选用的是反射,以调用hide API。另外,还需要于项目中新建包com.android.internal.telephony,由于要使用到AIDL,所以,在此包下新建的文件I Telephony.aidl包应该和I Telephony.aidl保持一致,并把在此包下新建的I Telephony.aidl文件内容拷贝到文件中,利用反射来得到Telephony Manager,从而通过调用I Telephony的end CMl0隐藏方法实现电话的挂断,从而应用Telephony Manager来监控以下三种电话状态:第一是Telephony Manager.CALL-STATE-RINGING来电响铃;第二是Telephony Manager.CALL-STATE-OFFHOOK来电接通去电拨Telephony Manager.CALL_STATE_IDLE来去电电话挂断;第三是来电响铃状态下,系统就自动在黑白名单中检测,一旦发现来电号码在黑名单上,就会自行挂断,以实施保护。

2.3 电话录音

电话录音作为一项随开机启动的服务,在服务service中主要利用Telephony Manager监听电话的状态。利用一个继承Phone State Listener类的内部类进行电话状态中的动作,即当来电处于通话状况时,调用Media Recorder进行录音;当电话呗挂断后,则自动停止录音,并将录音文件存储到手机内存中。

3、结束语

总而言之,以Android系统为基础而进行的手机防火墙的设计与实现可以有效地实时监控来往短信与电话,从而对当前社会上防范意识匮乏群体实施有效保护,让他们远离垃圾短信的侵犯及陌生电话的骚扰,保证人们的通信安全。

参考文献

[1]张立, 韩银和, 袁小龙.一种基于Android系统网络模块功耗的评估和分析[J].计算机科学, 2012 (06) .

[2]周巍, 何涛, 林嘉宇.Android系统智能手机语音应用开发环境构架[J].微处理机, 2011 (06) .

[3]卜哲, 徐子先.基于Android系统的智能终端软件行为分析方法[J].信息网络安全, 2012 (03) .

[4]张京京, 闫晓蔚, 蔡建顺, 郭曙光.基于Android系统的手机隐私安全的研究与实现[J].信息网络安全, 2012 (05) .

[5]施玉海, 刘春江, 冯海亮.基于Android系统的智能终端开放软件平台助力广电“三网融合”[J].广播电视信息, 2011 (05) .

[6]黄志炜.手机仿真取证系统浅析:Android系统仿真实战[J].信息网络安全, 2010 (11) .

手机防火墙的系统设计 篇2

1 系统的总体设计

该智能防火系统以STC89C52 单片机为核心模块进行智能控制。该系统的总体构成主要包括以下几个部分:1 主控的STC89C52 单片机2GSM 移动通信模块3 无线传输模块的设计4实时时钟电路5 防火信息采集与处理模块6 温湿度检测模块与键盘显示模块。该系统的设计是以单片机为核心, 并将其与通信技术和电子检测技术相结合, 从而形成一个稳定的智能化的防火报警系统。

GSM 移动通信模块主要提供无线短信和数据传输的功能。STC89C52 单片机通过依照GSM 通信模块的通信协议对其进行通信并控制, 从而进行短信智能收发。本系统以STC89C52 单片机电路为核心, 控制连接在各子模块上。通过STC89C52 单片机, 可监测室内温度, 湿度, 以及室内可燃气体和烟雾的浓度, 在数据异常时, 可通过控制GSM 移动通信模块, 向预留的号码进行短信报警。

在学生宿舍内部安装信息采集分析模块。当宿舍发生火灾时, 与之相对应的防火报警探测器无线发射电路启动发射无线接收模块在接收到无线信号后, 向主控单片机发送中断请求。主控单片机响应中断后, 读出发送信号的报警器编码比确定是哪个报警器发生异常, 由GSM 通信模块对预先设定好的号码进行短信报警, 短信内容也可预先设定, 说明具体的地址及联系人信息等。

2 系统硬件设计

(1)STC89C52 单片机的说明

STC89C52 是一种带8K 字节闪烁可编程可擦除只读存储器的低电压,高性能COMOS8 的微处理器。STC89C52 主要功能包括兼容MCS51 指令系统,8K 可反复擦写FlashROM,32个双向I/O 口,256x8bit 内部RAM,3 个16 位可编程定时计数器,6 个中断源, 其中直接提供外部中断处理可使用P3.2(INT0)或P3.3(INT1);1 个全双工可编程标准串行口, 其引脚为P3.0(RXD) 和P3.1(TXD);时钟频率0-24MHz2 个串行中断, 可编程UART 串行通道,3 级加密位, 低功耗空闲和掉电模式, 软件设置睡眠和唤醒功能等。该单片机对于程序烧写输入非常方便,故用其作为主控系统。

(2)GSM 短信模块的简介

GSM 短信的远程控制系统, 能够接收远端预定义的短信息指令来控制8 路控制开关, 同时检测4 路按键开关量并通过单片机译码, 由GSM 短信模块传送到远端。郑凌燕. 葛万成针对GSM 具有实时, 方便, 快捷等优点对GSM 短信远程控制系统进行了描述。当单片机向GSM 短信模块发送信息时, 由4 路按键开关输入信息, 由单片机将单片机指令转换成AT 指令后传输给GSM 短信模块, 由GSM 短信模块将信息发送给预留号码, 实现远程信息传输控制的目的。本系统电路主要由四部分组成:GSM 短信模块, 单片机, 控制电路, 显示窗口。

(3) 无线传输模块设计

避开传统有线连接系统的局限弊端, 本系统采用无线传输方式。无线模块是利用无线技术进行无线传输的一种模块,主要由发射器,接收器和控制器组成。它的工作频率:315MHZ/433MHZ( 本设计选用315MHZ), 其发射功率:≤ 500MW, 静态电流:≤ 0.1UA, 发射电流:3 ~ 50MA, 它的工作电压:DC3 ~ 12V。当工作电压为3V 时, 在空旷地传输时距离约40 至50M, 当工作电压为12V 时, 达到最优工作电压, 空旷地传输距离约700-800M。除开无线发射模块外, 还有无线接收模块。平时未接收到发射出的信号时, 输出的只是杂乱的信号; 当无线接收模块接收到发射信号时, 经放大,变频, 滤波等处理后输出控制信号, 送到相应的解码芯片进行解码, 解码有效端口Vt也输出高电平经过一个非门转换送给单片机的外部中断0 接口。单片机在接到外部中断请求后, 执行外部中断服务子程序,读出数据码, 确定发出信号的传感器, 并进行短信报警。

(4) 温湿度测量电路设计

本系统中温湿度传感器采用新型温湿度传感器。这款温湿度传感器可给出全校准相对湿度及温度值输出,具有卓越的长期稳定性,湿度值输出分辨率为14 位,温度值输出分辨率为12位,并可编程为12 位和8 位。其中,两线制的串口设计,使外围系统变得快速简单,能耗低,体积小,不仅节省了资源,也简化了单片机的编程,提高了精度。徐会东()指出,在将STH11 与单片机串口相连后, 初始化传输时, 应首先发出”传输开始”命令, 该命令可在SCK 为高时DATA 由高电平变为低电平, 并在下一个SCK 为高时将DATA 升高。接下来的命令顺序包含三个地址位( 目前只支持”000”) 和5 个命令位, 当DATA 脚的ack 位处于地电位时, 表示SHT11 正确收到命令。如果与SHT11 传感器的通讯中断, 下列信号顺序会使串口复位: 即当DATA 线处于高电平时, 触发SCK9 次以上( 含9 次), 此后应再发一个”传输开始”命令。SHT11 利用两只传感器分别产生相对湿度, 温度的信号然后经过放大, 分别送至A/D 转换器进行模/ 数转换, 校准和纠错。最后通过二线串行接口将相对湿度及温度的数据送至单片机处理, 单片机对处理数据后进行数字显示并作相应的控制。王海宁()针对控制对象的特点, 在系统辨识的基础上对系统的控制算法进行了仿真研究, 最后针对温控系统进行了实验, 通过对实验数据的分析表明本文所述的基于单片机的温度控制系统的设计的合理性和有效性。

(5) 可燃气体浓度探测器的`设计

传感器电路中最主要的期间就是QM-N10 气敏半导体传感器,该器件在洁净空气中的阻值大约有几十kΩ,接触到可燃气体时,电导率增大,电阻值急剧下降,下降幅度与瓦斯浓度在0.5% 以下成正比。一旦QM - N10 敏感到可燃气体时,IC1A 的脚处于高电位,此时IC1A 的脚变为低电平,经IC1B 反相后变为高电平,多谐振荡器起振工作,三极管VT2 周期地导通与截止,于是由VT1、T2、C4、HTD 等构成的正反馈振荡器间歇工作,发出报警声。与此同时,发光二极管LED1 闪烁。从而达到可燃气体泄漏告警的目的。

3 系统软件设计

本系统的重点为单片机与短信模块串口通信的设计, 因为它承担着自动运行以及向外报警的功能。本系统采用异步通讯方式, 异步串行通讯规定了字符数据的传递方式, 即每个数据以相同的帧格式传递, 每一帧信息由起始位, 数据位, 奇偶校验位和停止位组成。STC89C52 单片机的串口仅占用了单片机的P3.0和P3.1 脚。当非串口方式工作时, 这两根口线还可以作为一般的I/O 口线使用。

包过滤防火墙系统的设计与研究 篇3

随着Internet不断的发展和普及,网络信息安全问题越来越受到人的关注,也时常让人感到担忧。攻击者利用计算机硬件、软件、网络传输协议、网络设备等安全漏洞进行攻击或利用恶意代码进行攻击。网络攻击事件一旦发生就有可能导致有关的服务中断、重要商业信息失窃、研究机构的重要数据丢失甚至设计到国家机密等,其灾难性后果是不言而喻的。防火墙是网络信息安全的主要技术手段之一,个人防火墙得到了广泛的应用。

1 防火墙技术

1.1 防火墙简介[1]

防火墙是用来在安全私有网络(可信任网络)和外部不可信任网络之间的安全连接的一个设备或一组设备,提供Internet和私有网络之间连接的单点存在。

防火墙作为一个或一组实施访问控制策略的系统用来保护计算机网络免受非授权人员的骚扰与黑客的入侵,是目前最为流行也是使用最为广泛的一种网络安全技术。它在一定程度上保护了某个范围内的主机的安全。防火墙减轻了系统被用于非法和恶意目的的风险。

1.2 防火墙的技术分类[2,3]

防火墙的技术分类为:封包过滤型(包过滤技术),NAT技术,应用层闸通道型,封包检验型,状态检测技术,代理防火墙,VPN 虚拟专用网等。

2 Windows包过滤防火墙的实现技术[3,4]

2.1 Windows操作系统下的数据包拦截技术

在Windows操作系统中,网络数据包的捕获可分为2个层次,一个层次是在核心态(Kernel Mode),另一个层次是在用户态(User Mode)。

2.1.1 核心态的网络数据包拦截技术

核心态的网络数据包拦截技术通过编写网络体系结构各个层次的驱动程序在操作系统的核心层来进行数据包的拦截。主要方法有:

(1) TDI过滤驱动程序。当应用程序要发送或接收网络数据包的时候,都是通过与协议驱动所提供的接口来进行的。只需开发一个过滤驱动来截获这些交互的接口,就可以实现网络数据包的拦截。

(2) NDIS中间层驱动。中间层驱动介于协议层驱动和小端口驱动之间,它能够截获所有的网络数据包(如果是以太网那就是以太帧)。

(3) NDIS Hook Driver。这是目前大多数个人防火墙所使用的方法。Hook的概念在Windows 9x下非常流行,而且实现也很容易。

2.1.2 用户态的网络数据包拦截技术

(1) SPI方式。

Windows Socket 2.0版本引入了SPI的编程接口,它可以在Socket中插入一层,从而完成QoS、数据流加密等目的。

(2) Windows包过滤方式。

Winsock 2.0引入了SIO_RCVALL套接字的控制命令,指定套接字来接受网络接口上所有的IP分组,建立套接字,并且绑定至本地端口后,调用WSARecv捕获IP分组并利用循环处理。

(3) 替换Winsock动态链接库的方式。

将系统中的Winsock.dll文件替换成开发者自己编写的动态链接库文件,这样系统对于Socket的处理都会经过开发者的过滤和处理规则,达到对Socket数据传输规范的目的。

2.2 本防火墙采用的数据包拦截技术

本防火墙设计网络数据包的截获分别在用户态和内核态下进行,在内核态下由NDIS中间层驱动完成,用户态下则由WinSock 2 SPI完成。用户可通过内核态下的网络封包拦截获得操作网络数据包的进程、端口、协议等详细信息,根据协议和端口规则对网络数据封包进行处理;同时也可通过用户态下对应用程序数据包的拦截来设置自己的应用程序规则,对应用程序连网动作进行过滤。

3 包过滤技术[5,6]

包过滤防火墙是基于过滤规则来实现的,建立这类防火墙一般按如下步骤进行:建立安全策略;写出所允许的和禁止的任务;将安全策略转化为数据包字段的逻辑表达式-包过滤规则。其中规则的自动生成和推理机的设计是包过滤防火墙技术的核心。包过滤防火墙主要是防止外来攻击,或是限制内部用户访问某些外部的资源。

包过滤技术是一种简单、有效的安全控制技术,它通过在网络间相互连接的设备上加载允许、禁止来自某些特定的源地址、目的地址、TCP端口号等规则,对通过设备的数据包进行检查,限制数据包进出内部网络。包过滤的最大优点是对用户透明,传输性能高。但由于安全控制层次在网络层、传输层,安全控制的粒度也只限于源地址、目的地址和端口号,因而只能进行较为初步的安全控制,对于恶意的拥塞攻击、内存覆盖攻击或病毒等高层次的攻击手段,则无能为力。

使用包过滤技术时,要特别注意一般应用的数据通信大多都是双向的,在设置过滤规则时必须予以考虑。

包过滤防火墙对所接收的每个数据包应做出允许或拒绝的决定。过滤规则基于提供给IP转发模块的包头信息。包头信息包括IP源地址、IP目的地址、内装协议(TCP,UDP,ICMP)、TCP/UDP端口、ICMP消息类型。

如果匹配并且规则允许该数据包,那么该数据包就会按照路由表中的信息被转发。如果匹配并且规则拒绝该数据包,那么该数据包就会被丢弃。如果没有匹配规则,用户配置的缺省参数会决定是转发还是丢弃数据包[7,8]。

(1) IP地址过滤

在程序实现中,仅给出允许转发的IP地址,由于这样的地址比不允许转发或者称为被拒绝的地址要少得多,因此在包过滤吞吐量要大的多。对于源于网络外部的请求则加以拒绝,有效地防止了电子欺骗的发生。

(2) 端口地址过滤

为了确保正确和高效,人们己经为端口分配开发了一个标准的框架。换句话说,虽然每个人可以根据选择把服务指定到某个端口,但服务通常还是将指向通常称为“有名端口”(Well-Known Ports)的系统能够识别的端口。在过滤规则集中,仅将允许的端口打开,既可以称之为端口地址过滤,又可以作为协议过滤。

(3) 协议过滤[9]

为了实现了对包的解析,再看下面的IP包头结构:

Struct IpPacketHead

{…BYTE Proto:}

当只需要在解析包时,根据该数据对所有协议创建一个禁止表,就可以实现协议的过滤了。

同样,对于IP地址和端口同样可以用禁止表的形式实现。防火墙用在传输网络(Transmission Network)中主要用于不良站点过滤和恶意攻击性站点的封锁,一方面需要多个防火墙分布在传输网络多个接入点;另一方面由于地址空间的开放性和动态性,这些站点无法聚类,导致过滤规则集合过于庞大,即使是最基本的IP地址过滤也将会导致网络吞吐量的急剧下降。

4 结 语

设计了一种新型的个人防火墙,包括包过滤流程、未知数据包的捕获处理等;同时在对于包过滤防火墙规则的创建和防止冗余等方面做了一些工作。

摘要:为了实现保护信息不被窃取或破坏,设计了一款个人防火墙。该防火墙集成了个人防火墙中普遍采用的两种包过滤方法,即通过内核态下的网络封包拦截获得网络数据包的进程、端口、协议等详细信息,根据协议和端口规则对网络数据封包进行处理;同时,通过用户态下对应用程序数据包的拦截来设置自己的应用程序规则来进行过滤。采用推理机实现过滤规则的动态生成;提高了包过滤防火墙的性能,能更好地保证网络信息的安全。

关键词:防火墙,包过滤,推理机,网络数据包

参考文献

[1]吴功宜.计算机网络高级教程[M].北京:清华大学出版社,2007.

[2]程玮玮.防火墙技术原理及其安全脆弱性分析[J].计算机应用,2003,23(10):46-48.

[3]王晓薇.防火墙包过滤规则正确性的研究[J].沈阳教育学院学报,2003,5(3):110-114.

[4]钱江波,董逸生.一个智能防火墙模型[J].计算机应用研究,2003,20(7):77-79.

[5]曹淑华.计算机网络规划及实现研究[J].现代电子技术,2010,33(16):91-93.

[6]于韶杰.具有字符过滤功能的包过滤防火墙的设计研究[J].硅谷,2009(9):17-19.

[7]邱桔,韦理丽.Linux下包过滤防火墙的设计与实现[J].计算机工程与设计,2006,27(13):2472-2475.

[8]何泾沙.Linux防火墙[M].北京:机械工业出版社,2006.

手机防火墙的系统设计 篇4

CSF即(ConfigServer Security & Firewall)是一款优秀的Linux服务器防火墙软件,是基于状态包检测(SPI,state packet inspection)的iptables防火墙,登陆/入侵检测和安全的linux服务器的应用程序,具有全面、直接、方便,灵活配置。具有漏洞检测、ip阻止、账户修改跟踪、IDS(入侵检测系统)、安全检查等一系列功能。并且提供cPanel、DirectAdmin和Webmin面板的管理界面,功能强大,使用简单。

安装csf (ConfigServer Security & Firewall)

很直截了当,因为官方提供了安装脚本:

代码如下:

#rm -fv csf.tgz

#wget www.configserver.com/free/csf.tgz

#tar -xzf csf.tgz

#cd csf

#sh install.sh

接下来测试,你是否有必须的iptables modules(就是iptables的模块)

代码如下:

#perl /usr/local/csf/bin/csftest.pl

完全成功,会有以下提示;

代码如下:

Testing ip_tables/iptable_filter...OK Testing ipt_LOG...OK Testing ipt_multiport/xt_multiport...OK Testing ipt_REJECT...OK Testing ipt_state/xt_state...OK Testing ipt_limit/xt_limit...OK Testing ipt_recent...OK Testing ipt_owner/xt_owner...OK Testing iptable_nat/ipt_REDIRECT...OK RESULT: csf should function on this server

只要脚本不报告致命的错误,基本上全部功能都能够使用,

而且使用的时候还要关闭其他的iptables的配置脚本,否则会有冲突。

假设你以前用过APF+BFD,你就必须移除他们。

代码如下:

#sh /usr/local/csf/bin/remove_apf_bfd.sh

接着,就∨渲csf和lfd了。可以阅读下csf的文档,然后直接修改配置文件 /etc/csf/csf.conf,或者更直接的从网页控制面板上修改配置。

csf对于cPanel 和 DirectAdmin 服务器,默认是预设为在标准的端口下工作。

csf自动配置ssh端口在非标准端口工作,即不是我们熟知的22端口。

csf自动将你安装时候连接的ip加入了白名单。

你应该确保你的 kernel logging daemon (klogd,内核日志守护进程)是开启的,尤其是VPS是RedHat/CentOS 5.X的版本都禁止了内核日志守护进程,可以通过检查/etc/init.d/syslog,确保里面没有一行被注视了。如果修改了syslog文件,记得重启syslog。

webmin的csf模块的安装/升级方法;

先按照上面安装csf

然后安装webmin的csf模块。很简单了,步骤如下:

进入Webmin页面 >选择Webmin Configuration(就是webmin的配置页面) >选择Webmin Modules(就是webmin的模块管理的页面) >

From local file(选择从本地文件这个安装方式) >/usr/local/csf/csfwebmin.tgz (这是csf的webmin的模块压缩包路径)>Install Module(点击安装模块)

卸载csf/lfd:

代码如下:

cd /etc/csf

sh uninstall.sh

安装图形界面模块

这个perl模块被用来做统计图用的。依赖于图形库,如libgd, libpng等库

安装这个模块很简单,方法如下:

代码如下:

RedHat/CentOS/CloudLinux:

# yum install perl-GDGraph

Debian v6:

代码如下:

# apt-get install libgd-graph-perl

Direct from cpan.org (基本玩perl的都会习惯从cpan上下载安装):

代码如下:

# perl -MCPAN -e shell

手机防火墙的系统设计 篇5

本文基于IPSec的分布式防火墙系统体系结构,主要由策略控制中心、策略执行器以及IPSec通信三部分组成。策略控制中心的主要功能是注册受保护主机、为受保护主机制定安全策略、向受保护主机发送策略文件;策略执行器是驻留在受保护主机的状态包过滤防火墙,解释并强制执行策略控制中心发放的安全策略:IPSec通信是对内部主机之间的通信进行加密保护以防止内部的窃探、欺骗以及熏放等攻击。下面分别对各个部分进行说明:

二、策略执行器

策略执行器是运行在受保护主机,解释并强制执行由策略控制中心发放的安全策略的程序,它是真正行使保护端点主机职责的程序,主要完成包过滤功能,另外还要实现与策略控制中心的通信,进行策略文件的接收以及将策略文件翻译成包过滤模块可识别的规则表达形式。策略执行器的模块的内核空间的包过滤模块负责实际的数据包过滤,策略翻译模块负责把从策略控制中心发送过来的策略文件翻译成包过滤模块所能识别的规则表达形式,策略接收模块负责和策略控制中心进行通信,接收发送的策略文件并传给策略翻译模块进行处理。策略执行器的包过滤模块采用Linux2.4内核防火墙IPTables的包过滤模块来实现。

Netfilter框架

Netfilter框架位于Linux网络层和防火墙内核功能模块之间,在Linux2.4内核中实现的防火墙虽然建立在IP层中但是并没有对Linux2.4内核的网络结构造成破坏,而是通过Netfilter结构将防火墙对数据包的处理引入IP层中,从而构成不同的模块,使得网络层和防火墙在结构上很清晰,防火墙代码修改和功能扩充更加容易。

Netfilter框架包括下面三个部分:

(1)为每种网络协议(1Pv4、IPX、IPv6等)定义一套钩子函数(IPv4定义了5个钩子函数)这些钩子函数在数据报流过协议栈的几个关键点被调用,在这几个点中,协议栈将把数据报及钩子嚼数标号作为参数调用Netfilter框架。

(2)内核的任何模块可以对每种协议的一个或多个钩子进行注册,实现挂接,这样当某个数据报被传递给Netfilter框架时,内核能检测是否有任何横块对该协议和钩子函数进行了注册,若注册了,则调用该模块注册时使用的回调函数,这样这些模块就有机会检查该数据报、丢弃该数据报及指示Netfilter将该数据报传入用户空间的队列。

(3)那些传递的数据报是被传递给用户空间异步地进行处理,一个用户进程能检查数据报,修改数据报,甚至可以熏新将该数据报通过离开内核的同~个钩子函数中注入到内核中。Netfilter可以被多种协议使用来实现防火墙功能。

三、策略控制中心的设计

策略控制中心的主要功能是注册受保护主机、为受保护主机制定安全策略、向受保护主机发送策略文件。策略控制中心的结构主要包括主机注册模块、策略编辑模块以及策略发送模块。主机注册模块主要完成受保护主机在策略控制中心的注册,向控制中心添加受保护主机,设置受保护主机的参数如主机名、IP地址、子网掩码和策略文件等。

四、IPSec通信的设计

1. IPSec的实现

目前,国际上对IPSec的研究已经比较成熟,不少操作系统已经在其内部实现了对IPSec的支持,其中包括W'm2000系列、FreeBSD等。另外还有一些公开源码组织在进行IPSec的开发,其中最著名的就是FreeS/WAN, FreeS/WAN是一个专门从事IPSec开发的开发组为其1PSec系统所起的名字,这个系统可以在Linux系统中编译安装。

FreeS/WAN可以分为三大部分:IPSee基本协议(KLIPS)、PLUTO和WHACK。其中,IPSee基本协议实现了对m数据包的分析处理以及AH、ESP的处理,同时还包括了对SPD和SADB的检索引擎;PLUTO负责IKE密钥交换,通过监听UDP500端口(IKE交换所使用的端口)来实现SADB的建立和维护;WHACK则是用户与PLUTO的交互界面,通过WHACK,用户可以建立和维护SPD,并且启动和停止PLuTO的运行,同时还可以启动IKE交换。

(1) IPSec基本协议(KLIPS)

FreeS/WAN通过在系统中增加了名为ipsec0的虚拟设各来支持对球数据包的分析处理,最多可以增加4个虚拟设备,达到支持4个网络接口,在Linux系统中,FreeS/WAN可以被完全编译到内核中或是只在内核中增加若干虚拟设备,而将其处理部分编译为可加载模块。

(2) PLUTO

从实现上来看,PLUTO是一个普通的网络服务程序,与系统内核并没有太大的关系,但是由于PLUTO需要对SADB进行维护,而SADB是属于系统内核的数据结构,因此需要设计一个接口,使得PLUTO可以对SADB进行修改。在实现中,FreeS/WAN实现了一个新的协议族PF_KEY可以以发送网络数据包的相同方式访问SADB。

(3) WHACK

WHACK是FreeS/WAN设计用来实现人机交互的界面,通过WHACK,用户可以对SPD、SADB等核心数据结构进行维护。WHACK使用与PLUTO一样的内核接门PF KEY同内核进行通信。另外,WHACK与PLUTO也有一个接口,通过此接口,WHACK可以操纵PLUTO的行为。WHACK的另外一个功能就是可以让用户随时查询目前SADB和SPD的状态。

2. IPSec对内部通信的保护

本文采用IPSec对分布式防火墙内部之间的通信进行保护,以防止内部的窥探、欺骗以及重放等攻击,下面对IPSec的通信处理过程进行介绍。发送包处理:IPSec协议要先查询SPD,确定为数据包应使用安全策略,如果检索到的数据策略是应用IPSec,再查询SAD,确定是否存在有效的SA,顺序如下:

(a)若存在有效的SA,则取出相应的参数,将数据包封装(包括加密、验证,添加IPSec头和IP头等),然后发送。

(b)若尚未建立SA,则启动或触发IKE协商,协商成功后按1中步骤处理,不成功则应将数据包丢弃,并记录融错信息。

(c)存在SA但无效,将此信息向IKE通告,请求协商新的SA,(协商成功后按1中的步骤处理,不成功则应将数据包丢弃,并记录出错信息。接收包处理:IPSec协议先查询SAD,如得到有效的SA,则对数据包进行解除封装(还原),再查询SPD,验证为该数据包提供的安全保护是否与策略配置的相符。如相符,则将还原后的数据包交给TCP层或转发。如不相符,或要求应用IPSec但未建立SA,或SA无效,则将数据包丢弃,并记录出错信息。

分布式防火墙是一种全新的防火墙体系结构,它在发挥传统防火墙优势的同时弥补传统防火墙的不足,更加适应网络技术的发展。

参考文献

[1]刘华.颜国正.丁国清在Linux下用Iptables建立防火墙的方法[期刊论文]-计算机工程2003 (10)

[2]张惠卿.严峰.沈金龙在Linux下用iptables构建防火墙[期刊论文]-中国数据通信, 200 (28)

手机防火墙的系统设计 篇6

如今,无论是生活还是生产方面都与互联网息息相关,网络安全问题也成为了大家关注的焦点。为了应对安全问题,人们普遍采用防火墙的手段来实现安全机制。防火墙被置于非信任的网络与被保护网络之间[1],采用边界上的过滤封锁机制。然而传统防火墙在面对不断更新的大量网络攻击时仍然漏洞百出,急需对防火墙作用机制进行创新。

2008年,斯坦福大学的Nick Meowm教授等人提出了OpenFlow[2]这一概念,是由Clean Slate计划资助的一个开放式协议标准[3],后来成为了GENI[4]的子项目。该技术将控制功能从网络设备上抽离出来,网络设备根据部署在设备上的流表对据进行转发,而流表的配置和维 护则由控 制器决定。随 着对Open Flow技术的深入研究,又进一步提出了软件定义网络SDN( Software Ddefined Networking) 。SDN[5]是一种全新的网络架构,软件模式的控制层替代了原本嵌入在各个设备上的控制部分,负责集中管理和决策。借助SDN网络架构的思想,可以从根本上改变网络的管理体系,构建一种可控、可变、可信的软件模式的防火墙。

本文采用基于Open Flow的SDN技术来实现软件防火墙,并基于此防火墙系统进行试验验证和应用。

1结构设计和功能实现

1. 1 SDN网络简介

在介绍具体的防火墙设计之前,首先对SDN的网络架构进行简介,SDN结构如图1所示。SDN网络采用分层结构体系,SDN技术架构把原有封闭的网络管理体系解耦为数据转发层、控制层和应用层三层,提供了一种可编程的网络管理模式,从而革命性地改变现有的网络架构。

( 1) 数据转发层由支持Open Flow的底层网络设备所组成,它保持了原有网络中数据转发的所有功能,底层的交换机设备仅根据流表进行数据的转发。

( 2) 软件模式的控制层替换了原本嵌入在各个网络设备上的控制部分,主要用于集中维护网络状态、管理和决策。控制层通过南向接口与数据转发层通信,获取底层基础设施信息,并对上层应用开放编程端口。与原有分布式开发环境不同,控制层提供了集中式的管理模式,类似于网络操作系统NOS[6]( Networking Operating System) 。

( 3) 应用层利用控制层的开放接口,实现不同应用程序,完成网络所需的不同功能,例如SNMP、Web Service、ACL等。

1. 2技术分析

从技术原理、工作机制的角度来看,防火墙技术主要有包过滤、应用代理、状态监测等几大类[8,9]。防火墙技术布置在网络边界的众多设备上,各种技术之间很难做到统一的调度、配置和融合,全网无法形成一个全方位的网络安全机制。

为此,本文提出了一种全新的防火墙体系,即在SDN网络架构下,将防火墙作为SDN网络上的一种软件应用。防火墙系统通过SDN控制器提供的可编程接口,控制网络中所有OpenFlow交换机,构建一个可灵活应对不同安全需求的防火墙应用。与普通防火墙相比,防火墙不在部署于网络边界,而是以软件形式集中在网络的某一位置,因此防火墙的升级、修改、配置等无需在安全设备上逐一操作,加快了防火墙开发、部署和灵活改进。

SDN的控制层向防火墙应用提供统一维护和管理网络的能力,其中包括具有检测数据包包头能力的包过滤模块,可根据数据包中的包头信息决定数据包的处理过程,并进行相应的安全防护动作。SDN控制层可对数据包的包头进行分析,但是无法获悉连接状态,因此将状态检测技术模块布置在控制层和数据转发层之间。代理服务器技术则以应用程序的模式运行在应用层。

1. 3主要功能模块

本文设计的基于SDN网络的软件防火墙,由五大模块构成,如图2所示。

( 1) 防火墙模块防火墙模块实际上是一个运行在应用层的应用程序,它定期向控制层查询网络拓扑和网络状态信息,如底层交换机接收到异常数据包的数量和异常数据包的分布范围,评估当前网络的安全需求及等级,实时调整查询频率、下发包过滤规则等操作,形成一个可应对不同网络攻击的防火墙系统。

( 2) REST API服务模块控制层的包过滤模块通过RESTAPI服务模块向应用层的防火墙模块开放编程端口。REST API服务模块将控制层的API可编程接口以REST API形式向外开放,并遵循HTTP协议。简单来说,用户通过HTTP协议提供的GET、POST等方法来实现对模块的操作。

( 3) 包过滤模块该模块替代了原本处于网络层的防火墙功能,防止不希望的通信交互。模块内含一套过滤规则,规则定义了包过滤模块对于数据包的具体操作,即对所接收的每个数据包应做出允许或拒绝的决定[10]。数据包头部主要由源地址、目标地址、通信协议、端口号等参数组成,每条过滤规则都含有一些头部参数的组合,用于匹配数据包的包头。包过滤模块位于SDN控制层,主要依靠控制层对于数据包的拆包能力和分析能力,通过检查包头的头部参数决定是否让数据包通过。

( 4) 二层转发模块本模块通过Open Flow协议与数据转发层直接通信,主要用于将数据包转发给底层交换设备。由于真实网络中的设备情况相当复杂,往往并存着真实交换机和虚拟交换机,同时也未知它们是否支持Open Flow协议。二层转发模块会查询所有设备,并收集信息进行分析,学习并记录所有支持Open Flow协议的交换机的位置,并将信息汇总给控制层。当新设备加入时,它也能及时感知、学习并更新记录。

( 5) 数据转发模块由一些支持Open Flow协议的设备组成,仅用于数据转发。在数据转发模块内的设备上维护一些列的流表规则,流表同样按照Open Flow协议制定,流表项由匹配域、计数器和动作三项组成[11]。设备仅根据流表规则进行数据转发,数据包进入设备后,按照优先级匹配流表规则,若是匹配成功,则执行动作指令。若是耗尽流表仍然无法匹配,则交给控制层进行处理。

1. 4工作流程

模拟当底层的转发设备接收到数据包,经过防火墙的流程,如图3所示。

( 1) Open Flow交换机接收到无法匹配流表的数据包时,向控制层发出异常消息。控制层接收到底层的异常消息,并将收集到的信息反馈给应用层的防火墙模块。防火墙模块制定安全防护策略,启动控制层的包过滤模块进行包过滤。

( 2) 数据转发模块强制将数据包送入控制层进行拆包检验。

( 3) 进入控制层后,控制层负责将包头的信息进行提取,对于包过滤模块来说,主要需要的是诸如数据包源地址、目的地址、端口号等标记位,并与预先制定的规则进行匹配直到规则表耗尽。如果匹配成功,仅执行两个动作。如果动作是允许,则再次交给二层模块进行正常转发。反之就是阻止,包过滤模块直接将数据包丢弃,阻隔通信。

( 4) 如果并未找到对应数据包的规则,包过滤模块会通过控制层将信息返回给上层的防火墙模块,由防火墙模块制定相应决策,决定具体操作过程。

( 5) 防火墙模块下发新的规则,对于开放的REST API端口来说也就是生成了一条特定的URL请求。再通过REST API服务模块处理URL请求,URL请求中的URI指向包过滤模块,包过滤模块根据对应的URL请求生成包过滤规则。包过滤模块根据新规则处理数据包,决定丢包或是转发,并将新规则存入规则表内,以便下次使用,达到一个实时更新、按需配置的防火墙。

2实验验证

2. 1验证环境

本文采用软件定义网络设备搭建一个实验环境来验证防火墙系统的有效性。验证环境各层设备如下:

( 1) 数据转发层在交换机的选择方面,为了能够快速部署,采用了Open VSwitch交换机( 简称OVS) 。OVS能够在多种虚拟机和操作系统上运行,对硬件几乎没有要求,是遵循Apache2. 0协议、具有开源性质的主流虚拟交换机。它不仅能够模拟真实交换机的功能,而且支持Open Flow协议。

( 2) 控制层选择Flood Light作为控制器搭建控制层。Flood Light具有跨平台的特性,可以在三大主流开发平台 ( Win /Mac / Linux) 上使用,开发语言基于Java,遵循Apache开源规则,易于配置。

( 3) 应用层防火墙模块,使用python编写. py文件实现防火墙模块。Python[12]语言具有强大而丰富的库,易于与各种语言编写( C/C + + ) 的模块一起使用,利于后期的升级开发及其他功能组件的添加。

综上所述,实验环境部署和配置如图4所示。

数据转发层:

( 1) 安装一台Open VSwitch软交换机、两台KVM虚拟机,分别命名为KVM1虚拟机和KVM2虚拟机。虚拟机和操作环境均使用Ubuntu12. 04 LTS系统。

( 2) 创建虚拟桥br0,将主机的物理网卡eth0端口加入软交换机,同时连接两台虚拟机,虚拟机端口为tap0和tap1。

( 3) 配置交换机和虚拟机的网络。软交换机的IP地址为192. 168. 51. 100,掩码为255. 255. 255. 224,网关为192. 168. 51.97。KVM1虚拟机IP为192. 168. 51. 111掩码为255. 255. 255.224,网关为192. 168. 51. 97。KVM2虚拟机IP为192. 168. 51.112,掩码为255. 255. 255. 224,网关为192. 168. 51. 97。网络配置使它们处于同一个网段,能够相互通信。

控制层:

( 1) 安装FloodL ight控制器,由于是单机操作环境,IP地址为本机地址127. 0. 0. 1。

( 2) 连接控制器和交换机,默认端口为6633。

应用层:

( 1) 安装python开发环境。

( 2) 调用REST API端口编写防火墙模块,生成. py文件。

2. 2实验结果

TCP / IP协议中提供了一种特殊的ICMP报文协议,也是一种常见的调试工具。实验使用ICMP机制验证网络的连接情况,采用ping命令发送请求报文。并使用wireshark抓包工具查看每个端口的情况。

场景一:控制层中预先设置规则指明禁止一切数据包通过软件交换机,即控制层收到通过软交换机数据包后全部丢包。在KVM1虚拟机上向KVM2虚拟机发送ICMP报文,操作指令为:

ping 192. 168. 51. 112

通过wireshark查看tap0端口,发现tap0端口并未接收到来自KVM2虚拟机的回应报文,即使处于同一网段,KVM1与KVM2仍无法通信。位于控制层的包过滤防火墙依据包过滤规则,直接将任何数据包丢弃。

场景二:控制层中预先设置规则规定,允许KVM1虚拟机与br0虚拟桥通信,允许KVM2虚拟机与KVM1虚拟机通信,但是并未规定br0虚拟桥和KVM2虚拟机的通信规则。在br0虚拟桥、KVM1虚拟机、KVM2虚拟机上分别向另两台发送ICMP报文。

当控制层中的控制器接收来自br0和KVM2之间的通信数据包时,由于未定义它们之间的包过滤规则,就会通知应用层的防火墙模块进行分析决策。根据安全需求,希望br0虚拟桥和KVM2虚拟机之间进行隔离,故通过应用层模块下发新决策的规则,阻止通信。控制器则根据新规则丢弃br0与KVM2之间的通信数据包,并更新包过滤规则,当控制器再次接收到br0和KVM2之间的数据包时,按新规则处理。

实验结果为KVM1虚拟机能收到br0虚拟桥和KVM2虚拟桥的回应报文,KVM2虚拟机只能收到KVM1虚拟机的回应报文,br0虚拟桥也只能接收到KVM1虚拟机的回应包。结果符合网络安全需求,防火墙的功能验证成功。

3结语

基于SDN网络的软件防火墙有着独到的优势。一方面,基于SDN网络的可编程管理方式具有高度的灵活性,防火墙功能的升级与添加无需过度依靠硬件与专业系统的开发,只需以模块或应用程序的方式加入SDN网络中即可。另一方面,SDN是一种全新的未来网络管理架构,基于它的软件防火墙有着很好的实用价值,实现了现有网络技术和未来网络的融合。

本文对基于软件定义网络的包过滤防火墙进行了详细的设计和说明,实际上软件定义网络的应用远不止此,例如网址转换技术( NAT) ,也可以模块的形式放置在控制层上,由控制层进行源地址和源端口的转换。基于软件定义网络的应用系统前景是巨大的,值得进一步的研究。

参考文献

[1]林玉梅.防火墙技术及其应用研究[J].软件导刊,2012,11(9):160-162.

[2]Mckeown N,Anderson T,Balakrishnan H,et al.Open Flow:Enabling innovationin campus networks[J].ACM SIGCOMM Computer Communication Review,2008,38(2):69-74.

[3]李英壮,孙梦,李先毅,等.基于Open Flow技术的Qo S管理系统的设计与实现[J].广西大学学报:自然科学版,2011,36(1):42-46.

[4]Elliott C.GENI:Opening up new classes of experiments in global networking[J].IEEE Internet Computing,2010,14(1):39-42.

[5]Greene K.R10:Software-defined networking[R].MIT Technology Review,2009.

[6]樊红梅.浅析网络操作系统[J].电脑知识和技术,2011,7(17):4023-4025.

[7]王文东,胡延楠.软件定义网络:正在进行的网络变革[J].中兴通讯技术,2013,39(1):39-43.

[8]李超群.入侵检测和分布式防火墙策略配置研究[D].重庆:重庆大学通信工程系,2012.

[9]陈惠娟.防火墙技术及发展趋势[J].中国新科技新产品,2013(2):41.

[10]赵可新,陈玉芳.包过滤防火墙系统的设计与研究[J].现代电子技术,2011,34(6):112-113.

[11]黄宝座,赵喜求.Open FIow技术及应用优势分析[J].电脑知识与技术,2012,8(25):5985-5987.

手机防火墙的系统设计 篇7

随着互连网的迅速发展和各种入侵事件、攻击手段层出不穷,也出现了大量防御方法和工具,但这些方法和工具的缺点是它们仅能保护网络的一部分,很容易被新的攻击方法攻破,另外每个产品都要求在自己的界面和策略下工作,使得产品之间很难对话[1],于是人们提出了网络综合防御系统IIDS,网络综合防御系统是管理和控制网络安全组件的系统,是为网络安全建立一个控制中枢。

课题组要完成网络综合防御系统的规划与设计,并对各部件完成设计与实现,本课题致力于防火墙联动模型的研究与设计实现,该模型能够有效地动态防御已知的和未知的网络攻击,解决传统的防火墙和入侵检测系统各自的弊端。

1 网络综合防御系统的整体规划

一个完整的网络综合防御系统不仅要有防火墙的功能、入侵检测系统的功能,还要有防毒软件的功能[2]等等(从理论来说,入侵检测系统应包括防毒软件功能),所以可包含诸多功能模块,比如:网络包的监听、截取和分析模块,分布式探测器控制模块,系统日志的生成、保存和分析模块,用户行为的误用检测模块,系统资源的异常检测模块,攻击事件的存储、分析模块,对防火墙的控制模块等等,并且随着网络事件的变化,功能模块还将不断扩充。

对于以上各功能模块,可设计整合为5个子模块:主机探测器、网络探测器、规则分析器、控制台、防火墙联动模块,另外,为了评测系统的性能,还需要有用于测试系统的攻击平台,如图1所示。

其中,主机探测器探测主机日志信息,交由规则分析器处理,网络探测器抓取网络数据包,并进行筛选,最后交给规则分析器处理;规则分析器对主机探测器和网络探测器得到的数据进行综合分析,从规则库中提取相应规则对数据进行规则匹配,一旦发现攻击行为,便将报警信息发送给控制台。同时,规则分析器中的异常检测模块还可以通过对主机数据源和网络数据源的分析,提取出一些攻击规则,加入到攻击规则库中;控制台接收规则分析器的报警信息,与用户进行交互,并将报警信息发送给防火墙联动模块,由防火墙联动模块进行响应;防火墙联动模块收到控制台的报警信息后,生成向防火墙中添加的规则,并将控管规则添加到防火墙中。

本文主要研究六个模块中防火墙联动模块的设计与实现。

2 防火墙联动模块

2.1 防火墙联动的总体规划

由于防火墙本身存在可能被外部黑客攻破的漏洞和后门,另外防火墙不能阻止内部攻击,而且防火墙通常不能提供实时的入侵检测能力,甚至有些外部访问可以绕开防火墙等原因,使得仅仅依靠防火墙系统并不能保证足够的安全[1]。入侵检测系统虽然具有发现入侵、阻断连接的功能,但其重点更多地放在对入侵行为的识别上,网络整体的安全策略还需由防火墙完成[3]。入侵检测系统应该通过与防火墙联动,动态改变防火墙的策略,通过防火墙从源头上彻底切断入侵行为。

为了实践IIDS的理论,课题组开发出一个称为Immuno的系统原型。在这个系统中,简化了IIDS模型,应用IIDS在一个局域网中的最小模式。如图2所示。

Immuno系统在防火墙中设计了动态联动模块,通过这个模块对多种常用防火墙进行控制。防火墙联动模块主要实现入侵检测系统IDS(Intrusion Detection System)与防火墙的之间通信。一方面向防火墙传递控制信息、添加/删除防火墙规则,另一方面向IDS控制台传送防火墙系统的状态等信息。

网络综合防御系统的联动模块采用了客户/服务器模式,由控制台和下级各单元共同完成系统的分析、处理能力。采用二级结构,控制台下设n个防御节点,控制台与各防御节点之间形成网状结构。分布在各个防御窄通道的防御节点均可由控制台监测并直接控制,负责保护网络中的数据。为了防止控制台被破坏,在联动节点与控制台服务器端的通信过程中采用验证机制,只有通过验证的联动节点连接才被允许建立,在建立连接时,每个联动节点均被颁发证书,在很大程度上保证了内部通信安全。控制台处于整个系统的最顶层,它发送联动、控制信息,并对整个联动体系进行管理。具体结构如图3所示。

联动节点与防火墙配置在同一主机之上,这样可以有效地更新和管理防火墙的规则。每个联动节点都相当于一个网络防御的执行器,负责按照控制台传送的规则采取相应的行动,并对规则进行维护。同时,联动节点也可以接受来自控制台的控制信号,并根据这些信号对防御节点进行打开、关闭和重起等操作。每个联动节点可以负责不同的防御节点的管理以及规则的维护。

为了实现联动节点的功能,把每个联动节点的实现分成6个子模块,其结构如图4所示。

各子模块功能包括:

OpenSSL 实现联动模块与控制台之间的加密传输,以防止入侵者查看或修改联动控制信息。

信息转换 一方面分拣由OpenSSL模块传入的控制台信息,区分Keepalive信息、规则信息和控制信息,并将其转换为联动模块所定义的数据格式传递给相应子模块,另一方面,转换并封装联动控制和Keepalive子模块的数据通过OpenSSL模块传送至控制台。

Keepalive 通过接收和发送信号确保控制台与联动模块的通信,并在通信中断时向联动控制模块发出LOST报警信号。

联动控制是联动模块的核心,功能及实现将在下部分详述。

规则转换 将联动控制模块传送的规则转换成为特定防火墙的规则格式并传送至防火墙操作模块以进行添加/删除等操作。对联动控制模块屏蔽各种防火墙规则格式的差异。

防火墙操作 根据联动控制模块的控制信息或规则转换模块的规则信息对防火墙采取相应的动作。对联动控制模块屏蔽防火墙控制信息的差异。

2.2 联动控制子模块的设计实现

联动控制子模块是联动的核心部分,它要获取并保持防火墙的规则、状态,监听Keepalive子模块的报警信息,如果收到LOST报警则根据既定规则向防火墙发出控制信息, 接收并维持控制台的规则操作信息,通过规则转换模块对防火墙添加/删除相应规则。 接收控制台的防火墙控制信息(打开/关闭等动作)并通过防火墙操作模块对防火墙发出相应控制信息。它的控制线程如图5所示。

2.3 联动模型的适用范围

本课题的网络安全目标是:通过入侵检测系统与防火墙联动协作,能够有效地保护同一个局域网内所有网络终端(即普通客户机)的安全,不受外部网络攻击的侵害。所以此联动模型基本的适应环境是:

防火墙分布于局域网的所有普通客户机中,负责截断网络中对主机的攻击。一旦入侵检测系统感知到网络中的攻击(包括局域网的内部攻击),则迅速通知局域网内的所有防火墙,由防火墙来执行阻断指令。

防火墙之所以分布于局域网内的所有普通客户机上,首先,这种放置模型致力于保证每一台主机的安全,不会象传统的网关防火墙那样一旦被攻破,整个局域网就瘫痪了。其次,这种防火墙既提供与入侵检测系统联动的防御,又允许普通客户根据自己的需要定制不同的网络控管规则,更具人性化。

入侵检测系统与防火墙在局域网内进行联动。虽然联动过程可能会增加局域网内的网络流量,但是如果采用专有网线联动,则对于局域网内的所有客户机来说都需要安装双网卡,增加成本,而且不利于联动系统的扩展。所以,只要将联动的内容和频率设计的科学合理,就不会对网络流量造成重大的影响。

考虑到在遭受DDoS攻击时,必须从局域网的网关处进行拦截网络封包,所以在此模型中需要一个控制台,在网络遭受DDoS攻击时,由网管人员进行控制。

3 结 论

本文对网络综合防御系统的设计理念和实现进行了阐述,并对防火墙联动的设计与实现进行了重点阐述,建立了入侵检测系统与防火墙之间进行联动的模型,最后给出了此联动系统的应用范围。而且联动模块的各项功能已集成在网络综合防御系统中进行测试,通过真实的网络数据对系统性能进行检验,能够在局域网中达到综合防御的效果。

参考文献

[1]Securing the intelligent information network[EB/OL].http://whitepa-pers.techrepublic.com.

[2]Firewalls,Intrusion Detection and Anti-virus Scanners[EB/OL].ht-tp://www.cs.nott.ac.uk/TR/2005/2005-1.

手机防火墙的系统设计 篇8

防火墙一般位于网络边界, 所以又俗称边界防火墙。但是现在的网络内部安全形势也不容乐观, 于是防火墙的安全防护职责也就由外向内渗透了, 一些防火墙设备开发商就专门针对内网安全控制需求而开发了专用于内网的防火墙产品, 使得防火墙的应用更加广泛。内部防火墙用于控制对内部网络的访问, 以及从内部网络进行访问。

二、内部防火墙应用规则

内部防火墙监视外围区域和信任的内部区域之间的通信。由于这些网络之间通信类型和数据流的复杂性, 内部防火墙的技术要求比外围防火墙的技术要求更加复杂。通常, 内部防火墙在默认情况下, 或者通过设置将需要遵循以下规则。

(1) 默认情况下, 阻止所有数据包。 (2) 在外围接口上, 阻止看起来好像来自内部IP地址的传入数据包, 以阻止欺骗。 (3) 在内部接口上, 阻止看起来好像来自外部IP地址的传出数据包, 以限制内部攻击。 (4) 允许从内部DNS服务器到DNS解析程序堡垒主机的基于UDP的查询和响应。 (5) 允许从DNS解析程序堡垒主机到内部DNS服务器的基于UDP的查询和响应。 (6) 允许从内部DNS服务器到DNS解析程序堡垒主机的基于TCP的查询, 包括对这些查询的响应。 (7) 允许从DNS解析程序堡垒主机到内部DNS服务器的基于TCP的查询, 包括对这些查询的响应。 (8) 允许DNS广告商堡垒主机和内部DNS服务器主机之间的区域传输。 (9) 允许从内部SMTP邮件服务器到出站SMTP堡垒主机的传出邮件。 (10) 允许从入站SMTP堡垒主机到内部SMTP邮件服务器的传入邮件。 (11) 允许来自VPN服务器后端的通信到达内部主机并且允许响应返回到VPN服务器。 (12) 允许验证通信到达内部网络上的RADIUS服务器并且允许响应返回到VPN服务器。 (13) 来自内部客户端的所有出站Web访问将通过代理服务器, 并且响应将返回客户端。 (14) 在外围域和内部域的网段之间支持Windows Server 2000/2003域验证通信。 (15) 至少支持5个网段, 在所有加入的网段之间执行数据包的状态检查。 (16) 支持高可用性功能, 如状态故障转移。 (17) 在所有连接的网段之间路由通信, 而不使用网络地址转换。

值得注意的是, 我们这里所说的堡垒主机, 实际上就是通常所说的DMZ区域中的主机。堡垒主机是位于外围网络中的服务器, 向内部和外部用户提供服务。

三、内部防火墙系统设计部署方案

在内部防火墙方案中, 根据具体实际需求, 可以采用不同的防火墙系统配置方案, 如可以是单一无冗余组件的防火墙, 也可以是单一有冗余组件的防火墙, 还可以是合并了某些类型的故障转移和负载平衡机制的容错防火墙集。下面分别介绍这些方案。

1、没有冗余组件的单一防火墙

无冗余组件防火墙是比较普遍的一种防火墙, 主要应用于中小型企业。无冗余组件的单一防火墙系统部署在企业外围网络和企业内部网络之间, 控制企业外网用户及内网用户对企业内网的访问, 保证企业内网的安全。相对于有冗余组件防火墙部署方案, 单个无冗余组件的防火墙方案主要有以下几个优点。

(1) 成本低。由于只有一个防火墙, 所以硬件成本和许可成本都较低。 (2) 管理简单。管理工作得到简化, 因为整个站点或企业只有一个防火墙。 (3) 单个记录源。所有通信记录操作都集中在一台设备上, 便于管理。

2、具有冗余组件的单一防火墙

具有冗余组件的单一防火墙与前面介绍的无冗余组件单一防火墙相比唯一的区别就是多了一套冗余的组件, 具有容错功能, 提高了可用性。

有冗余组件的单一防火墙具有一些基本的冗余组件, 如电源、风扇等, 所以相比无冗余组件的防火墙来说, 可用性有了一定程度的提高。尽管增加了一些冗余组件, 但这类组件的成本也不高。

3、容错防火墙集—防火墙冗余对

容错防火墙集包括一种使每个防火墙成为双工的机制, 主要有以下两个工作机制。

(1) 主动/被动内部容错防火墙集

在主动/被动内部容错防火墙集中, 一个设备将处理所有通信, 而另一个设备既不转发通信也不执行筛选, 只是保持活动, 监视主动节点的状态。这类似于服务器双机容错方案中的“冷备份”方式。

通常, 在这种容错方式中, 每个节点都传达其可用性和到其伙伴节点的连接状态。此通信经常称为检测信号, 每个系统每秒向其他系统发几次检测信号以确保这些连接正在由伙伴节点进行处理。如果被动节点没有接收到来自主动节点的检测信号的时间超过特定的, 或者用户设定的间隔, 说明主动节点已经失败, 然后被动节点将承担主动节点的角色。

(2) 主动/主动内部容错防火墙集

在主动/主动内部容错防火墙集中, 两个或多个节点主动侦听发送到每个节点共享的虚拟IP地址的所有请求, 与服务器双机容错方案中的“热备份”类似。

在这种容错方式中, 负载将通过容错机制唯一使用的算法或者通过基于静态用户的配置在节点之间进行分布。无论使用哪种方法, 结果都是每个节点主动地筛选不同的通信。在一个节点失败的事件中, 仍存活的节点将分发已失败的节点曾承担的负载的处理。

三、结束语

内网安全是计算机网络安全的重要组成部分, 科学、合理地设计配置内部防火墙系统不仅能减轻外部防火墙的负载压力, 同时更能增强单纯的外部防火墙的安全控制能力, 有效地保证计算机网络的安全。当然, 伴随着计算机网络技术的发展, 计算机网络安全还会出现更多这样那样的问题, 因此, 防火墙技术也要不断地改进发展, 为计算机网络安全提供有力保障。

摘要:防火墙一般位于网络边界, 所以又俗称边界防火墙。但是现在的网络内部安全形势也不容乐观, 于是防火墙的安全防护职责也就由外向内渗透了, 一些防火墙设备开发商就专门针对内网安全控制需求而开发了专用于内网的防火墙产品, 使得防火墙的应用更加广泛。本文试从内部防火墙的应用规则和部署设计两方面对内部防火墙系统做初步的探讨。

手机防火墙的系统设计 篇9

1 系统设计

1.1 设计目的

设计目标是为用户提供一个界面友好、操作简便的手机文件管理器。为用户提供常用的文件管理操作,另外还提供文件远程备份和还原。

1.2 项目功能模块划分

按照不同的文件管理要求,将项目功能划分为四个相互依赖的模块:

1)文件读取模块,此模块主要包括文件的展示与查看。

2)文件操作模块,此模块主解决文件操作处理方面的问题。

3)文件传输模块,此模块主要处理的是客户端与服务器端进行数据交互。

4)系统参数设置模块,此模块主要是对软件系统参数的管理。

1.3 系统性能设计

1)支持不同分别率(HVGA:640*480,QVGA:320*240)和不同尺寸(2.3英寸及其以上)屏幕;

2)支持不同固件版本(2.2及其以上)。

2 系统实现

2.1 文件读取功能的实现

在Android框架下,界面的布局主要是通过xml文件进行的,主要使用的是线性布局,在其中加入自定义的DDGridView、DDListView使其实现弹性图标和列表显示。

在主界面中主要实现了文件管理器的文件图标、列表显示功能,此处新建了一个名为FileAdapter的接口用于指定文件显示要显示的最基本方法,其次是新建两个名为DDGridView、DDListView的类分别继承框架中的GridView类和ListView类重写相应的方法以实现窗口的弹性效果。

在软件启动过程中已经统一为所有菜单选项绑定了监听器,当菜单面板被点击时监听器中的点击事件即被触发。当选择菜单面板中搜索按钮被点击,系统就会执行搜索功能对应的语句。考虑到搜索功能可能会执行较长的时间,为不至于阻塞主线程因此这里考虑到使用多线程技术。

2.2 文件操作功能的实现

当处于多选模式下点击文件或目录时,当点击项已经被选中则从被选中项中删除反之则添加到被选中项中。示例代码如下:

文件复制功能的实现在多选模式和单选模式下总体实现思路是一致的,即将文件(目录)路径暂存到ArrayList中,但具体实现方法略有差别。

粘贴是在上一步及以前操作中有过剪切或复制操作的情况下才能正确进行的操作。由于粘贴是比较耗时的一个操作,因此将它设计为一个后台服务。用户在执行粘贴任务的时候依然可以去做其他的操作。删除文件操作上主要是调用Linux shell命令,具体实现过程中有是否取得了root权限之分。

2.3 文件传输功能的实现

本功能涉及到文件传输的用例有本地备份文件到服务器和还原服务器端文件到本地。备份文件到服务器和还原服务器端文件到本地是现在很多公司提供的一项增值业务。此业务一经推出受到极大的欢迎和好评,它的目的在于降低因意外导致数据造成的损失。出于降低用户风险考虑该文也实现了类似的功能。

文件的上传下载均采用Http协议。该文主要完成了如何在Android平台上利用Http协议进行文件的传输。

文件上传示例代码如下:

在本地文件备份到服务器端的时候,本设计在手机客户端利用SQLite数据库来记录备份到服务器端文件的概要信息,这些信息是日后还原数据的重要参数。

2.4 系统参数设置功能的实现

对于使用一个软件每个客户都有自己的习惯偏好,为迎合人们的这一习惯此软件提供设置这一功能用于保存和修改用户偏好信息。

3 系统特色

3.1 列表显示状态下拖动文件实现删除、复制、移动功能

列表状态下拖动文件,实现文件的删除、复制、移动功能是为提升用户体验和方便用户进行最基本的文件操而设计的,此功能类似于Windows下按住鼠标左键操作文件。

实现此功能主要是重写ListView中的onTouchEvent(MotionEvent event)。

3.2 多语言和国际化

本系统兼容了简体中文和英文两种语言,首先在values文件夹中建立默认strings.xml,再建立values-zh-rCN(zh表示中文rCN表示简体)文件夹,在新文件夹里放置一个strings.xml。strings.xml里是各种语言字符串。如果涉及到参数配置类xml文件夹也要改成xml和xml-zh。这样在Android的系统中进行语言切换,应用程序也会跟着切换语言。

3.3 多标签页显示

在本系统中出于方便用户管理文件特设计了类似与Windows下的多窗口的多标签窗口显示,效果如图1所示。

4 结束语

本系统具有功能全面、结构完整、数据管理容易、程序升级改造方便、界面友好、操作方便、安全性高等优点。

作为人机交互的重要组成部分,文件管理功能实现的优劣直接影响了这一操作系统的用户体验。如果能开发出一款功能丰富、界面友好、性能优越的文件管理器,不但能方便用户管理个人数据,为用户节约宝贵的时间,同时还能增强Android操作系统的用户体验,进而促进系统市场份额的提升。

参考文献

[1]勒岩,姚尚朗.Android开发入门与实战[M].北京:人民邮电大学,2009.

[2]李炜.Google Android开发入门指南[M].北京:人民邮电出版社,2009.

[3]郭宏志.Android应用开发详解[M].北京:电子工业出版社,2010.

[4]王向辉,张国印,沈洁.Android应用程序开发[M].北京:清华大学出版社,2010.

上一篇:理工类研究生下一篇:催化化学发光