论文部分内容阅读
摘 要:基于ACL(Access Control List,访问控制列表)的包过滤防火墙是将制定出的不同区域间访问控制策略部署在路由器端口处过滤进出数据包,达到对访问进行控制,维护网络安全的目的。文章在模拟组建互联网环境基础上,根据常见网络安全业务需求,以华为R1760路由器ACL配置及部署为例,对基于ACL的包过滤防火墙实验设计、部署及结果进行了详尽描述。
关键词:ACL;包过滤;防火墙
中图分类号:TP393 文献标志码:A 文章编号:1673-8454(2014)14-0073-04
一、引言
对于局域网的保护,防火墙技术是一种行之有效的和广泛使用的安全技术,根据防火墙所采用的技术不同,主要分为包过滤型、应用代理型和监测型。其中包过滤作为最早发展起来的一种技术,通过对流经路由器的所有数据包逐个检查,查看源、目的IP地址、端口号以及协议类型(UDP/TCP)等,并依据所制定的ACL来决定数据包是通过还是不通过,进而可以隔离风险区域与安全区域的连接,同时不会妨碍人们对风险区域的访问。由于包过滤防火墙技术大多是在网络层和传输层实现,处理速度快,对应用透明,简单实用,实现成本较低,在应用环境比较简单的情况下,能够以较小的代价在一定程度上保证系统的安全,应用非常广泛。因此,作为计算机网络安全实验教学的一个重要环节——基于ACL的包过滤防火墙实验设计,对提高学生深刻理解包过滤防火墙工作原理、ACL类别及规则设计、策略部署位置及方向选择知识,掌握利用ACL对路由器端口进行数据包过滤,维护局域网安全具有重要作用。
二、基于ACL的包过滤防火墙实验设计
1.基于ACL的包过滤防火墙工作原理
ACL是为了保证内网的安全性,根据具体安全需求设定安全策略,并将其部署在路由器的接口上,通过匹配数据包信息与访问表参数,来决定允许数据包通过还是拒绝数据包通过某个接口来保障非授权用户只能访问特定的网络资源,从而达到对访问进行控制的目的。
ACL是由一系列语句组成的列表,这些语句主要包括匹配条件、采取的动作(一个是拒绝deny,即拒绝数据包通过,过滤掉数据包;一个是允许permit,即允许数据包通过,不过滤数据包)两个内容。利用ACL可以限制网络流量,提高网络性能,控制网络通信流量等,同时也是网络访问控制的基本安全手段。其工作原理如图1所示。
常用的ACL可分为标准访问列表和扩展访问列表两种。标准访问列表只检查数据包的源地址,从而允许或拒绝基于网络、子网或主机的IP地址的所有通信流量通过路由器的出口。扩展IP访问列表,它不仅检查数据包的源地址,还要检查数据包的目的地址、特定协议类型、源端口号、目的端口号等。所有访问控制列表都有一个编号,两种控制列表按照编号区分,标准控制列表编号范围为1-99,扩展访问控制列表为100-199。
2.实验设计
(1)试验人员及软硬件配备
试验分两个实验小组,每组4人,分别模拟一个局域网环境。每组硬件配备:华为S3026E交换机(24个10/100Base-TX以太网接口)1台,华为R1760低端路由器(广域网接口:1个同/异步串口S0,局域网接口:一个10/100M以太网接口E0)1台,计算机2台;V35串行线缆一对;双绞线若干条。
(2)试验环境设计
每个实验小组以交换机作为中心节点,连接2台PC,形成一个星状网络拓扑结构,利用双绞线将交换机与路由器以太网接口相连,模拟一个小型局域网环境。两个实验小组之间利用V35串行线缆通过R1760低端路由器同/异步串口相连,模型形成一个互联网环境,实验拓扑结构如图2所示。
(3)实验要求及涉及的知识点
①每个实验小组4名成员,分别承担网络环境组建、网络设备参数设计、ACL设计、网络设备配置工作。每个小组成员按照自己分配的工作内容完成实验预习,并以小组为单位讨论相互之间工作的衔接及配置过程中的实验现象。
②局域网1内,PCA配置成为Web服务器,PCB为一般客户机;局域网2内,PCC配置成为Ftp服务器,PCD为一般客户机,同PCB一样承担实验测试工作。
③本实验涉及到协议、端口、路由器工作原理及内外网端口的控制、包过滤防火墙工作原理、ACL类别及规则设计、ACL部署方法及方向选择等知识。
(4)基于ACL的包过滤防火墙配置步骤
①定义对特定数据流的访问控制规则,即定义访问控制列表ACL。
②将特定的规则应用到具体的接口上,过滤特定方向的数据流。
三、基于ACL的包过滤防火墙实验的实现
1.设备配置
(1)计算机配置
局域网1为202.200.1.0网段,网内各主机IP相关参数配置:PCA 202.200.1.1,PCB 202.200.1.2;子网掩码:255.255.255.0;网关:202.200.1.254。同时,主机PCA运行IIS,提供Web、Ftp两种服务支持。局域网2为202.200.0.0网段,网内各主机IP相关参数配置:PCC 202.200.0.1,PCD 202.200.0.2;子网掩码:255.255.255.0;网关:202.200.0.254。
(2)路由器配置
路由器R1串口S0:192.168.1.1/24,以太口E0: 202.200.1.254/24。路由器R2串口S0:192.168.1.2/24,以太口E0: 202.200.0.254/24。两台路由器都运行RIP协议,动态生成路由表。
2.ACL规则设计、部署及实验结果
(1)源地址过滤实例
允许局域网2中主机PCC访问外网,禁止主机PCD访问外网。标准ACL规则设计、部署及实验结果如下所示。 部署方案1:路由器R2上建立acl1,将acl1部署在R2串行接口S0处,方向参数选择outbound。
……
acl 1 match-order auto
rule normal permit source 202.200.0.1 0.0.0.0
// 允许PCC访问外网
rule normal deny source 202.200.0.2 0.0.0.0
// 禁止PCD访问外网
……
interface Serial0
link-protocol ppp
ip address 192.168.1.2 255.255.255.0
firewall packet-filter 1 outbound
……
在主机PCC、PCD上运行ping程序,发现PCC可以访问局域网1内主机,PCD不能访问。
部署方案2:将acl1部署在R2以太网接口E0处,方向参数选择inbound,实验效果同方案1。
……
interface Ethernet0
ip address 202.200.0.254 255.255.255.0
firewall packet-filter 1 inbound
……
部署方案3:路由器R1上建立acl1,将acl1部署在R1串行接口S0处,方向参数选择inbound,实验效果同方案1。
……
interface Serial0
clock DTECLK1
link-protocol ppp
ip address 192.168.1.1 255.255.255.0
firewall packet-filter 1 inbound
……
部署方案4:将acl1部署在R1以太网接口E0处,方向参数选择outbound,实验效果同方案1。
……
interface Ethernet0
ip address 202.200.1.254 255.255.255.0
firewall packet-filter 1 outbound
……
(2)目的地址过滤实例
只允许局域网2中主机PCC访问局域网1中特定主机PCA。扩展ACL规则设计、部署及实验结果如下所示。
路由器R2上建立acl101,将acl101部署在R2串行接口S0处,方向参数选择outbound。
……
acl 101 match-order auto
rule normal permit ip source 202.200.0.1 0.0.0.0 destination 202.200.1.1 0.0.0.0
// 只允许PCC访问特定主机PCA
rule normal deny ip source 202.200.0.0 0.0.0.255 destination 202.200.1.0 0.0.0.255
// 禁止局域网2中其它主机访问局域网1
……
interface Serial0
link-protocol ppp
ip address 192.168.1.2 255.255.255.0
firewall packet-filter 101 outbound
……
在主机PCC、PCD上运行ping程序,发现PCC只能访问PCA。也可以将ACL101部署在R2的E0口,或R1的S0、E0口,并选择恰当的过滤方向,实验结果同上。
(3)协议过滤实例
仅允许目的为WWW服务器PCA的WWW请求报文输入,禁止目的为Ftp服务器PCA的Ftp请求报文和其它输入流量。扩展ACL规则设计、部署及实验结果如下所示。
路由器R2上建立acl102,将设计的规则3部署在R2串行接口S0处,方向参数选择outbound。
……
acl 102 match-order auto
rule normal permit tcp source any destination 202.200.1.1 0.0.0.0 destination-port equal www logging
// 允许目的为PCA的WWW请求报文输入
rule normal deny tcp source any destination 202.200.1.1 0.0.0.0 destination-port equal ftp logging
// 禁止目的为PCA的ftp请求报文输入
rule normal deny ip source any destination any
// 禁止其它一切报文输入
……
interface Serial0
link-protocol ppp
ip address 192.168.1.2 255.255.255.0
firewall packet-filter 102 outbound
…… 在主机PCC、PCD上打开IE,发现只能访问PCA上的WWW服务,而无法访问FTP服务。也可以将ACL 102部署在R2的E0口,或R1的S0、E0口,并选择恰当的过滤方向,实验结果同上。
3.实验现象总结
(1)ACL执行原则
多条ACL之间采用深度优先的原则,即描述的地址范围越小,优先级越高,先匹配列表序号大的规则。若一个数据包与该规则相匹配,那么后面的语句就将被忽略,不再进行检查。如果跟该规则不匹配,它才被交给ACL较小序号的列表规则进行比较。所有的ACL判断语句都检测完毕,仍没有匹配的语句出口,则该数据包将视为被拒绝而被丢弃。因此,在进行ACL规则设计时要注意它们之间的先后顺序。
(2)ACL端口数据过滤方向选择
在路由器R1上设置ACL,如将其部署在串口S0上,数据包过滤方向选择outbound,其规则作用效果与以下几种部署方式效果相同:将列表部署在路由器R1以太口E0上,数据包过滤方向选择inbound;将列表部署在路由器R2串口S0上,数据包过滤方向选择inbound;将列表部署在路由器R2串口E0上,数据包过滤方向选择outbound。
在路由器R2上设置ACL,如将其部署在串口S0上,数据包过滤方向选择 inbound,其规则作用效果与以下几种部署方式效果相同:将列表部署在路由器R2以太口E0上,数据包过滤方向选择outbound;将列表部署在路由器R1串口S0上,数据包过滤方向选择outbound;将该规则部署在路由器R1串口E0上,数据包过滤方向选择inbound。
因此,对于ACL过滤方向参数Outbound、Inbound的选择应站在路由器角度进行,在路由选择进行以前,应用在接口进入方向的ACL起作用;在路由选择决定以后,应用在接口离开方向的ACL起作用。
(3)ACL部署位置选择
标准ACL部署位置应尽量靠近目的端。由于标准ACL只使用数据包的源地址来判断数据包,所以它只能以源地址来区分数据包,源相同而目的不同的数据包也只能采取同一策略。因此,将其靠近源会阻止报文流向其它端口。
扩展ACL不仅使用数据包的源地址作为判断条件,还使用目的地址、协议号为判断条件。所以,它可以更加详细的区分数据包,更好的控制用户访问。因此,扩展ACL部署位置应尽量靠近源端,以免访问列表影响其他接口上的数据流。
四、结束语
本文以基于ACL的包过滤防火墙设计为实验内容,在搭建模拟互联网实验环境的基础上,针对常见局域网络安全服务需求,分别进行标准ACL设计和扩展ACL 设计,并将ACL在华为R1760路由器上进行部署验证,实现了安全需求和报文的有效过滤。通过本实验,提高了学生对包过滤防火墙工作原理、ACL类别及规则设计、策略部署位置及方向选择知识的认识,掌握了利用ACL对路由器端口进行数据包过滤的安全防护方法,以及利用计算机网络设备进行安全管理与服务管理控制的实践操作能力。
参考文献:
[1]张小川,付存君.基于Linux下防止IP欺骗的SYN攻击防火墙的设计与实现[J].科学技术与工程,2013(1) :244-247.
[2]赵红敏,王建新,张青龙.基于组件的包过滤防火墙虚拟实验平台设计与实现[J].计算机与信息技术,2009(6):69-72.
[3]钱爱增.基于路由器的包过滤防火墙实验教学设计[J].中国教育信息化,2009(5):77-79.
[4]何巍,张红兵,夏春和.包过滤防火墙在仿真平台中的研究与实现[J].航空计算技术,2006,36(6):83-86.
(编辑:鲁利瑞)
关键词:ACL;包过滤;防火墙
中图分类号:TP393 文献标志码:A 文章编号:1673-8454(2014)14-0073-04
一、引言
对于局域网的保护,防火墙技术是一种行之有效的和广泛使用的安全技术,根据防火墙所采用的技术不同,主要分为包过滤型、应用代理型和监测型。其中包过滤作为最早发展起来的一种技术,通过对流经路由器的所有数据包逐个检查,查看源、目的IP地址、端口号以及协议类型(UDP/TCP)等,并依据所制定的ACL来决定数据包是通过还是不通过,进而可以隔离风险区域与安全区域的连接,同时不会妨碍人们对风险区域的访问。由于包过滤防火墙技术大多是在网络层和传输层实现,处理速度快,对应用透明,简单实用,实现成本较低,在应用环境比较简单的情况下,能够以较小的代价在一定程度上保证系统的安全,应用非常广泛。因此,作为计算机网络安全实验教学的一个重要环节——基于ACL的包过滤防火墙实验设计,对提高学生深刻理解包过滤防火墙工作原理、ACL类别及规则设计、策略部署位置及方向选择知识,掌握利用ACL对路由器端口进行数据包过滤,维护局域网安全具有重要作用。
二、基于ACL的包过滤防火墙实验设计
1.基于ACL的包过滤防火墙工作原理
ACL是为了保证内网的安全性,根据具体安全需求设定安全策略,并将其部署在路由器的接口上,通过匹配数据包信息与访问表参数,来决定允许数据包通过还是拒绝数据包通过某个接口来保障非授权用户只能访问特定的网络资源,从而达到对访问进行控制的目的。
ACL是由一系列语句组成的列表,这些语句主要包括匹配条件、采取的动作(一个是拒绝deny,即拒绝数据包通过,过滤掉数据包;一个是允许permit,即允许数据包通过,不过滤数据包)两个内容。利用ACL可以限制网络流量,提高网络性能,控制网络通信流量等,同时也是网络访问控制的基本安全手段。其工作原理如图1所示。
常用的ACL可分为标准访问列表和扩展访问列表两种。标准访问列表只检查数据包的源地址,从而允许或拒绝基于网络、子网或主机的IP地址的所有通信流量通过路由器的出口。扩展IP访问列表,它不仅检查数据包的源地址,还要检查数据包的目的地址、特定协议类型、源端口号、目的端口号等。所有访问控制列表都有一个编号,两种控制列表按照编号区分,标准控制列表编号范围为1-99,扩展访问控制列表为100-199。
2.实验设计
(1)试验人员及软硬件配备
试验分两个实验小组,每组4人,分别模拟一个局域网环境。每组硬件配备:华为S3026E交换机(24个10/100Base-TX以太网接口)1台,华为R1760低端路由器(广域网接口:1个同/异步串口S0,局域网接口:一个10/100M以太网接口E0)1台,计算机2台;V35串行线缆一对;双绞线若干条。
(2)试验环境设计
每个实验小组以交换机作为中心节点,连接2台PC,形成一个星状网络拓扑结构,利用双绞线将交换机与路由器以太网接口相连,模拟一个小型局域网环境。两个实验小组之间利用V35串行线缆通过R1760低端路由器同/异步串口相连,模型形成一个互联网环境,实验拓扑结构如图2所示。
(3)实验要求及涉及的知识点
①每个实验小组4名成员,分别承担网络环境组建、网络设备参数设计、ACL设计、网络设备配置工作。每个小组成员按照自己分配的工作内容完成实验预习,并以小组为单位讨论相互之间工作的衔接及配置过程中的实验现象。
②局域网1内,PCA配置成为Web服务器,PCB为一般客户机;局域网2内,PCC配置成为Ftp服务器,PCD为一般客户机,同PCB一样承担实验测试工作。
③本实验涉及到协议、端口、路由器工作原理及内外网端口的控制、包过滤防火墙工作原理、ACL类别及规则设计、ACL部署方法及方向选择等知识。
(4)基于ACL的包过滤防火墙配置步骤
①定义对特定数据流的访问控制规则,即定义访问控制列表ACL。
②将特定的规则应用到具体的接口上,过滤特定方向的数据流。
三、基于ACL的包过滤防火墙实验的实现
1.设备配置
(1)计算机配置
局域网1为202.200.1.0网段,网内各主机IP相关参数配置:PCA 202.200.1.1,PCB 202.200.1.2;子网掩码:255.255.255.0;网关:202.200.1.254。同时,主机PCA运行IIS,提供Web、Ftp两种服务支持。局域网2为202.200.0.0网段,网内各主机IP相关参数配置:PCC 202.200.0.1,PCD 202.200.0.2;子网掩码:255.255.255.0;网关:202.200.0.254。
(2)路由器配置
路由器R1串口S0:192.168.1.1/24,以太口E0: 202.200.1.254/24。路由器R2串口S0:192.168.1.2/24,以太口E0: 202.200.0.254/24。两台路由器都运行RIP协议,动态生成路由表。
2.ACL规则设计、部署及实验结果
(1)源地址过滤实例
允许局域网2中主机PCC访问外网,禁止主机PCD访问外网。标准ACL规则设计、部署及实验结果如下所示。 部署方案1:路由器R2上建立acl1,将acl1部署在R2串行接口S0处,方向参数选择outbound。
……
acl 1 match-order auto
rule normal permit source 202.200.0.1 0.0.0.0
// 允许PCC访问外网
rule normal deny source 202.200.0.2 0.0.0.0
// 禁止PCD访问外网
……
interface Serial0
link-protocol ppp
ip address 192.168.1.2 255.255.255.0
firewall packet-filter 1 outbound
……
在主机PCC、PCD上运行ping程序,发现PCC可以访问局域网1内主机,PCD不能访问。
部署方案2:将acl1部署在R2以太网接口E0处,方向参数选择inbound,实验效果同方案1。
……
interface Ethernet0
ip address 202.200.0.254 255.255.255.0
firewall packet-filter 1 inbound
……
部署方案3:路由器R1上建立acl1,将acl1部署在R1串行接口S0处,方向参数选择inbound,实验效果同方案1。
……
interface Serial0
clock DTECLK1
link-protocol ppp
ip address 192.168.1.1 255.255.255.0
firewall packet-filter 1 inbound
……
部署方案4:将acl1部署在R1以太网接口E0处,方向参数选择outbound,实验效果同方案1。
……
interface Ethernet0
ip address 202.200.1.254 255.255.255.0
firewall packet-filter 1 outbound
……
(2)目的地址过滤实例
只允许局域网2中主机PCC访问局域网1中特定主机PCA。扩展ACL规则设计、部署及实验结果如下所示。
路由器R2上建立acl101,将acl101部署在R2串行接口S0处,方向参数选择outbound。
……
acl 101 match-order auto
rule normal permit ip source 202.200.0.1 0.0.0.0 destination 202.200.1.1 0.0.0.0
// 只允许PCC访问特定主机PCA
rule normal deny ip source 202.200.0.0 0.0.0.255 destination 202.200.1.0 0.0.0.255
// 禁止局域网2中其它主机访问局域网1
……
interface Serial0
link-protocol ppp
ip address 192.168.1.2 255.255.255.0
firewall packet-filter 101 outbound
……
在主机PCC、PCD上运行ping程序,发现PCC只能访问PCA。也可以将ACL101部署在R2的E0口,或R1的S0、E0口,并选择恰当的过滤方向,实验结果同上。
(3)协议过滤实例
仅允许目的为WWW服务器PCA的WWW请求报文输入,禁止目的为Ftp服务器PCA的Ftp请求报文和其它输入流量。扩展ACL规则设计、部署及实验结果如下所示。
路由器R2上建立acl102,将设计的规则3部署在R2串行接口S0处,方向参数选择outbound。
……
acl 102 match-order auto
rule normal permit tcp source any destination 202.200.1.1 0.0.0.0 destination-port equal www logging
// 允许目的为PCA的WWW请求报文输入
rule normal deny tcp source any destination 202.200.1.1 0.0.0.0 destination-port equal ftp logging
// 禁止目的为PCA的ftp请求报文输入
rule normal deny ip source any destination any
// 禁止其它一切报文输入
……
interface Serial0
link-protocol ppp
ip address 192.168.1.2 255.255.255.0
firewall packet-filter 102 outbound
…… 在主机PCC、PCD上打开IE,发现只能访问PCA上的WWW服务,而无法访问FTP服务。也可以将ACL 102部署在R2的E0口,或R1的S0、E0口,并选择恰当的过滤方向,实验结果同上。
3.实验现象总结
(1)ACL执行原则
多条ACL之间采用深度优先的原则,即描述的地址范围越小,优先级越高,先匹配列表序号大的规则。若一个数据包与该规则相匹配,那么后面的语句就将被忽略,不再进行检查。如果跟该规则不匹配,它才被交给ACL较小序号的列表规则进行比较。所有的ACL判断语句都检测完毕,仍没有匹配的语句出口,则该数据包将视为被拒绝而被丢弃。因此,在进行ACL规则设计时要注意它们之间的先后顺序。
(2)ACL端口数据过滤方向选择
在路由器R1上设置ACL,如将其部署在串口S0上,数据包过滤方向选择outbound,其规则作用效果与以下几种部署方式效果相同:将列表部署在路由器R1以太口E0上,数据包过滤方向选择inbound;将列表部署在路由器R2串口S0上,数据包过滤方向选择inbound;将列表部署在路由器R2串口E0上,数据包过滤方向选择outbound。
在路由器R2上设置ACL,如将其部署在串口S0上,数据包过滤方向选择 inbound,其规则作用效果与以下几种部署方式效果相同:将列表部署在路由器R2以太口E0上,数据包过滤方向选择outbound;将列表部署在路由器R1串口S0上,数据包过滤方向选择outbound;将该规则部署在路由器R1串口E0上,数据包过滤方向选择inbound。
因此,对于ACL过滤方向参数Outbound、Inbound的选择应站在路由器角度进行,在路由选择进行以前,应用在接口进入方向的ACL起作用;在路由选择决定以后,应用在接口离开方向的ACL起作用。
(3)ACL部署位置选择
标准ACL部署位置应尽量靠近目的端。由于标准ACL只使用数据包的源地址来判断数据包,所以它只能以源地址来区分数据包,源相同而目的不同的数据包也只能采取同一策略。因此,将其靠近源会阻止报文流向其它端口。
扩展ACL不仅使用数据包的源地址作为判断条件,还使用目的地址、协议号为判断条件。所以,它可以更加详细的区分数据包,更好的控制用户访问。因此,扩展ACL部署位置应尽量靠近源端,以免访问列表影响其他接口上的数据流。
四、结束语
本文以基于ACL的包过滤防火墙设计为实验内容,在搭建模拟互联网实验环境的基础上,针对常见局域网络安全服务需求,分别进行标准ACL设计和扩展ACL 设计,并将ACL在华为R1760路由器上进行部署验证,实现了安全需求和报文的有效过滤。通过本实验,提高了学生对包过滤防火墙工作原理、ACL类别及规则设计、策略部署位置及方向选择知识的认识,掌握了利用ACL对路由器端口进行数据包过滤的安全防护方法,以及利用计算机网络设备进行安全管理与服务管理控制的实践操作能力。
参考文献:
[1]张小川,付存君.基于Linux下防止IP欺骗的SYN攻击防火墙的设计与实现[J].科学技术与工程,2013(1) :244-247.
[2]赵红敏,王建新,张青龙.基于组件的包过滤防火墙虚拟实验平台设计与实现[J].计算机与信息技术,2009(6):69-72.
[3]钱爱增.基于路由器的包过滤防火墙实验教学设计[J].中国教育信息化,2009(5):77-79.
[4]何巍,张红兵,夏春和.包过滤防火墙在仿真平台中的研究与实现[J].航空计算技术,2006,36(6):83-86.
(编辑:鲁利瑞)