三星Galaxy S24系列AI手机热销中
全世界各行各业联合起来,internet一定要实现!

访问控制列表构建网络防火墙体系

2004-02-16 eNet&Ciweek

  实现方法

  首先在全局配置模式下定义访问列表,然后将其应用到接口中,使通过该接口的数据包需要进行相应的匹配,然后决定被通过还是拒绝。并且访问列表语句按顺序、逻辑地处理,它们在列表中自上向下开始匹配数据包。如果一个数据包头与访问权限表的某一语句不匹配,则继续检测列表中的下一个语句。在执行到访问列表的最后,还没有与其相匹配的语句,数据包将被隐含的“拒绝”语句所拒绝。

  标准IP访问控制列表

  在实现过程中应给每一条访问控制列表加上相应的编号。标准IP访问控制列表的编号为1至99,作用是阻止某一网络的所有通信流量,或允许某一网络的所有通信流量。语法为: Router(config)#access-list access-list-number(1~99) {deny permit} source [source-wildcard] 如果没有写通配符掩码,则默认值会根据源地址自动进行匹配。下面举例来说明:要阻止源主机为 192.168.0.45的一台主机通过E0,而允许其他的通讯流量通过E0端口。Router(config)#access-list 1 deny 192.168.0.45 0.0.0.0或Router(config)#access-list 1 deny host 192.168.0.45或Router(config)#access-list 1 deny 192.168.0.45Router(config)#access-list 1 permit anyRouter(config)#interface ethernet 0Router(config-if)#ip access-group 1 in 首先我们在全局配置模式下定义一条拒绝192.168.0.45主机通过的语句,通配符掩码可以使用0.0.0.0或host,或使用缺省值来表示一台主机,然后将其访问列表应用到接口中。如果现在又修改了计算机的IP地址,那么这条访问控制列表将对您不起作用。

  扩展IP访问控制列表

  扩展IP访问控制列表的编号为100至199,并且功能更加灵活。例如,要阻止192.168.0.45主机Telnet流量,而允许Ping流量。 Router(config)#access-list 101 permit icmp 192.168.0.45 0.0.0.0 anyRouter(config)#access-list 101 deny tcp 192.168.0.45 0.0.0.0 any eq 23Router(config)#access-list 101 permit ip any anyRouter(config)#interface ethernet 0Router(config-if)#ip access-group 101 in

  因为Ping命令使用网络层的ICMP协议,所以让ICMP协议通过。而Telnet使用端口23,所以将端口号为23的数据包拒绝了,最终应用到某一接口,这样就可以达到目的。

  命名访问控制列表

  对于某一给定的协议,在同一路由器上有超过99条的标准ACL,或有超过100条的扩展ACL。想要通过一个字母数字串组成的名字来直观地表示特定的ACL时,并且路由器的IOS版本在11.2及以上时,可以使用命名访问控制列表,也就是用某些字符串来取代标准与扩展ACL的访问列表号。命名访问控制列表的语法格式为: Router(config)#ip access-list {standard extended} name 在ACL配置模式下,通过指定一个或多个允许或拒绝条件,来决定一个数据包是允许通过还是被丢弃。语法格式如下: Router(config{std- ext-}nacl)#{permit deny} {source [source-wildcad] any}

  下面是一个配置实例: ip access-list extended nyistpermit tcp 172.16.0.0 0.0.255.255 any eq 23deny tcp any anydeny udp 172.16.0.0 0.0.255.255 any lt 1024interface Ethernet 0ip access-group nyist in

  基于时间访问列表的应用

  随着网络的发展和用户要求的变化,从IOS 12.0开始,思科(CISCO)路由器新增加了一种基于时间的访问列表。通过它,可以根据一天中的不同时间,或者根据一星期中的不同日期,或二者相结合来控制网络数据包的转发。这种基于时间的访问列表,就是在原来的标准访问列表和扩展访问列表中,加入有效的时间范围来更合理有效地控制网络。首先定义一个时间范围,然后在原来的各种访问列表的基础上应用它。

  基于时间访问列表的设计中,用time-range 命令来指定时间范围的名称,然后用absolute命令,或者一个或多个periodic命令来具体定义时间范围。IOS命令格式为: time-range time-range-name absolute[start time date] [end time date]periodic days-of-the week hh:mm to [days-of-the week] hh:mm 下面分别来介绍一下每个命令和参数的详细情况: time-range 用来定义时间范围的命令。 time-range-name 时间范围名称,用来标识时间范围,以便于在后面的访问列表中引用。 absolute 该命令用来指定绝对时间范围。它后面紧跟着start和end两个关键字。在这两个关键字后面的时间要以24小时制hh:mm表示,日期要按照日/月/年来表示。如果省略start及其后面的时间,则表示与之相联系的permit 或deny语句立即生效,并一直作用到end处的时间为止。如果省略end及其后面的时间,则表示与之相联系的permit 或deny语句在start处表示的时间开始生效,并且一直进行下去。 periodic 主要是以星期为参数来定义时间范围的一个命令。它的参数主要有Monday、Tuesday、Wednesday、Thursday、Friday、Saturday、Sunday中的一个或者几个的组合,也可以是daily(每天)、weekday(周一至周五),或者weekend(周末)。 下面我们来看一个实例:在一个网络中,路由器的以太网接口E0连接着202.102.240.0网络,还有一个串口S0连入Internet。为了让202.102.240.0网络内的公司员工在工作时间内不能进行WEB浏览,从2003年5月1日1时到2003年5月31日晚24时这一个月中,只有在周六早7时到周日晚10时才可以通过公司的网络访问Internet。

   我们通过基于时间的扩展访问控制列表来实现这一功能: Router# config tRouter(config)# interface Ethernet 0Router(config-if)#ip access-group 101 inRouter(config-if)#time-range httpRouter(config-if)#absolute start 1:00 1 may 2003 end 24:00 31 may 2003 periodic Saturday 7:00 to Sunday 22:00Router(config-if)#ip access-list 101 permit tcp any any eq 80 http 我们是在一个扩展访问列表的基础上,再加上时间控制就达到了目的。因为是控制WEB访问的协议,所以必须要用扩展列表,那么编号需在100至199之间。我们定义了这个时间范围的名称是http,这样,我们就在列表中的最后一句方便地引用了。

  合理有效地利用基于时间的访问控制列表,可以更有效、更安全、更方便地保护我们的内部网络,这样您的网络才会更安全,网络管理人员也会更加轻松。

  检验

  在路由器中用show running-config命令检查当前正在运行的配置文件,用show ip access-list命令来查看访问控制列表,并在计算机的命令提示符下用Ping/Telnet命令进行测试。

  总结

  在网络安全体系中,最重要的安全要素—访问控制的控制点在网络通信通道的出入口上。内部网络通过路由器的广域网接口与Internet相连,再通过此路由器的局域网接口接入内部网络,而正确地放置ACL访问控制列表将起到防火墙的作用。为了满足与Internet间的访问控制,以及满足内部网络不同安全属性网络间的访问控制要求,在路由器上配置防火墙,让网络通信均通过它,以此控制网络通信及网络应用的访问权限。

相关频道: eNews

您对本文或本站有任何意见,请在下方提交,谢谢!

投稿信箱:tougao@enet16.com