3.2.5 案例5 ACL配置技术
3.2.5.1 试题描述
阅读以下关于访问控制列表ACL的技术说明,结合网络拓扑图回答问题1~6。(15分)
【说明】
某电子商务公司为适应市场的发展组建了一个企业网,其网络拓扑结构如图3-6所示。该网络逻辑结构上分成核心层和接入层,核心层使用了一台三层交换机。网管员按照各部门的职能将公司内部网络分成了8个VLAN,分别是公司网络设备及网管机VLAN1(10.1.1.0/24)、内网服务器VLAN2(10.1.2.0/24)、非军事区DMZ VLAN3(10.1.3.0/24)、财务部VLAN4(10.1.4.0/24)、市场部VLAN5(10.1.5.0/24)、研发部VLAN6(10.1.6.0/24)、接待室VLAN(172.16.1.0/24)。每个网段的缺省网关地址由从高位向下分配,其他节点地址均从低位向上分配;例如,接待室VLAN中每一台客户机的网关地址为172.16.1.254,客户机1的IP地址为172.16.1.1,客户机2的IP地址为172.16.1.2。

图3-6 某电子商务公司网络拓扑图
【问题1】(2分)
通常路由器都支持两种类型的访问控制列表:基本访问控制列表和扩展访问控制列表。请用120字以内的文字说明这两种访问列表之间的区别。
【问题2】(2分)
该商务公司有多台游戏服务器用于提供各种在线游戏,保护这些服务器内部数据的安全性是公司网管员第一工作要责。该公司还有一台专门为用户提供在线购买游戏币服务的Web服务器(以下简称为游戏币Web服务器),用户可使用游戏币购买各种游戏装备。从访问控制列表技术角度考虑,应将这些游戏服务器和游戏币Web服务器部署在网络拓扑的哪些位置?
【问题3】(2分)
访问控制表是实现安全管理的重要手段。如果在三层交换机的VLAN1接口上进行如下ACL配置,那么这些配置语句将完成哪些安全任务?
access-list 11 permit host 10.1.6.66
access-list 11 deny any
int vlan 1
ip access-group 11 out
【问题4】(2分)
请将以下访问规则控制列表中(1)、(2)空缺处填写完整,以完成不允许市场部所有主机访问外部IP地址段为202.117.12.0/24的WEB服务器的配置。
access-list 102 (1) tcp (2) 202.197.12.0 0.0.0.255 eq 80
【问题5】(3分)
在三层交换机的内网服务器VLAN2接口上,要求完成以下安全规则:
允许公司研发部全体员工通过FTP方式访问放置资源代码的服务器(IP地址为10.1.2.6),而其他内部员工及外网所有主机均不能以FTP方式访问该服务器。
请写出相应的访问控制列表的命令行。
【问题6】(4分)
在IP访问控制列表的语法中,关键字option有一个常用的“log”选项,主要用于对那些能够匹配访问表中的permit和deny语句的报文进行日志记录;另一个常用的选项是“established”,只对TCP协议有效且只在一个方向上来响应由另一端发起的会话。要在三层交换机上实现内网服务器免受来自市场部网段病毒攻击的任务,结合option选项,写出相应的访问控制列表ACL命令行。
3.2.5.2 要点解析
【问题1】(2分):这是一道要求在熟悉访问控制列表ACL的基本原理、功能及分类的基础上,将两种类型的访问控制列表的不同之处进行综述的试题。访问控制列表ACL的基本原理可以归纳如下:在路由器、防火墙或三层交换机等具有数据包控制能力的设备上,读取TCP/IP第3层分组头的源IP地址、目的IP地址或第4层报文头中源端口、目的端口等信息,再根据预先定义好的规则对包进行过滤,从而达到访问控制的目的。它一方面可以保护资源节点,阻止非法用户对资源节点的访问;另一方面可以限制特定用户所具有的访问权限。
通常路由器都支持两种类型的访问控制列表:基本访问控制列表和扩展访问控制列表。其中,基本访问表仅控制基于网络地址的信息流,且只允许过滤源IP地址;而扩展访问表通过网络地址和传输中的数据类型进行信息流控制,允许过滤源IP地址、目的IP地址和上层应用数据。
【问题2】(2分):这是一道要求考虑具体应用服务,结合访问控制列表ACL的优缺点进行网络设备部置的综合的试题。
考虑到访问控制列表ACL技术是使用包过滤技术来实现的,它对第3层分组头的源IP地址、目的IP地址或第4层报文头中源端口、目的端口等信息的处理过程会增加网络的传输延迟,降低网络通信的实时性。因此提供在线购买游戏币服务的Web服务器应部署在该公司防火墙之外。采用这种部署方案的另外两点理由是,①将它部署在内网服务器VLAN或防火墙的DMZ VLAN时,虽然通过防火墙的网络地址转换NAT技术或ACL技术,以及在三层交换机上进行ACL控制,它可以得到较好的安全保护,但IP数据包的处理延迟增加,通信的实时性降低,可能会导致Web服务器提供的服务不易被用户使用。②如将它部署在该公司防火墙之外,便于用户实时使用Web服务器,同时公司内网也可以得到较好的保护。这种部署方案的缺点是Web服务器的安全保护特性较弱。其解决方法之一是通过操作系统自身的病毒检测与安全控制功能来提高安全性。
由于多台游戏服务器用于对外提供各种在线游戏,因此它对外网或内网用户来说是开放的、透明的,为保证其内部数据的安全,需要将它部署在防火墙的DMZ中。因为防火墙的DMZ是放置公共信息的最佳位置,游戏用户、外部访问者或潜在用户可以不用通过内网就能直接获得他们所需要的信息。
这里提醒读者一点,并不是公司中的所有网络服务器均能放置在防火墙的DMZ中,例如存储机密数据的服务器,者是存储员工个人信息的的服务器,者是放置资源代码的服务器等,这类服务器建议部署在内网服务器VLAN中,并通过在三层交换机上进行ACL访问规则的设置来加强其安全性。
【问题3】(2分):本题属于对标准IP ACL配置规则进行理解的试题。这几条命令中,“access-list”是配置ACL的关键字,所有的ACL均使用这个命令进行配置;access-list后面的11表示标准的IP ACL号(1~99)。如果ACL号相同,那么这些ACL语句将形成一个组。在判断一个IP数据包的ACL控制规则时,将使用同一组中的条目从上到下逐一进行判断,一遇到满足的条目就终止对该包的判断。“permit” 关键字表示允许IP数据包通过,而deny将丢弃IP数据包。“host 10.1.6.66”等同于10.1.6.66 0.0.0.0(即host是0.0.0.0通配符屏蔽码的简写),意思是只匹配源地址为10.1.6.66的IP数据包。“any”关键字表示匹配所有地址。语句“int vlan 1”和“ip access-group 11 out”配置使用,用于将access-list 11的访问规则应用到VLAN1接口的out方向。其中“11”是ACL号,与前面定义的“access-list 11 permit host 10.1.6.66”语句的ACL号相关联。“out”可以理解成站在路由器或三层交换机上看的,从该接口出去的IP数据包;而“in”则表示从该接口进入路由器或三层交换机的IP数据包。
结合试题描述及图3-6网络拓扑图,该公司除了防火墙的WAN、DMZ口之外,其他网络设备均归类在Vlan1中。由于题干中“在三层交换机的VLAN 1接口上”说明了这些配置语句的应用场合。因此这些配置语句完成只允许源IP地址为10.1.6.66的设备访问公司网络设备(Vlan1),同时禁止其他设备对Vlan1的访问,即除10.1.6.66的设备人员之外不允许其他人员访问公司的网络设备。
【问题4】(2分):这是一道要求完成扩展的IP访问控制列表配置信息的试题,其答题基础是熟练掌握扩展的IP访问控制列表中各个关键字的含义。
一条扩展的IP访问控制列表的语法格式通常是:
access-list [list number][permit|deny][host/any][protocol] [source
address][source-wildcard]
[source port] [destination address][destination -wildcard]
[destination port] [log][option]
表3-13是对该语法格式中各个关键字功能解释的归纳。
表3-13 扩展IP访问控制列表各关键字功能表
|
关 键 字 |
功 能 描 述 |
|
list number |
访问控制列表的表号范围,取值100~199 |
|
permit/deny |
表示满足访问表项的报文是允许通过接口,还是要过滤掉 |
|
host/any |
分别用于指定单个主机和所有主机。host是0.0.0.0通配符屏蔽码的简写;
any是源IP地址0.0.0.0/目标IP地址255.255.255.255的简写 |
|
protocol |
定义了需要被控制的TCP/IP协议,如IP、TCP、UDP等协议 |
|
source address |
以点分十进制形式表达的源地址 |
|
source-wildcard |
源地址通配符屏蔽码,与子网掩码的方式刚好相反 |
|
source port |
源端口号,可以使用数字、助记符或者使用操作符与数字或助记符相结合的形式来指定一个端口范围 |
|
destination address |
以点分十进制形式表达的目的地址 |
|
destination-wildcard |
目的地址通配符屏蔽码,,与子网掩码的方式刚好相反 |
|
destination port |
目的端口号 |
|
option |
一个常用的选项有log,用于对那些能够匹配访问表中的permit和deny语句的报文进行日志记录;
另一个常用的选项是established,只用于TCP协议且只在一个方向上来响应由另一端发起的会话 |
结合以上扩展的IP访问表的基础知识,在本题这条配置命令中,“access-list”是配置ACL的关键字;“102”是扩展访问控制列表的表号;“tcp”表示对传输层的TCP协议进行控制;“202.197.12.0 0.0.0.255”表示题干中的“外部IP地址段202.117.12.0/24”;“eq”表示等于的关系,另外还常用“neq”表示不等于、“lt”表示大于、“range”表示范围。“80”是众所周知的提供WEB服务的TCP端口。提醒记忆的是:对于TCP或UDP协议,熟知端口号的取值范围为1~1023;注册端口号的取值范围为1024~49151;临时端口号的取值范围为49152~65535。
由题干中给出的关键信息“不允许”以及扩展的IP访问表的语法格式,可推理出(1)空缺处需填入 “deny”关键字。题目中“不允许市场部所有主机”信息间接告诉我们ACL列表中信源IP地址范围为市场部的网段地址。由试题描述信息可知,市场部客户机被归划在VLAN5中,其网段地址为10.1.5.0/24,因此(2)空缺处应填入“10.1.5.0 0.0.0.255”。
【问题5】(3分):这是一道要求读者判断使用哪种类型的访问控制列表来完成配置任务,并完整写出一条访问控制列表的命令行的分析推理题。
由于试题描述信息“允许公司研发部全体员工可以访问放置资源代码的服务器”表述了:①该访问控制列表的控制权限是“允许”;②访问方向是“研发部全体员工”→“放置资源代码的服务器”,即“研发部全体员工”的客户机是信源,“放置资源代码的服务器”是信宿;③因为信宿是一台具体的服务器,所以不能选用标准IP访问控制列表完成配置任务;④“全体员工”指出了源IP地址范围是研发部的网段地址10.1.6.0/24。最后参照问题4分析中给出的扩展IP访问控制列表的语法,可得到“access-list 103 permit tcp 10.1.6.0 any host 10.1.2.6 eq 21”的配置命令行。
FTP服务过程是一种遵循C/S结构的通信方式。通信时它先使用了TCP 21端口建立控制连接链路(主要用来在FTP客户端与服务器之间传递控制命令),然后再使用TCP 20端口建立数据连接链路(主要用来上传或下载数据)。可能有些厂商防火墙对FTP协议进行控制时还需添加一条“access-list 103 permit tcp 10.1.6.0 any host 10.1.2.6 eq 20”的命令行,但大部分厂商的防火墙规则配置时无需这条配置,即当开放了TCP 21端口就联带开放了TCP 20端口。
由于三层交换机在检查ACL规则时是采用自上而下对ACL命令行进行一条条地检测,只要一发现符合条件了就立刻做出跳转,而不继续检测下面的ACL语句。因此利用这条“最靠近受控对象原则”原则可以帮助我们减少对“其他内部员工及外网所有主机均不能访问该服务器”访问控制列表的配置工作量,即在前面两条允许访问控制的命令行之后增加一条“access-list 105 deny tcp any host 10.1.2.6 eq 21”命令行。虽然FTP协议有主动(PORT)方式和被动(PASV)方式,两种方式区别在于数据链路的建立方法差异,而命令链路连接方法是一样的,即先由客户端向FTP服务器发起连接请求,经过TCP协议三次握手后建立命令链路,因此只需使用禁用TCP 21端口的访问控制语句即可控制其他内部员工及外网所有主机以ftp方式访问该资源代码服务器。
【问题6】(4分):这是一道要求通过反向ACL设置保护内网服务器的试题。由试题描述信息可知,内网服务器网段地址为10.1.2.0/24,市场部网段地址为10.1.5.0/24。因此可把问题理解成“禁止病毒从10.1.5.0/24网段传播到10.1.2.0/24服务器网段”。
本试题要求“结合option选项”写出命令行,间接告诉我们要使用带option选项的扩展IP访问控制列表。由于大部分病毒在向网络传播之前都将主动进行TCP连接的,因此option选项使用“established”参数,以达到在三层交换机上采用反向ACL禁止10.1.5.0网段的TCP主动连接的目的。参照问题4分析中给出的扩展IP访问控制列表的语法,可得到“access-list 106 permit tcp 10.1.5.0 0.0.0.255 10.1.2.0 0.0.0.255 established”的配置命令行。其含义是定义一条编号为106,允许所有来自10.1.5.0网段的客户机访问10.1.2.0网段中的服务器,前提是TCP连接已经建立了的。如果在此之前没有建立TCP连接的话,就不允许来自10.1.5.0网段的客户机访问10.1.2.0网段中的服务器。
如果只配置以上这条反向ACL语句将会出现一个问题,即10.1.5.0的客户机不能访问基于TCP协议的内网服务器的服务。解决方法之一,在带established的配置语句前添加相应的扩展ACL规则,例如:IP地址为10.1.2.3的服务器提供了电子邮件服务,此时需要添加以下两条扩展IP访问控制规则。
access-list 106 permit tcp 10.1.5.0 0.0.0.255 10.1.2.3 0.0.0.0 eq 25
access-list 106 permit tcp 10.1.5.0 0.0.0.255 10.1.2.3 0.0.0.0 eq 110
根据“最靠近受控对象原则”,10.1.5.0的客户机就可以正常访问该服务器的Email服务。
接着,到三层交换机内网服务器VLAN2接口上,配置“ip access-group 106 out”语句,用于将编号为106的访问控制规则应用到VLAN2接口的out方向上。
最后检验反向ACL是否正确配置,一个简单的检验方法是在10.1.5.0网段中的任何一台客户机上ping处在10.1.2.0网段中的某一台服务器,将显示ping连接失败信息,而在10.1.2.0网段任何一台服务器上ping处刚才那台在10.1.5.0网段中的客户机,如果显示ping连接成功信息,则说明反向ACL配置成功。
3.2.5.3 参考答案
表3-13给出本案例问题1至问题6的参考答案,以供读者练习时参考,以便查缺补漏。读者也可依照所给出的评分标准得出自己的测试分数,从而大致评估自己对这一方面知识点掌握程度。
表3-13 参考答案及评分标准表
|
问题与分值 |
参考答案及评分标准 |
自评分 |
|
【问题1】 (2分) |
基本访问表仅对基于网络地址的信息流实施控制,且只允许过滤源IP地址(1分)
而扩展访问表通过网络地址和传输中的数据类型进行信息流控制,允许过滤源IP地址、目的IP地址和上层应用数据(1分) |
|
|
【问题2】 (2分) |
将多台游戏服务器部署在防火墙的DMZ VLAN中(1分)
将提供在线购买游戏币服务的Web服务器应部署在该公司防火墙之外(1分) |
|
|
【问题3】 (2分) |
只允许源IP地址为10.1.6.66的设备访问公司网络设备(Vlan1),同时禁止其他设备对Vlan1的访问,即除10.1.6.66的设备人员之外不允许其他人员访问公司的网络设备(2分) |
|
|
【问题4】 (2分) |
(1)deny(1分)
(2)10.1.5.0 0.0.0.255(1分) |
|
|
【问题5】 (3分) |
access-list 103 permit tcp 10.1.6.0 0.0.0.255 10.1.2.6 0.0.0.0 eq 21(1分)
access-list 105 deny tcp any 10.1.2.6 0.0.0.0 eq 21(2分)
或access-list 103 permit tcp 10.1.6.0 any host 10.1.2.6 eq 21
access-list 105 deny tcp any host 10.1.2.6 eq 21 |
|
|
【问题6】 (4分) |
添加access-list 106 permit tcp 10.1.5.0 0.0.0.255 10.1.2.0 0.0.0.255 established命令行(2分)
并在该配置行之前添加允许市场部访问具体哪些应用服务的扩展ACL规则(1分)
到三层交换机内网服务器VLAN2接口上,配置“ip access-group 106 out”语句(1分) |