学习情境六网络安全与网络编程项目13防火墙的配置项目1双机互连对等网络的组建13.1项目提出在目前网络受攻击案件数量直线上升的情况下,用户随时都可能遭到各种恶意攻击。张飞近期备受计算机病毒的骚扰,虽然了安装了反病毒软件,但还是存在很多安全隐患,如上网账号被窃取、冒用、银行账号被盗用、电子邮件密码被修改、财务数据被利用、机密档案丢失、隐私曝光等。为了进一步提高计算机及网络的安全性,张飞请诸葛亮帮助安装一款防火墙软件,并合理设置一些安全规则,拦截一些来历不明、有害敌意访问或攻击行为,消除安全隐患。13.2项目分析网络的发展虽然为人们带来了许多方便,可也带来了很多隐患。随着网络的普及,病毒、木马、网络攻击等安全事故层出不穷,安装一款好的防火墙软件必不可少。Windows系统自带了防火墙,能满足一般用户的需要。用InternetExplorer、OutlookExpress等Windows系统自带的程序进行网络连接,Windows防火墙是默认不干预的。Windows防火墙能限制从其他计算机发送来的信息,使用户可以更好地控制自己计算机上的数据,并针对那些未经邀请而尝试连接的用户或程序(包括病毒和蠕虫)提供了一条安全防线。在微软管理控制台(MMC)中,添加“IP安全策略管理”后,通过“IP筛选器表”和“IP筛选器操作”,创建IP安全策略,阻止或许可特定的网络连接,完成自建简易的防火墙。用得较多的还是第三方防火墙软件,如天网防火墙软件等。天网防火墙软件是一款网络安全程序,根据用户设定的安全规则把守网络,提供强大的访问控制、信息过滤等功能,从而抵御网络入侵和攻击,防止信息泄露。天网防火墙把网络分为本地网和互联网,可针对来自不同网络的信息,来设置不同的安全方案,适合于任何方式上网的用户。13.3相关知识点13.3.1防火墙概述传统情况下,当构筑和使用木结构房屋的时候,为防止火灾的发生和蔓延,人们将坚固的石块堆砌在房屋周围作为屏障,这种防护构筑物被称为防火墙(FireWall)。如今,人们借助这个概念,使用“防火墙”来保护敏感的数据不被窃取和篡改。不过,这种防火墙是由先进的计算机系统构成的。防火墙犹如一道护栏隔在被保护的内部网与不安全的非信任网络之间,用来保护计算机网络免受非授权人员的骚扰与黑客的入侵。防火墙可以是非常简单的过滤器,也可能是精心配置的网关,但它们的原理是一样的,都是监测并过滤所有内部网和外部网之间的信息交换。防火墙通常是运行在一台单独计算机之上的一个特别的服务软件,它可以识别并屏蔽非法的请求,保护内部网络敏感的数据不被偷窃和破坏,并记录内外网通信的有关状态信息日志,如通信发生的时间和进行的操作等。防火墙技术是一种有效的网络安全机制,它主要用于确定哪些内部服务允许外部访问,以及允许哪些外部服务访问内部服务。其基本准则就是:一切未被允许的就是禁止的;一切未被禁止的就是允许的。防火墙应该是不同网络或网络安全域之间信息的唯一出入口,能根据企业的安全策略控制(允许、拒绝、监测)出入网络的信息流,且本身具有较强的抗攻击能力,是提供信息安全服务,实现网络和信息安全的基础设施。在逻辑上,防火墙是一个分离器,一个限制器,也是一个分析器,它能有效监控内部网和外部网之间的任何活动,保证了内部网络的安全。其结构如图13-1所示。防火墙具有如下作用:①防火墙是网络安全的屏障。由于只有经过精心选择的应用协议才能通过防火墙,所以防火墙(作为阻塞点、控制点)能极大地提高内部网络的安全性,并通过过滤不安全的服务而降低风险,使网络环境变得更安全。②防火墙可以强化网络安全策略。通过以防火墙为中心的安全方案配置,能将所有安全软件(如口令、加密、身份认证、审计等)配置在防火墙上。与将网络安全问题分散到各个主机上相比,防火墙的集中安全管理更经济。③对网络存取和访问进行监控审计。如果所有的访问都经过防火墙,那么,防火墙就能记录下这些访问并做出日志记录,同时也能提供网络使用情况的统计数据。当发生可疑动作时,防火墙能进行适当的报警,并提供网络是否受到探测和攻击的详细信息。另外,收集一个网络的使用和误用情况也是非常重要的。④防止内部信息的外泄。通过利用防火墙对内部网络的划分,可实现对内部网络重点网段的隔离,从而限制局部重点或敏感网络安全问题对全局网络造成的影响。再者,隐私是内部网络非常关心的问题,一个内部网络中不引人注意的细节可能包含了有关安全的线索而引起外部攻击者的兴趣,甚至因此而暴露了内部网络的某些安全漏洞。使用防火墙就可以隐蔽那些透漏内部细节的服务。防火墙也有局限性,存在着一些防火墙不能防范的安全威胁,如防火墙不能防范不经过防火墙的攻击(例如,如果允许从受保护的网络内部向外拨号,一些用户就可能形成与因特网的直接连接)。另外,防火墙很难防范来自于网络内部的攻击以及病毒的威胁等。13.3.2防火墙技术1.分组(包)过滤技术分组过滤器是目前使用最为广泛的防火墙,其作用于网络层和传输层,通常安装在路由器上。它根据分组中的源地址、目的地址、端口号、协议类型等标志,确定是否允许数据包通过。只有满足过滤逻辑的数据包才被转发到相应的目的地出口端,其余数据包则从数据流中丢弃。优点:一个过滤路由器能协助保护整个网络;数据包过滤对用户透明;过滤路由器速度快、效率高。缺点:不能彻底防止地址欺骗;一些应用协议不适合于数据包过滤;正常的数据包过滤路由器无法执行某些安全策略。2.应用代理技术应用代理也叫应用网关,它工作在应用层,采用代理服务器来代替内部网络的用户接收外部的数据,取出应用层的信息并经过检查后,通过建立一条新的会话连接将数据转交给内部用户主机。由于内部主机与外部主机不进行直接的通信连接,而是通过防火墙的应用层进行传达转交,所以可以较好地保证安全性。但是它要求应用层数据中不包含加密、压缩的数据,否则应用层的代理很难实现安全检测。应用代理技术的特点是完全“阻隔”了网络通信流,通过对每种应用服务编制专门的代理程序,实现监视和控制应用层通信流的作用。与分组过滤技术不同之处在于,内部网和外部网之间不存在直接连接,同时提供审计和日志服务。实际中的应用代理通常由专用工作站来实现,如图13-2所示。应用代理型防火墙是内部网与外部网的隔离点,工作在OSI模型的最高层,掌握着应用系统中可用作安全决策的全部信息,起着监视和隔绝应用层通信流的作用。优点:可以检查应用层、传输层和网络层的协议特征,对数据包的检测能力比较强。缺点:难于配置和处理速度较慢。针对更高安全性的要求,常把分组过滤技术与应用代理技术结合起来,形成复合型防火墙产品。所用主机称为堡垒主机,负责提供代理服务。这种结合通常有屏蔽主机和屏蔽子网这两种防火墙体系结构方案。在屏蔽主机防火墙体系结构中,如图13-3所示,包过滤路由器或防火墙与因特网相连,同时一个堡垒主机安装在内部网络,通过在包过滤路由器或防火墙上过滤规则的设置,使堡垒主机成为因特网上其他节点所能到达的唯一节点,确保内部网络不受未授权外部用户的攻击。在屏蔽子网防火墙体系结构中,如图13-4所示,堡垒主机放在一个子网(非军事区,DMZ)内,两个包过滤路由器放在这一子网的两端,使这一子网与因特网及内部网分离,堡垒主机和包过滤路由器共同构成了整个防火墙的安全基础。3.状态检测技术状态检测技术是基于会话层的技术,对外部的连接和通信行为进行状态检测,阻止具有攻击性可能的行为,从而可以抵御网络攻击。Internet上传输的数据都必须遵循TCP/IP协议。根据TCP协议,每个可靠连接的建立需要经过“客户端同步请求”、“服务器应答”、“客户端再应答”3个阶段(即3次握手),如常用的Web浏览、文件下载和收发邮件等都要经过这3个阶段。这反映出数据包并不是独立的,而是前后之间有着密切的状态联系,基于这种状态变化,引出了状态检测技术。状态检测防火墙摒弃了包过滤防火墙仅检查数据包的IP地址等几个参数,而不关心数据包连接状态变化的缺点,在防火墙的核心部分建立状态连接表,并将进出网络的数据当成一个个的会话,利用状态连接表跟踪每一个会话状态。状态检测对每一个数据包的检查不仅根据规则表,还考虑了数据包是否符合会话所处的状态,因此提供了完整的对传输层的控制能力。状态检测技术采用了一系列优化技术,使防火墙性能大幅度提升,能应用在各类网络环境中,尤其是在一些规则复杂的大型网络上。任何一款高性能的防火墙,都会采用状态检测技术。国内著名的防火墙公司,如北京天融信等公司,2000年就开始采用状态检测技术,并在此基础上创新推出了核检测技术,在实现安全目标的同时可以得到极高的性能。13.3.3防火墙技术的发展目前对防火墙的发展普遍存在着两种观点,即所谓的“胖、瘦”防火墙之争。一种观点认为,要采取分工协作,防火墙应该做得“精瘦”,只做防火墙的专职工作,可采取多家安全厂商联盟的方式来解决;另一种观点认为,应该把防火墙做得尽量的“胖”,把所有安全功能尽可能多地附加在防火墙上,成为一个集成化的网络安全平台。从本质上讲,“胖、瘦”防火墙并没有好坏之分,只有需求上的差别。低端防火墙是一个集成的产品,它可以具有简单的安全防护功能,还可以具有一定的IDS(入侵检测系统)功能,但一般不会集成防病毒功能。而中高端防火墙更加专业化,安全和访问控制并重,主要对经过防火墙的数据包进行审核,安全会更加深化,对协议的研究更加深入,同时会支持多种通用的路由协议,对网络拓扑更加适应,VPN会集成到防火墙内,作为建立广域网安全隧道的一种手段,但防火墙不会集成IDS和防病毒功能,这些还是由专门的设备负责完成。13.3.4Windows防火墙WindowsXPSP2为连接到因特网上的小型网络提供了增强的防火墙安全保护。默认情况下,会启用Windows防火墙,以便帮助保护所有因特网和网络连接。用户还可以下载并安装自己选择的防火墙。用户可以将防火墙视为一道屏障,它检查来自因特网或网络的信息,然后根据防火墙设置,拒绝信息或允许信息到达计算机,如图13-5所示。13.3.4Windows防火墙当因特网或网络上的某人尝试连接到用户的计算机时,这种尝试称为“未经请求的请求”。当收到“未经请求的请求”时,Windows防火墙会阻止该连接。如果运行的程序需要从因特网或网络接收信息,那么防火墙会询问阻止连接还是取消阻止(允许)连接。如果选择取消阻止连接,Windows防火墙将创建一个“例外”,这样当该程序日后需要接收信息时,防火墙就会允许信息到达用户的计算机。虽然可以为特定因特网连接和网络连接关闭Windows防火墙,但这样做会增加计算机安全性受到威胁的风险。Windows防火墙有三种设置:“开”、“开并且无例外”和“关”。①“开”:默认情况下处于打开状态,而且通常应当保留此设置不变。选择此设置时,Windows防火墙阻止所有未经请求的连接,但不包括那些对“例外”选项卡中选中的程序或服务发出的请求。②“开并且无例外”:Windows防火墙会阻止所有未经请求的连接,包括那些对“例外”选项卡中选中的程序或服务发出的请求。当需要为计算机提供最大程度的保护时,可以使用该设置。如果选中“不允许例外”复选框,仍然可以收发电子邮件、使用即时消息程序或浏览大多数网页。③“关”:此设置将关闭Windows防火墙。选择此设置时,计算机更容易受到未知入侵者或因特网病毒的侵害。此设置只应由高级用户用于计算机管理目的,或者在计算机有其他防火墙保护的情况下使用。Windows防火墙只阻截所有传入的未经请求的流量,对主动请求传出的流量不作理会。而第三方防火墙软件一般都会对两个方向的访问进行监控和审核,这一点是它们之间最大的区别。13.3.5天网防火墙天网防火墙个人版SkyNetFireWall(以下简称为天网防火墙)是由广州众达天网技术有限公司研发制作给个人计算机使用的网络安全程序。是“中国国家安全部”、“中国公安部”、“中国国家保密局”及“中国国家信息安全测评认证中心”信息安全产品最新检验标准认证通过