在通常的网络治理中,我们都希望答应一些连接的访问,而禁止另一些连接的访问,但许多安全工具缺乏网络治理所需的基本通信流量过滤的灵活性和特定的控制手段。三层交换机功能强大,有多种治理网络的手段,它有内置的ACL(访问控制列表),因此我们可利用ACL(访问控制列表)控制Internet的通信流量。以下是我们利用联想的三层交换机3508GF来实现ACL功能的过程。
利用标准ACL控制网络访问
当我们要想阻止来自某一网络的所有通信流量,或者答应来自某一特定网络的所有通信流量,或者想要拒绝某一协议簇的所有通信流量时,可以使用标准访问控制列表来实现这一目标。标准访问控制列表检查数据包的源地址,从而答应或拒绝基于网络、子网或主机IP地址的所有通信流量通过交换机的出口。
标准ACL的配置语句为:
Switch#Access-list access-list-number(1~99) {permitdeny}{anyAsource[source-wildcard-mask]}{anydestination[destination-mask]}
例1:答应192.168.3.0网络上的主机进行访问:
Switch#access-list 1 permit 192.168.3.0 0.0.0.255
例2:禁止172.10.0.0网络上的主机访问:
Switch#access-list 2 deny 172.10.0.0 0.0.255.255
例3:答应所有IP的访问:
Switch#access-list 1 permit 0.0.0.0 255.255.255.255
例4:禁止192.168.1.33主机的通信:
Switch#access-list 3 deny 192.168.1.33 0.0.0.0
上面的0.0.0.255和0.0.255.255等为32位的反掩码,0表示“检查相应的位”,1表示“不检查相应的位”。如表示33.0.0.0这个网段,使用通配符掩码应为0.255.255.255。
利用扩展ACL控制网络访问
扩展访问控制列表既检查数据包的源地址,也检查数据包的目的地址,还检查数据包的特定协议类型、端口号等。扩展访问控制列表更具有灵活性和可扩充性,即可以对同一地址答应使用某些协议通信流量通过,而拒绝使用其它协议的流量通过,可灵活多变的设计ACL的测试条件。
扩展ACL的完全命令格式如下:
Switch#access-list access-list-number(100~199) {permitdeny} protocol{anysource[source-mask]}{anydestination[destination-mask]}[port-number]
例1:拒绝交换机所连的子网192.168.3.0 ping通另一子网192.168.4.0:
Switch#access-list 100 deny icmp 192.168.3.0 0.0.0.255 192.168.4.0 0.0.0.255
例2:阻止子网192.168.5.0 访问Internet(www服务)而答应其它子网访问:
Switch#access-list 101 deny tcp 192.168.5.0 0.0.0.255 any www
或写为:Switch#access-list 101 deny tcp 192.168.5.0 0.0.0.255 any 80
例3:答应从192.168.6.0通过交换机发送E-mail,而拒绝所有其它来源的通信:
Switch#access-list 101 permit tcp 192.168.6.0 0.0.0.255 any smtp
基于端口和VLAN的ACL访问控制
标准访问控制列表和扩展访问控制列表的访问控制规则都是基于交换机的,假如仅对交换机的某一端口进行控制,则可把这个端口加入到上述规则中。
配置语句为:
Switch# acess-list port <port-id><groupid>
例:对交换机的端口4,拒绝来自192.168.3.0网段上的信息,配置如下:
Switch# acess-list 1 deny 192.168.3.0 0.0.0.255
Switch# acess-list port 4 1 // 把端口4 加入到规则1中。
基于VLAN的访问控制列表是基于VLAN设置简单的访问规则,也设置流量控制,来答应(permit)或拒绝(deny)交换机转发一个VLAN的数据包。
配置语句:
Switch#acess-list vlan <vlan-id> [denypermit]
例:拒绝转发vlan2中的数据:
Switch# access-list vlan2 deny
另外,我们也可通过显示命令来检查已建立的访问控制列表,即
Switch# show access-list
例:
Switch# show access-list //显示ACL列表;
ACL Status:Enable // ACL状态 答应;
Standard IP access list: //IP 访问列表;
GroupId 1 deny srcIp 192.168.3.0 any Active //禁止192.168.3.0 的网络访问;
GroupId 2 permit any any Active //答应其它网络访问。
若要取消已建立的访问控制列表,可用如下命令格式:
Switch# no access-list access-list-number
例:取消访问列表1:
Switch# no access-list 1
基于以上的ACL多种不同的设置方法,我们实现了对网络安全的一般控制方法,使三层交换机作为网络通信出入口的重要控制点,发挥其应有的作用。而正确地配置ACL访问控制列表实质将部分起到防火墙的作用,非凡对于来自内部网络的攻击防范上有着外部专用防火墙所无法实现的功能,可大大提升局域网的安全性能。
新手入门
ACL是应用到交换机接口的指令列表,这些指令列表用来告诉交换机哪些数据包可以接收,哪些数据包要拒绝。接收或拒绝的条件可以是源地址、目的地址、端口号等指示条件来决定。它主要有三个方面的功能:
◆ 限制网络流量、提高网络性能。例如:ACL可以根据数据包的协议,指定这种类型的数据包的优先级,同等情况下可与先被交换机处理。
◆ 提供网络访问的基本安全手段。例如,ACL答应某一主机访问您的资源,而禁止另一主机访问同样的资源。
◆ 在交换机接口处,决定那种类型的通信流量被转发,那种通信类型的流量被阻塞。例如,答应网络的E-mail被通过,而阻止FTP通信。
建立访问控制列表后,可以限制网络流量,提高网络性能,对通信流量起到控制的手段,这也是对网络访问的基本安全手段。ACL的访问规则主要用三种:
◆ 标准访问控制列表,可限制某些IP的访问流量。
◆ 扩展访问控制列表,可控制某方面应用的访问。
◆ 基于端口和VLAN的访问控制列表,可对交换机的具体对应端口或整个VLAN进行访问控制。