【从零开始学习计算机科学】信息安全(八)防火墙
【从零开始学习计算机科学】信息安全(八)防火墙
- 防火墙
-
- 防火墙概述
-
- 防火墙设计原则
- 防火墙的优点
- 防火墙的不足
- 防火墙类别
- 防火墙技术
-
- 包过滤技术
- 代理技术
- 应用层网关
- 电路级网关
- 状态检查技术
- 地址翻译技术NAT
- 防火墙体系结构
-
- 包过滤路由器
- 双宿主机网关
- 屏蔽主机体系结构
- 屏蔽子网体系结构
- 网闸原理及技术
-
- 网络隔离的缘起
- 逻辑网络隔离(Network Isolation)
- 网闸的技术原理
防火墙
防火墙概述
防火墙是一种在两个信任程度不同的网络之间设置的、用于加强访问控制的软硬件保护设施。防火墙是在两个网络之间执行访问控制安全策略的系统,它可以是软件,也可以是硬件,或两者并用。
防火墙作为“控制点”,限制信息的进入或离开;防火墙可以防止侵入者接近并破坏内部网络资源;防火墙可用于监视、记录、审查重要的业务流;防火墙可实施网络地址转换NAT,缓解地址短缺矛盾。防火墙只允许已授权的业务流通过,而且本身也应抵抗渗透攻击。建立防火墙必须全面考虑安全策略,否则形同虚设。
防火墙设计原则
防火墙系统应遵循的三大原则如下所示:
- 所有进出网络的通信流都应该通过防火墙。
- 所有穿过防火墙的通信流都必须有安全策略和计划的确认和授权。
- 理论上说,防火墙是穿不透的。
防火墙的优点
- 保护脆弱和有缺陷的网络服务。通过过滤不安全的服务来降低内部网络系统的风险。
- 加强对网络系统的访问控制。屏蔽特定的主机、服务访问。
- 集中化的安全管理。防火墙功能作用于内网的每台主机上。
- 加强隐私保护。防火墙可隐蔽那些透漏内部细节的服务。如DNS服务。
- 有关网络使用、滥用的记录和统计。
防火墙的不足
- 防火墙防外不防内。
- 不能防范绕过防火墙的攻击。
- 防火墙配置复杂,容易出现安全漏洞。
- 防火墙往往只认机器(IP地址)不认人(用户身份),控制粒度较粗。
- 防火墙不能防范病毒。
- 防火墙不能防止数据驱动式攻击。
- 不能防备新的网络安全问题。防火墙是一种被动式防护手段,只能对现在已知的网络威胁起作用。因此,通常与IDS设备联动。
防火墙类别
- 第一代防火墙:基于路由器的防火墙。
- 第二代防火墙:代理服务器(Proxy Server)。
- 第三代防火墙: 基于动态包过滤的防火墙。
- 第四代防火墙:自适应防火墙。
防火墙技术可根据防范方式、侧重点的不同而分为很多种类型,但总体来讲可分为三大类(以技术来分):
- 包过滤技术。作用在网络层和传输层,它根据分组包头源地址,目的地址和端口号、协议类型等标志确定是否允许数据包通过。
- 应用代理。也叫应用网关(Application Gateway),它作用在应用层,其特点是完全“阻隔”了网络通信流,通过对每种应用服务编制专门的代理程序,实现监视和控制应用层通信流的作用。
- 电路中继(Circuit Relay)。也叫电路网关(Circuit Gateway)或TCP代理(TCP-Proxy),其工作原理与应用代理类似,不同之处是该代理程序是专门为传输层的TCP协议编制的。
防火墙技术
包过滤技术
数据包过滤技术,顾名思义是在网络中适当的位置对数据包实施有选择的通过。选择依据即为系统内设置的过滤规则(通常称为访问控制表Access Control List),只有满足过滤规则的数据包才被转发至相应的网络接口,其余数据包则被从数据流中删除。数据包过滤可以控制站点与站点、站点与网络和网络与网络之间的相互访问,但不能控制传输的数据内容。
包过滤检查模块深入到系统的网络层和数据链路层之间。因为数据链路层是事实上的网卡(NIC),网络层是第一层协议堆栈,所以防火墙位于软件层次的最底层。
包检查模块能检查包中的所有信息,一般是网络层的IP头和传输层的头。主要检查下面几项:
- IP源地址;
- IP目标地址;
- 协议类型(TCP包、UDP包和ICMP包)
- TCP或UDP的源端口;
- TCP或UDP的目标端口;
- ICMP消息类型;
- TCP报头中的ACK位。
其工作流程主要为:
- 拦截检查所有出/入站报文。
- 验证这个包是否符合过滤规则。
- 记录验证情况,不符合规则的包要