上篇文章讲解了思科模拟器中标准访问控制列表的配置(标准ACL),本篇文章将详细讲解思科模拟器中扩展访问控制列表的配置(扩展ACL)。
标准ACL指的是 ACL1-99
扩展ACL指的是 ACL100-199
目的是使用100-199以及2000-2699之间的数字作为访问控制列表编号,可通过IP数据包中的源IP地址、目的IP地址、协议类型、源端口、目的端口等元素进行过滤,常用于高级的、精确的访问控制。
扩展访问控制列表功能很强大,不过他存在一个缺点,那就是在没有硬件ACL加速的情况下,扩展ACL会消耗大量的路由器CPU资源。所以当使用中低档路由器时应尽量减少扩展ACL的条目数,将其简化为标准ACL或将多条扩展ACL合一是最有效的方法。
工作原理:
当路由器收到一个数据包时,路由器根据数据包的源IP地址、目的IP地址、协议类型、源端口、目的端口等从访问控制列表中自上而下检查控制语句。如果检查到与一条permit语句匹配,则允许该数据包通过,如果报文与一条deny语句匹配,则该数据包被丢弃;如果检查到最后一条条件语句后还没有找到匹配的,则该数据包也将被丢弃。一旦控制列表允许数据包通过,路由器将数据包的目标网络地址与路由器上的内部路由器表相比较,就可以把数据包路由到它的目的地。扩展访问控制列表的工作过程如图5-2-16所示。
模拟实验:
图5-2-8 扩展访问控制列表配置
交换机和PC的IP地址及端口信息,如表5-2-2所示。
表5-2-2 交换机和PC的IP地址及端口信息表
设备 | 接口 | IP地址 | 子网掩码 | 默认网关 |
Switch-A的Vlan10 | Fa0/1 | 192.168.1.254 | 255.255.255.0 | |
Switch-A的Vlan20 | Fa0/2 | 192.168.2.254 | 255.255.255.0 | |
Switch-A的Vlan30 | G0/1 | 192.168.3.254 | 255.255.255.0 | |
PC1 | Vlan10 | 192.168.1.1 | 255.255.255.0 | 192.168.1.254 |
PC2 | Vlan20 | 192.168.2.1 | 255.255.255.0 | 192.168.2.254 |
Server | Vlan30 | 192.168.3.1 | 255.255.255.0 | 192.168.3.254 |
步骤实现
步骤1:按照如图5-2-8所示,连接网络拓扑结构图。
步骤2:按照如表5-2-2所示,配置计算机和服务器的IP地址、子网掩码和网关。
步骤3:配置交换机Switch-A的主机名称,创建Vlan10、20和30,并将fa0/1划入Vlan10,fa0/2划入Vlan20,g0/1划入Vlan30。
(ftp通的前提是:PC有自己的IP和GW,三层交换机开启路由功能,服务器也有自己的IP和GW,同时,交换机连接服务器的线路IP 要和服务器IP 在同一个子网段上)
Switch(config)#hostname Switch-A 修改主机名
Switch-A(config)#vlan 10 创建vlan
Switch-A(config-vlan)#exit
Switch-A(config)#vlan 20
Switch-A(config-vlan)#exit
Switch-A(config)#vlan 30
Switch-A(config-vlan)#exit
Switch-A(config)#int fa0/1
Switch-A(config-if)#switchport mode access 端口开启访问模式
Switch-A(config-if)#switchport access vlan 10 把vlan10 划分进端口中
Switch-A(config)#int fa0/2 进入端口
Switch-A(config-if)#switchport mode access
Switch-A(config-if)#switchport access vlan 20
Switch-A(config)#int g0/1
Switch-A(config-if)#switchport mode access
Switch-A(config-if)#switchport access vlan 30
Switch-A(config-if)#exit
Switch-A(config)#
步骤4:在交换机Switch-A上为Vlan10、Vlan20和Vlan30的SVI接口配置IP地址,并启用交换机的路由功能。
Switch-A(config)#int vlan 10 进入vlan10
Switch-A(config-if)#ip address 192.168.1.1 255.255.255.0 给vlan10 配置一个网段
Switch-A(config-if)#no shutdown 打开vlan
Switch-A(config)#int vlan 20
Switch-A(config-if)#ip address 192.168.2.1 255.255.255.0
Switch-A(config-if)#no shutdown
Switch-A(config)#int vlan 30
Switch-A(config-if)#ip address 192.168.3.1 255.255.255.0
Switch-A(config-if)#no shutdown
Switch-A(config-if)#exit
Switch-A(config)#ip routing 开启路由通信功能
步骤5:测试PC2到服务器的应用访问。
(1)PC2(职工宿舍)到FTP的访问,结果是可以的,如图5-2-9所示。
(2)PC2 到web服务器的访问,结果也是可以的
小贴士
模拟器中的ftp和web服务器默认已经搭建好,访问地址为服务器的IP地址
模拟器中的ftp连接验证是在PC界面下的命题提示符里输入“>ftp 服务器IP地址”,并输入默认的用户名和密码(均为cisco)进入登录查看。
步骤6:配置扩展访问控制列表,针对服务器的访问流量进行控制。
Switch-A(config)#access-list 101 permit tcp 192.168.1.0 0.0.0.255 host 192.168.3.1 eq 21 !定义扩展ACL,允许行政部对的ftp
[访问列表101允许tcp 192.168.1.0 0.0.255主机192.168.3.1 eq 21]
Switch-A(config)#access-list 101 permit tcp 192.168.1.0 0.0.0.255 host 192.168.3.1 eq 20 !定义扩展ACL,允许行政部对ftp的访问
[访问列表101允许tcp 192.168.1.0 0.0.255主机192.168.3.1 eq 20]
Switch-A(config)#access-list 101 permit tcp 192.168.1.0 0.0.0.255 host 192.168.3.1 gt 1024 !定义扩展ACL,允许行政部对服务器端口号在1024以上的tcp 协议流量,此规则主要针对在PASV模式下允许ftp数据传输
Switch-A(config)#access-list 101 permit tcp 192.168.0.0 0.0.255.255 host 192.168.3.1 eq www !定义扩展ACL,允许公司各部门对服务器的Web访问
Switch-A(config)#access-list 101 deny ip any any !禁止其它所有数据流量
Switch-A(config)#int vlan 30 !进入服务器所在VLAN
Switch-A(config-if)#ip access-group 101 out !将ACL应用到VLAN30的出口方向
Switch-A(config-if)#exit
小贴士
ftp的连接一般是有两个连接的,一个是客户机和服务器传输命令的,即21端口。另一个是数据传送的连接,即20端口。FTP服务程序一般会支持两种不同的模式,一种是Port模式,一种是Passive模式。当ftp连接在端口模式下出现“建立数据 socket 失败 ”时,可利用在PASV模式下使用高于1024的任一个空闲端口传输数据。
针对VLAN的访问控制列表要在VLAN的SVI接口下应用。
为了减少被拒绝流量所占用的带宽,扩展访问控制列表要应用在尽量靠近源地址的接口。
步骤6:进行测试 看是不是全网互通
步骤7:测试公司各部门到PC3(服务器)的应用访问。
(1)PC1(行政部门)的FTP访问,结果是可以访问的
(2)PC1(行政部门)到PC3(服务器)的(ping)连通性,结果是不通的
(3)PC1(行政部门)到PC3(服务器)的web,结果是通的
(4)PC2(职工宿舍)对FTP的访问,结果是不能访问的
(5)PC2(职工宿舍)对WEB的访问,结果是可以访问的
学习小结
FTP通的前提是:PC有自己的IP和GW,三层交换机开启路由功能,服务器也有自己的IP和GW,同时,交换机连接服务器的线路IP 要和服务器IP 在同一个子网段上
FTP的连接一般是有两个连接的,
客户机和服务器传输命令的,即21端口。
另一个是数据传送的连接,即20端口
ftp的连接一般是有两个连接的,一个是客户机和服务器传输命令的,即21端口。另一个是数据传送的连接,即20端口。FTP服务程序一般会支持两种不同的模式,一种是Port模式,一种是Passive模式。当ftp连接在端口模式下出现“建立数据 socket 失败 ”时,可利用在PASV模式下使用高于1024的任一个空闲端口传输数据。
permit tcp 192.168.1.0 0.0.0.255 host 192.168.3.1 gt 1024 用1024的空闲端口进行传输信息
相关命令
Router-A(config)#ip access-list extended[扩展] Web-ftp-service
!定义基于命名的扩展ACL
Router-A(config-ext-nacl)#permit tcp 192.168.1.0 0.0.0.255 192.168.3.0 0.0.0.255 eq 21
!定义扩展ACL规则:允许行政部门主机对网管中心的FTP访问控制流量
Router-A(config-ext-nacl)#permit tcp 192.168.1.0 0.0.0.255 192.168.3.0 0.0.0.255 eq 20
!定义扩展ACL规则:允许行政部门主机对网管中心的FTP数据传输流量
Router-A(config-ext-nacl)#permit tcp 192.168.1.0 0.0.0.255 192.168.3.0 0.0.0.255 gt 1024
!定义扩展ACL规则:允许行政部门主机对网管中心端口号大于1024的tcp流量
笔记:
1.192.168.1.0 是行政部门的IP网络号,192.168.3.0是两台服务器的网络号。
2.如果说允许职工宿舍向FTP服务器传输流量、访问FTP的话,就用职工宿舍的网络号(2.0)
Router-A(config-ext-nacl)#permit tcp 192.168.0.0 0.0.255.255 192.168.3.0 0.0.0.255 eq 80
[80 是www的意思]
!定义扩展ACL规则:允许公司各部门主机对网管中心的WEB访问流量
Router-A(config-ext-nacl)#deny ip any any !拒绝其它对网管中心的访问流量.
[拒绝其他网段访问]
Router-A(config-ext-nacl)#exit
Router-A(config)#int g0/0 !进入端口
Router-A(config-if)#ip access-group Web-ftp-service out
!在Router-A的g0/0端口的出口方向应用命名扩展ACL
每日一言:
一个人的意义不在于他的成就,而在于他所企求成就的东西。