毕业设计(论文)-网络安全监控系统的设计与实现.doc_第1页
毕业设计(论文)-网络安全监控系统的设计与实现.doc_第2页
毕业设计(论文)-网络安全监控系统的设计与实现.doc_第3页
毕业设计(论文)-网络安全监控系统的设计与实现.doc_第4页
毕业设计(论文)-网络安全监控系统的设计与实现.doc_第5页
已阅读5页,还剩54页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

四川理工学院毕业设计(论文) 网络安全监控系统的设计与实现学 生:学 号:专 业:电子信息科学与技术班 级:2008级02班指导教师: 四川理工学院自动化与电子信息学院二o一二年六月赵平:网络安全监控系统的设计与实现摘要目前基于网络的安全问题日益突出,尤其是应用广泛的p2p文件共享还存在着很大的网络安全问题,所以本文设计了p2p文件共享监控系统。系统采用分布式防护的方法,由管理员集中定义安全策略,但安全策略的实施位于各个终端之上。该监控系统实现了对文件共享的实时监控,在文件共享时一旦有非法操作就会向管理员发出相应的警报。解决了p2p文件共享的安全问题。与现有监控手段相比,避免了可能造成的性能瓶颈,具有更好的可扩展性,能实现更细的策略控制力度。关键词:点对点;安全监控;安全策略 abstractnetwork-based security issues have become increasingly prominent, this article focused on a particular aspect of network management issues, file sharing, which is currently widely used in social file-sharing technology there are significant safety issues. designed a p2p file-sharing monitoring system. the system uses a distributed protection by the administrator to centrally define security policy, security policy implementation is located in each terminal. that the monitoring system to achieve real-time monitoring of file sharing, file sharing, illegal operation and will receive a corresponding alert to the administrator. solve the security issues of p2p file sharing. compared with the existing monitoring tools, to avoid performance bottlenecks may be caused, and has better scalability, to achieve finer policy control efforts.key words: peer-to-peer(p2p); security monitor ; security policyi目录摘要iabstractii第一章引言11.1 系统开发背景11.2 国内外研究现状11.3系统需求11.4 设计主要内容2第二章 系统相关介绍32.1 p2p的介绍32.1.1 p2p的定义32.1.2 p2p存在的安全缺陷32.2 文件路由42.3 策略路由42.3.1 策略路由概念42.3.2 路由的实现原理52.3.3 route-map原理与执行62.4 策略路由配置模拟软件boson netsim72.5 ndis8第三章 总体设计93.1 监控系统功能93.2 监控系统模块93.3 系统工作流程103.4 每块模块的作用113.4.1 gui113.4.2 监控中心113.4.3 终端主控程序113.4.4 ndis12第四章 详细设计134.1 设计流程134.2 gui模块的生成与功能实现134.2.1 用户注册信息模块的设置134.2.2 策略路由的设置164.3 监控中心模块功能实现224.4 ndis模块的功能实现224.4.1 ndis的结构功能224.4.2 数据包过滤与截获的具体步骤234.5 日志和审计294.6 非法文件下载报警34第五章 系统测试355.1 部门登录测试355.2 终端监控测试365.3 日志和审计测试365.4 非法文件报警测试37第六章 结束语38致谢39参考文献40附录 系统代码41 赵平:网络安全监控系统的设计与实现第一章 引言1.1 系统开发背景网络给我们带来了许多方便,我们可以用文件共享轻轻松松的与其他人分享文件,文件共享是指主动地在网络上(互联网或小的网络)共享自己的计算机文件。一般文件共享使用p2p模式,p2p就是人可以直接连接到其他用户的计算机、交换文件,而不是像过去那样连接到服务器去浏览与下载;它改变互联网现在的以大网站为中心的状态、重返“非中心化”,并把权力交还给用户。文件本身存在用户本人的个人电脑上。大多数参加文件共享的人也同时下载其他用户提供的共享文件。目前文件共享监控系统具有如下特点:1、具有较高的安全性,管理员能实时的了解各个用户的当前操作。2、具有较高的效率,管理员能及时发现系统报警提示,做出相关处理。1.2 国内外研究现状p2p技术目前是互联网文件共享中广泛采用的一种方式。在早期的irc聊天系统中,就有一些客户端允许用户间点对点地传输文件。而当时的ftp便可以认为是一种传统的“服务器-客户端”模式的文件传输方式。显而易见的是,p2p相对于传统模式,有着分摊带宽,节约服务器成本的巨大优势。p2p直接将人们联系起来,让人们通过互联网直接交互。p2p使得网络上的沟通变得容易、更直接共享和交互,真正地消除中间商。p2p就是人可以直接连接到其他用户的计算机、交换文件,而不是像过去那样连接到服务器去浏览与下载。p2p另一个重要特点是改变互联网现在的以大网站为中心的状态、重返非中心化,并把权力交还给用户1。1.3系统需求指标体系通常是一个多指标、层次化的结构,能够由表及里、深入清晰的表述读者满意度测评指标体系的内涵。每一层次的测评指标都是由上一层测评指标展开的,而上一层次的测评指标体系则是通过下一层的测评指标的测评结果反映出来的。1.4 设计主要内容此次p2p文件共享监控系统针对p2p文件共享带来的安全问题,监控系统实现的主要功能如下所示:(1)对主机所在局域网内的各个主机上的文件共享进行一定的监控。当有文件进行传输时,根据管理员自己定义的具体安全策略做出相应的操作,如允许或拒绝传输。(2)文件安全策略是由该局域网的管理员进行集中定义,但进行具体操作时是要分配到各个主机监控终端执行。系统的防范不仅仅依赖于网络边界单个检查点,消除了网络性能的瓶颈,容易实施针对特价协议的包过滤,实现对特定应用程序的安全策略。(3)对文件的传输行为提供日志和审计功能,系统记录下安全日志,于此同时也可以对日志进行查询统计,生成报表有助于管理员的审计。 1 赵平:网络安全监控系统的设计与实现第二章 系统相关介绍2.1 p2p的介绍因为本文主要针对的是p2p文件共享的监控,所以我们应该首先来了解什么叫p2p,以及为什么要设置监控系统来对其进行一定的监控,它所存在的问题是什么。2.1.1 p2p的定义对等网络;端到端以非集中方式使用分布式资源来完成关键任务的一类系统和应用资源包括计算能力、数据(存储和内容)、网络带宽和场景(计算机、人和其它资源)关键任务可能是分布式计算、数据/内容共享,通信和协同、或平台服务典型位置:因特网边界或ad-hoc网内巨大的扩展力通过低成本交互来聚合资源,导致整体大于部分之和。低成本的所有权和共享使用现存的基础设施、削减和分布成本匿名和隐私允许对等端在其数据和资源上很大的自治控制2。2.1.2 p2p存在的安全缺陷p2p网络采用的分布式结构在扩展性和灵活性的同时,也使它面临着巨大的安全挑战:它需要在没有中心节点的情况下,提供身份验证,授权,数据信息的安全传输,数字签名,加密等机构。但目前的p2p技术距离实现这一目标尚有一定的距离,它本身存在的一些安全缺陷阻碍其得到进一步应用。下面介绍一些主要的p2p安全缺陷。(1)一个恶意的服务器可以接受主服务器的文档副本,然后向用户发送修改过的信息。它还可以在接受了主服务器的副本后拒绝服务,造成“服务否认”。更为隐患的攻击是不分配给副本足够的资源。(2)现行的大多数p2p系统并没有在节点间建立信任关系,只是采用一定的机制防范恶意行为。例如,有的方案并不阻止一个节点共享一个其内容与其描述并不匹配的文件,用户必须自己解决因下载其他节点的文件带来的不安全因素。(3)在获取资源的时候我们首先需要保证所下载的资源正是我们需要的资源在最好的情况下,我们还要确定所下载的资源只包含有符合需求的文件,也就是说没有其他不需要或是不希望有的垃圾文件。但是在目前已实现的p2p系统中,不存在中心服务器提供的基于内容的鉴别,资源共享严重依赖于资源提供者和需求者之间的相互信任,事实上只能保证所请求资源的标志与希望的标志一致。这也使的一些垃圾文件伪装成正常文件进行传播。2.2 文件路由每个网上peer分配一个随机id,并知道其他peers的给定号码当共享文件发布到系统上时,根据文件名字和内容hash成为id,每个peer将根据该id向该文件路由,该过程重复执行,直到最近的peerid是现行peer的id(形成环路)每个路由操作还保持文件副本在本地。当peer请求某文件时,该请求将用该文件的id到达peer,过程重复直到发现文件副本,最终文件下载到请求源端。2.3 策略路由2.3.1 策略路由概念所谓策略路由,顾名思义,即是根据一定的策略进行报文转发,因此策略路由是一种比目的路由更灵活的路由机制。在路由器转发一个数据报文时,首先根据配置的规则对报文进行过滤,匹配成功则按照一定的转发策略进行报文转发。这种规则可以是基于标准和扩展访问控制列表,也可以基于报文的长度;而转发策略则是控制报文按照指定的策略路由表进行转发,也可以修改报文的ip优先字段。因此,策略路由是对传统ip路由机制的有效增强。策略路由能满足基于源ip地址、目的ip址、协议字段,甚至于tcp、udp的源、目的端口等多种组合进行选路。简单点来说,只要ip standard/extended acl 能设置的,都可以做为策略路由的匹配规则进行转发。策略路由(policy route)是指在决定一个ip包的下一跳转发地址或是下一跳缺省ip地址时,不是简单的根据目的ip地址决定,而是综合考虑多种因素来决定。如可以根据dscp字段、源和目的端口号,源ip地址等来为数据包选择路径。策略路由可以在一定程度上实现流量工程,使不同服务质量的流或者不同性质的数据(语音、ftp)走不同的路径。基于策略的路由为网络管理者提供了比传统路由协议对报文的转发和存储更强的控制能力。传统上,路由器用从路由协议派生出来的路由表,根据目的地址进行报文的转发。基于策略的路由比传统路由能力更强,使用更灵活,它使网络管理者不仅能够根据目的地址而且能够根据协议类型、报文大小、应用或ip源地址来选择转发路径。策略可以定义为通过多路由器的负载平衡或根据总流量在各线上进行报文转发的服务质量。2.3.2 路由的实现原理入口数据包首先来介绍策略路由的流程,如图2-1所示。策略路由策略路由?有匹配条目?permit yes yes yes 正常路由(基本目标)图2-1 策略路由流程使用route-map来配置策略路由的流程,策略路由只对入口数据包有效。应用策略路由,必须要指定策略路由使用的路由映射,并且要创建路由映射。一个路由映射由很多条策略组成,每个策略都定义了1个或多个的匹配规则和对应操作。一个接口应用策略路由后,将对该接口接收到的所有包进行检查,不符合路由映射任何策略的数据包将按照通常的路由转发进行处理,符合路由映射中某个策略的数据包就按照该策略中定义的操作进行处理。策略路由对报文的发送接口、下一跳的配置是基于多转发表实现的。策略路由的处理流程包括流模式和逐包模式,下面分别介绍流模式与逐包模式。流模式,第一个包查路由转发表,如果存在路由,将该路由项以source、dest、tos、入接口等索引放置到cache中,以后同样的流就可以直接查cache。对于低端路由器,所有操作由cpu内存处理,对于中高端设备,一般由np和asic芯片完成处理。逐包模式,每个包都进行查表后才进行转发。路由器流模式及逐包模式切换命令分别如下:ip route-cache policy 开启快速交换策略路由就是流模式no ip route-cache policy 关闭该功能就是逐包模式2.3.3 route-map原理与执行route-map是由一组match字句和set字句构成,他实际上是访问控制列表的一个超集。当需做策略路由的报文匹配route-map中的match字句定义的规则时,将按照set字句的配置决定该报文的路由方式,包括设置报文的优先权字段,设置报文的下一跳,设置报文的发送接口3。什么叫做routemap,类似于复杂的access-list自顶向下地处理,一旦有一条匹配,则立刻结束route-map查找,route-map每个条目都被赋予编号,可以任意地插入或删除条目。当使用策略路由时,首先定义重分布路由映射,一个路由映射可以由很多策略组成,策略按序号大小排列,只要符合了前面策略,就退出路由映射的执行。 由于路由映射中每个策略都有其编号,故可以方便的插入或删除。route-map的执行语句如下:route-map test permit 10match x y zmatch aset bset croute-map test permit 20match qset rdeny all(系统隐含)if (x or y or z) and athen set (b and c)else if qthen set relse set nothingroute-map-name给路由图定义一个便于记忆的名字。redistribute 路由进程配置命令是通过该名字引用路由图的。一个路由图可以定义多个路由图策略,一个路由图策略对应一个序号。总共有两个序号,分别为permit、deny,下面一一介绍。如果定义了permit关键字,又符合match定义的匹配规则。则set命令对重分布路由进行控制;对于策略路由,set命令将对数据包转发进行控制。并退出路由图的操作。如果定义了permit关键字,而不符合match定义的匹配规则。则将进入第二个路由图策略进行操作。直到最终执行了set命令。如果定义了deny关键字,又符合match定义的匹配规则。则不会执行任何操作,该路由图策略不允许进行路由重分布或策略路由,而且退出路由图操作。如果定义了deny关键字,而不符合match定义的匹配规则。则将进入下一个路由图策略进行操作。直到最终执行了set命令。 2.4 策略路由配置模拟软件boson netsimboson netsim有两个组成部分:boson network designer(实验拓扑图设计软件)和boson netsim(实验环境模拟器)。boson netsim安装结束以后,在桌面上会产成两个图标:boson network designer和boson netsim。其中boson network designer用来绘制网络拓扑图,network designer可让用户构建自己的网络结构或在实验中查看网络拓扑结构。我们就是通过这个组件搭建自己的免费实验室的。boson netsim用来进行设备配置练习,是最重要的组件,用户可以选择网络拓扑结构中不同的路由、交换设备并进行配置,也就是说输入指令、切换设备都是在control panel中进行。全部的配置命令均在这个组件中输入。boson netsim是一款cisco路由器,交换机模拟程序。它的出现给那些正在准备ccna,ccnp考试却苦于没有实验设备,实验环境的备考者提供了实践联的有力环境。boson算得上是目前最流行的,操作最接近真实环境的模拟工具。可以毫不夸张地说,它就是真实设备的缩影。与真实实验相比,使用它省去了我们制作网线连接设备,频繁变换console线,不停地往返于设备之间的环节。同时,它的命令也和最新的cisco的ios保持一致,它可以模拟出cisco的中端产品35系列交换机和45系列路由器。它还具备一项非常强大的功能,那就是自定义网络拓扑结构及连接。通过boson我们可以随意构建网络,pc、交换机、路由器都可被模拟出来,而且它还能模拟出多种连接方式(如pstn、isdn、ppp等)。2.5 ndisndis是基于x86平台操作系统网卡驱动程序必须遵守的设计框架。他将ndis驱动程序中的一些公用代码提取出来,使ndis驱动程序只需要利用和硬件有关的少量代码。transport driverprotocol xxxmediaxndisndis中间层驱动介于协议层与小端口层之间,imd对上面的协议层表现了一个模拟的微端口网卡结构,而对于下面的网卡则表现为一个协议层的结构,他能截获所有的网络数据包。ndis中间层驱动应用广泛,除了对数据包拦截与过滤外,还可以实现vpn、nat.pppoe.以及网络负载均衡等。因此,研究ndis中间驱动程序的实现很有意义。ndis中间层驱动程序位于网卡驱动与协议驱动之间,同时具有miniport和protocol两种驱动程序接口。因此他在驱动层结构的中间层。它既与上层协议驱动程序通行又与下层端口驱动程序通信。上层协议驱动程序是通过ndis调用函数进行通信。而对于下层驱动程序,中间驱动程序就像是一个协议驱动程序。下图就描述了这种ndis分层结构。ndis包括三个部分,ndis中间层驱动,微端口网卡结构,协议层的结构,他们位于不同层次,实现不同的功能,但三者之间的关联非常重要,整个模块要三者协同工作才能完成,ndis分层结构如图2-2所示4。miniport xxxmediaxintermediate driverprotocol xxxmediayminiport xxxmediaynic driver图2-2 ndis分层结构133 赵平:网络安全监控系统的设计与实现第三章 总体设计3.1 监控系统功能针对p2p文件共享带来的安全问题,本文设计了p2p文件共享监控系统。监控系统实现的主要功能如下所示:(1)对主机所在局域网内的各个主机上的文件共享进行一定的监控。当有文件进行传输时,根据管理员自己定义的具体安全策略做出相应的操作,如允许或拒绝传输。(2)文件安全策略是由该局域网的管理员进行集中定义,但进行具体操作时是要分配到各个主机监控终端执行。系统的防范不仅仅依赖于网络边界单个检查点,消除了网络性能的瓶颈,容易实施针对特价协议的包过滤,实现对特定应用程序的安全策略。(3)对文件的传输行为提供日志和审计功能,系统记录下安全日志,于此同时也可以对日志进行查询统计,生成报表有助于管理员的审计。3.2 监控系统模块文件共享监控系统的设计与实现包括六块子系统:(1)gui(图形用户接口)(2)监控中心(3)终端监控程序(4)ndis(驱动中间层)(5)非法文件下载报警(6)非法文件共享报警以上六块子模块分别实现不同的功能,用户在gui中实现安全策略的设置,监控中心将策略分发到各个终端,终端根据监控中心发来的策略,执行相关操作,然后将相关的数据在ndis中进行过滤和截获。产生日志,最后再进行日志审计,而日志记录供管理员参考,对当前网络做出有效管理。系统模块如图3-1所示。p2p文件共享监控系统ndis终端主控程序监控中心gui非法文件共享报警安全策略设置用户登录设置终端监控日志和审计图3-1 系统模块3.3 系统工作流程 现在我们来介绍系统系统工作的流程,在p2p文件共享监控系统中,首先该局域网的管理员通过gui(图形用户接口)对局域网内的各个用户的p2p文件共享安全策略进行集中定义,然后监控中心将定义好的安全策略发送到各个主机终端主控程序,然后再由主控程序交给内核的驱动程序程序执行相关的操作。在此过程中要由ndis(network driver interface specification,即网络驱动接口规范)驱动截获来自主控程序的数据包,按策略过滤数据包并生成日志再传给终端主控程序。最后监控中心收集处理各个主机的日志信息,向管理员提供日志查询和审计功能。经过日志审计之后将所得的数据分析结果传给gui,在gui中做出相应的反应,如果审计结果与gui的策略设置不附,则会触发报警模块,非法文件共享报警,或者是非法文件下载报警模块会发出报警信号。提醒管理员,而当管理员得到系统提醒后,就会采取相关的操作,对局域网做出有效的安全管理。下面给出了系统工作时的子模块的作用。系统工作流程如图3-2所示。 数据过滤监控中心终端主控程序分发策略策略设置策略传入日志传出提交日志日志审计guindis驱动 图3-2 系统工作流程3.4 每块模块的作用 3.4.1 gui gui(图形用户界面)的广泛应用是当今计算机发展的重大成就之一。inms系统的gui作为整个网管的用户接口,负责所有数据的呈现与网管系统后台各模块做必要的信息交互,在本系统中它的主要作用就是有助于管理员对整个局域网里的集中管理,并且管理员可以根据自己的需要登录到监控中心自己定义局域网内的文件共享的安全策略,将每个用户登录情况,及对文件的共享情况,如最早共享时间与共享时间信息,以及在某一时间段文件下载信息和下载源5。3.4.2 监控中心 监控中心将管理员定义好的文件安全策略存储起来,而且为了取得终端的安全策略,终端主控程序将终端id等信号发送到监控中心。于此同时将所配置的安全策略分发到各个终端主控程序。 3.4.3 终端主控程序为了便于策略的执行,监控系统将用户和其使用的主机绑定。当在主机上安装终端监控程序时,自动生成一个终端id,用于表示使用该主机及其用户。以后管理员通过设置的用户策略与其用户和终端id联系起来。如果管理员尚未创建该用户的策略,则取默认策略,通常是禁止文件传输。中间层驱动程序就可以依据取得的策略对数据包过滤。3.4.4 ndis为了对局域网内主机的p2p文件传输行为进行监控,需要能够截获和过滤终端发送和接收的数据包,通过数据包的截获与过滤,进行数据分析。并生成日志报表和日志审计,供管理员参考。这是通过ndis hook driver来实现的。赵平:网络安全监控系统的设计与实现第四章 详细设计4.1 设计流程我们已经介绍了本系统的工作流程,以及每个子系统的作用。现在我们来详细的介绍此监控系统的详细设计。因为inms的gui是cmin02移动智能网的一个重要组成部分,inms提供友好的人机界面,因此,inms可以认为是cmin02系统的网元管理系统或操作维护中心。inms系统的开发是为了达到网管新规范的要求,使网管软件功能强大,界面友好,更方便的提供给用户使用,它被认为是管理智能网的有效手段。作为网管系统,他对外提供各种管理功能,主要包括配置管理,告管理,性能管理,报表管理,用户管理,权限管理等功能。因此我们可以根据gui的这些功能对局域网进行一定的管理。因为对文件进行访问时,要记录下访问日志,以有助于管理员对每个文件的访问情况有所了解。这样管理员能够更好的管理局域网。4.2 gui模块的生成与功能实现gui模块在本系统中是一个重要模块,此模块包含三个子模块:用户注册信息、文件共享安全策略设置、非法文件下载报警,每个子模块具有如下功能,用户注册信息是为了有针对性向用户提供文件共享,也只有用户登录正确之后才能进行相关操作。管理员也可以通过用户所注册的信息对其进行有效管理。安全策略设置模块的功能是负责收集设备的各种软件硬件配置信息,提供给网管模块查询。配置管理相制当的重要,它初始化网络,并配置网络,以使其提供网络服务。配置管理是一组对辨别,定义,控制和监视组成一个通信网络的对象所必要的相关功能,目的是为了实现某个特定功能或网络性能达到最优。非法文件报警模块是为了当某些用户正在进行非法访问时能够提醒管理员进行相关操作,进行有效的管理。4.2.1 用户注册信息模块的设置为了维护文件共享安全性能,在向用户提供资源共享时要具有针对性,也就是指当用户登录成功时,该用户才能进行相关操作。所以我们应该设置用户注册模块,设计步骤如下:一、 使用access数据库创建用户登录,首先必须设置数据库,这里仅仅设置用户登录表:数据表结构如表4-1所示,数据表数据如表4-2所示910。 表4-1 数据表结构列名称数据类型数据大小说明id自动编号识别号mc文本20用户名称mm文本20用户密码qx数字长整型用户权限表4-2数据表数据idmcmmqx1aaa12312bbb12323ccc12334ddd1234二、数据库连接:在程序中要连接数据库,才能使用数据表,所以必须连接数据库,数据库连接比较简单,关键是程序中必须添加引用,添加方法是点击【工程】-【引用】在对话框选择“microsoft dao 3.6 object library”和“microsoft activex data objects 2.6 library”,将它们勾选,然后点击【确定】,这样就添加了数据库的引用了。接下来在程序中添加一个模块(注意,不是类模块),模块名称为 module1 在模块中编写下面的代码:public db as new adodb.connection 声明数据库连接对象public rs as new adodb.recordset 声明将来就对象public sub sjk(db) 连接数据库过程db.connectionstring = driver=microsoft access driver (*.mdb);dbq= & app.path & a.mdbdb.openend sub由于是在模块中声明和创建过程的,因此这些声明的变量和过程是程序共享的,也就是在程序的所有界面均可以调用变量和 sjk 过程。三、 用户登录界面的设计:添加一个窗体,修改窗体的名称为“登录”,修改窗体的 caption 属性为“用户登录”,修改 width 属性为8550,修改 height 属性为5130,修改 startupposition 属性为 2-屏幕中心,修改 maxbutton 属性为 fales,最后将图片添加到 picture 属性中,好了窗体属性基本设置完成,下面在窗体添加一下需要的控件。在左边的工具栏选择添加二个textbox 控件,分别是text1和text2,添加二个commandbutton 控件,分别是command1和command2,添加4个label控件,分别是label1(0)、label1(1)、label1(2)、label1(3)。四、窗体代码窗口的有关代码清单dim strsql as string 定义一个字符串变量private sub command1_click()if text1.text = then msgbox 用户名不能为空! 请输入用户名!, 16, 错误! exit subend ifif text2.text = then msgbox 用户密码不能为空!请输入用户密码!, 16, 错误! exit subend ifcall sjk(db) 调用数据库连接strsql = select * form a1 where mc= & text1.text & 数据表连接字符串rs.open strsql, db, 2, 2 打开数据表if rs.eof = true then 用户名错误 msgbox 没有这个用户!请检查后重新输入!, 16, 错误! rs.close set rs = nothing db.close set db = nothing exit subelse if not rs!mm = text2.text then 用户密码错误 msgbox 用户密码错误!请检查后重新输入!, 16, 错误! rs.close set rs = nothing db.close set db = nothing exit sub else 登录成功 如果有必要,在这里可以添加系统共有变量存储登录人的一些信息 unload me 关闭登录窗口 某某系统主页面.show 转到用户进入的界面 end ifend if rs.close set rs = nothing db.close set db = nothingend subprivate sub command2_click()end 退出系统end subprivate sub form_load()for i = 0 to 3label1(i).backstyle = 0 使标签透明next i4.2.2 策略路由的设置系统构建完成之后,安全性是必须考虑的问题,保证安全性首先是访问权限,分为两部分。其一是文件权限,即普通文件存取权限rwx。一旦挂载完成,文件附着的用户权限和组权限接管存取权限。其二是挂载权限,它主要针对试图连接到nfs服务器的客户机,由文件etcexports保证安全性。该文件列出允许访问共享目录的的主机名或者ip地址,如果客户机的ip地址和列表中的匹配,则该客户机获得挂载权12。当然,这不可能非常安全。如果用户有能力假冒可信任的地址的话,那么他们也可以容易的挂载共享目录。所以管理员要定义文件共享安全策略,要进行4部分的设置。步骤如下:步骤1:用户分普通用户和根用户为两种用户权限。而用户权限是要与系统文件的属性联系在一起。此属性可以向用户提供对文件和目录的读、写,执行的权限检查和访问控制。普通用户,他们只能修改自己的进程或者文件,同时被禁止硬件和大部分网络配置的访问权。而根用户就可以对所有进程和文件进行修改,对硬件和网络的访问也没有任何限制,如果滥用根用户的话,将带来非常严重的安全威胁。在实际的系统中,对于不同目录,赋予不同的属性策略,从而得到不同的存取属性。属性策略设置步骤为,首先要新建三个目录,randw(可读写的目录)、aonly(只允许添加的目录)、immut(不可写目录)。然后使用chattr命令添加目录相应的属性。以下是几个重要文件属性如表4-3所示。表4-3 重要文件属性 参数 全称 介绍 a atime 禁止系统更新文件的访问时间 s snye 应用程序写入时不缓存,立刻刷新写入磁盘 系统只允许打开文件添加内容而不允许任何进程 a append-only 覆盖或者删除文件内容。若为目录,则只允许进 程创建或修改文件而不允许删除。 i immutable 系统不允许对任何文件的修改。若为目录进程能 修改目录中已经存在的文件。 u undelet 当应用程序删除一个文件时,系统自动保存文件, 使得允许以后可以执行undelet来恢复文件。设置目录的扩展属性只实现了一半的安全,如果是根用户的话仍然可以除去ea位从而获得访问和修改权。目前有些版本的内核里,出现了一种新的具有弹性的内核控制的系统,它可以对ea的设置提供完全的保护。我们可以通过在系统启动阶段对内核可以进行的操作进行限制。这种机制把系统权限分成可以赋予和去除的逻辑组,允许系统管理员调整进程可以进行的操作,减少系统的安全威胁。一般的,标准库文件目录中的capabilityh中定义了系统能力集的列表。如表4-4所示。表4-4 系统能力集 名称 偏移 意义 cap_chown 0 允许更改文件属性 cap_fsetid 4 允许设置setuid位 cap_setgid 6 允许改变组id cap_setuid 7 允许改变用户id cap_linux_immutable 9 允许修改文件的i和a属性 cap_sys_rawio 17 允许对ioperm/iopl的访问 cap_sys_chroot 18 允许使用chroot()系统调用正是这个内核能力集限定了当然内核所有可以进行的操作。直接编辑这个文件相当复杂,lcap(linuxkernelcapabilitiesboundingseteditor)提供了另外的方法,它是一个专门编辑内核能力集的工具。在安装lcnp包之后,我们执行#lcap,得到如下输出:0)*cap_chown. 1)*cap_dac_override.2)*cap_dac_read_search. 3)*cap_fowner.4)*cap_fsetid. 5)*cap_kill.6)*cap_setgid. 7)*cap_setuid.8)*cap_setpcap. 9)*cap_linux_immutable.10)*cap_net_bind_service. 11)*cap_net_broadcast.系统共享目录的属性配置完成之后,执行以下指令来禁止对immutable和rawio做修改。如图4-1所示。rootlocalhost#lcap cap_linux_immutablerootlocalhost#lcap cap_sys_rawio图4-1 执行指令前两部分考虑文件权限。这一部分考虑挂载权限,由于文件系统的安全性很大程度上取决于nfs的安全性,因此,加强nfs的安全性非常重要如何加强的安全性。但是有些系统目前开发出了一套新的文件系统权限管理方法,叫文件访问控制列表。简单来说,acl就是可以设置特定用户或者用户组对于一个文件的操作权限。acl有两种,一种是存取acl(accessacls),针对文件和目录设置访问控制列表。一种是默认acl(defaultacls),只能针对目录设置。如果目录中的文件没有设置acl,它就会使用该目录的默认acl。例如,我们希望安全策略1中创建的目录nmtnfsrandw可以读写。但nfs客户挂载该文件之后,映射为nobody用户(稍后解释),明显的nobody用户是不能读写这个目录的,所以我们需要使用setfacl指令修改目录的acl。setfacl指令如图4-2所示。rootlocalhost#setfacl-m u:noboday:rw/mnt/nfs/randw图4-2 setfacl指令在此之前,需要给ext3文件系统添加acl支持。在etcfstab(dom0和domu中都需要)中根文件系统属性中添加acl并重启。这样,在使用1l查看文件属性的时候,可以看到文件属性列后面多了一个加号,这样就单独给nobody用户添加了对randw目录的读写权限。查看varlibnfsetab,确定acl是否已经开启。rootlocalhost nfs# more/var/lib/nfs/etab/mnt/loop 192.168.0(rw,ayne,wdelay,hide,nocrossmnt,secure,root_squash,no_all_squash,shbree_check,secure-locks,acl,mapping=identity=-2,anongid=-2)/mnt/loop (ro,sync,wdelay,hide,nocrossmnt,secure,root_squash,no_all_squash,a.subtree_check,secure_locks,acl,mapping=identity.anonuid=-2,anonaid=-2)nfs的服务器端有三个重要的文件,需要对这三个文件修改以进行访问控制。这三个文件如图4-3所示。/etc/exports /etc/hosts.allow /etc/hosts.deny图4-3 服务器端口文件首先重新编辑dom0的etcexports,给虚拟机内网用户读写权限,其他用户只读权限。编辑程序如图4-4所示。 rootlocalhost# echo/mnt/share/(rw,sync) *(ro)/etc/exports图4-4 编辑程序然后编辑etchostsallow和etchostsdenynfs对这两个文件的检查规则如下,首先检查etchosts&llow,符合规则的允许通过,然后检查hostsdeny,符合规则的禁止,最后没有在条目中出现的均允许通过。出于安全性考虑,应该限制对提供nfs服务的守护进程的访问权限。如图4-5所示。rootlocalhost# cateof portmap:all lockd:all rquotad:all statd:all eof rootlocalhost# cateof portmap:/ lockd:/ mountd:/255.255.266.0.0 rquotad:/ statd:/ 图4-5 限制访问权限代码 在dom0上,刷新nfs服务器规则,如图4-6所示。rootlocalhost#exportfs_rv 图4-6 刷新nfs服务器规则 在domu上,编辑/etc/fstab和/etc/rc.d/rc.local。如图4-7所示。 rootfc5p

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论