ACL访问控制列表

ACL访问控制列表

一、简介

访问控制列表(ACL)是应用在路由器接口的指令列表(即规则)。这些指令列表用来告诉路由器,那些数据包可以接受,那些数据包需要拒绝。

1.工作原理

  • ACL使用包过滤技术,在路由器上读取OSI七层模型的第3层和第4层包头中的信息。如源地址,目标地址,源端口,目标端口等,根据预先定义好的规则,对包进行过滤,从而达到访问控制的目的。
  • ACl是一组规则的集合,它应用在路由器的某个接口上。对路由器接口而言,访问控制列表有两个方向。
    出:已经过路由器的处理,正离开路由器的数据包。
    入:已到达路由器接口的数据包。将被路由器处理。

2. 访问控制列表类型

  • 标准访问控制列表
    根据数据包的源IP地址来允许或拒绝数据包,标准访问控制列表的访问控制列表号是1-99。
  • 扩展访问控制列表
    根据数据包的源IP地址,目的IP地址,指定协议,端口和标志,来允许或拒绝数据包。扩展访问控制列表的访问控制列表号是100-199

二、CLI指令

1. 创建ACL指令

1.1 创建标准ACL

access-list access-list-number {permit|deny} source [souce-wildcard]

host指代主机地址  any任何主机
access-list-number:访问控制列表号,标准ACL取值是1-99。

permit|deny:如果满足规则,则允许/拒绝通过。

source:数据包的源地址,可以是主机地址,也可以是网络地址。

source-wildcard:通配符掩码,也叫做反码,即子网掩码去反值。
如:正常子网掩码255.255.255.0取反则是0.0.0.255。

// 举个大栗子
# 创建一个ACL允许192.168.1.0网段的所有主机
access-list 1 permit 192.168.1.0 0.0.0.255

# 创建一个默认ACL拒绝所有主机访问。
access-list 1 deny any

1.2 创建扩展ACL

access-list access-list-number {permit|deny} protocol {source souce-wildcard destination destination-wildcard} [operator operan]

access-list-number:访问控制列表号,扩展ACL取值是100-199。

permit|deny:如果满足规则,则允许/拒绝通过。

protocol:用来指定协议的类型,如IP,TCP,UDP,ICMP等。

source、destination:源和目的,分别用来标示源地址和目的地址。

souce-wildcard、destination-wildcard:子网反码,souce-wildcard是源反码,destination-wildcard是目标反码。

operator operan:lt(小于)、gt(大于)、eq(等于)、neq(不等于)一个端口号。

// 举好多栗子
# 允许192.168.1.0/24访问192.168.2.0/24,而拒绝其他所有主机访问。
access-list 101 permit ip 192.168.1.0 0.0.0.255 192.168.2.0 0.0.0.255
access-list 101 deny ip any any

# 拒绝网络192.168.1.0/24访问FTP服务器192.168.2.100/24,而允许其他主机访问。
access-list 102 deny tcp 192.168.1.0 0.0.0.255 host 192.168.2.100 eq 21
access-list 102 permit ip any any

2. 删除ACL指令

删除标准ACL与扩展ACL

no access-list access-list-number

3. 查看ACL指令

show access-list

4. ACL与交换机端口(加入)

  • access-list-number:创建ACL时指定的访问控制列表号
  • in:应用到入站接口
  • out:应用出站接口

ip access-group access-list-number {in|out}

5. ACL与交换机端口(删除)

no ip access-group access-list-number {in|out}

三、具体实现

针对期末计算机网络课设

1. 访问权限控制分析

1.1 行政部门

  • 部门内部可通信
  • 部门间不可以通信
  • 可以与其他团队、生产车间通信

1.2 销售部门

  • 团队内部可通信
  • 团队间不可以通信
  • 可以与其他部门、生产车间通信

1.3 生产车间

无要求,无需配置

2. 配置语句

配置交换机SWRoot

2.1 配置行政部门

// vlan 10
Switch(config)#access-list 110 deny ip 192.168.1.0 0.0.0.31 192.168.1.32 0.0.0.31
Switch(config)#access-list 110 deny ip 192.168.1.0 0.0.0.31 192.168.1.64 0.0.0.31
Switch(config)#access-list 110 deny ip 192.168.1.0 0.0.0.31 192.168.1.96 0.0.0.31
Switch(config)#access-list 110 deny ip 192.168.1.0 0.0.0.31 192.168.1.128 0.0.0.31
Switch(config)#access-list 110 permit ip any any
Switch(config)#int vlan 10
Switch(config-if)#ip access-group 110 in

// vlan 11
Switch(config)#access-list 111 deny ip 192.168.1.32 0.0.0.31 192.168.1.0 0.0.0.31
Switch(config)#access-list 111 deny ip 192.168.1.32 0.0.0.31 192.168.1.64 0.0.0.31
Switch(config)#access-list 111 deny ip 192.168.1.32 0.0.0.31 192.168.1.96 0.0.0.31
Switch(config)#access-list 111 deny ip 192.168.1.32 0.0.0.31 192.168.1.128 0.0.0.31
Switch(config)#access-list 111 permit ip any any
Switch(config)#int vlan 11
Switch(config-if)#ip access-group 111 in

// vlan 12
Switch(config)#access-list 112 deny ip 192.168.1.64 0.0.0.31 192.168.1.0 0.0.0.31
Switch(config)#access-list 112 deny ip 192.168.1.64 0.0.0.31 192.168.1.32 0.0.0.31
Switch(config)#access-list 112 deny ip 192.168.1.64 0.0.0.31 192.168.1.96 0.0.0.31
Switch(config)#access-list 112 deny ip 192.168.1.64 0.0.0.31 192.168.1.128 0.0.0.31
Switch(config)#access-list 112 permit ip any any
Switch(config)#int vlan 12
Switch(config-if)#ip access-group 112 in

// vlan 13
Switch(config)#access-list 113 deny ip 192.168.1.96 0.0.0.31 192.168.1.0 0.0.0.31
Switch(config)#access-list 113 deny ip 192.168.1.96 0.0.0.31 192.168.1.32 0.0.0.31
Switch(config)#access-list 113 deny ip 192.168.1.96 0.0.0.31 192.168.1.64 0.0.0.31
Switch(config)#access-list 113 deny ip 192.168.1.96 0.0.0.31 192.168.1.128 0.0.0.31
Switch(config)#access-list 113 permit ip any any
Switch(config)#int vlan 13
Switch(config-if)#ip access-group 113 in

// vlan 14
Switch(config)#access-list 114 deny ip 192.168.1.128 0.0.0.31 192.168.1.0 0.0.0.31
Switch(config)#access-list 114 deny ip 192.168.1.128 0.0.0.31 192.168.1.32 0.0.0.31
Switch(config)#access-list 114 deny ip 192.168.1.128 0.0.0.31 192.168.1.64 0.0.0.31
Switch(config)#access-list 114 deny ip 192.168.1.128 0.0.0.31 192.168.1.96 0.0.0.31
Switch(config)#access-list 114 permit ip any any
Switch(config)#int vlan 14
Switch(config-if)#ip access-group 114 in

2.2 配置销售部门

// vlan 20
Switch(config)#access-list 120 deny ip 192.168.2.0 0.0.0.31 192.168.2.32 0.0.0.31
Switch(config)#access-list 120 deny ip 192.168.2.0 0.0.0.31 192.168.2.64 0.0.0.31
Switch(config)#access-list 120 deny ip 192.168.2.0 0.0.0.31 192.168.2.96 0.0.0.31
Switch(config)#access-list 120 deny ip 192.168.2.0 0.0.0.31 192.168.2.128 0.0.0.31
Switch(config)#access-list 120 permit ip any any
Switch(config)#int vlan 20
Switch(config-if)#ip access-group 120 in

// vlan 21
Switch(config)#access-list 121 deny ip 192.168.2.32 0.0.0.31 192.168.2.0 0.0.0.31
Switch(config)#access-list 121 deny ip 192.168.2.32 0.0.0.31 192.168.2.64 0.0.0.31
Switch(config)#access-list 121 deny ip 192.168.2.32 0.0.0.31 192.168.2.96 0.0.0.31
Switch(config)#access-list 121 deny ip 192.168.2.32 0.0.0.31 192.168.2.128 0.0.0.31
Switch(config)#access-list 121 permit ip any any
Switch(config)#int vlan 21
Switch(config-if)#ip access-group 121 in

// vlan 22
Switch(config)#access-list 122 deny ip 192.168.2.64 0.0.0.31 192.168.2.0 0.0.0.31
Switch(config)#access-list 122 deny ip 192.168.2.64 0.0.0.31 192.168.2.32 0.0.0.31
Switch(config)#access-list 122 deny ip 192.168.2.64 0.0.0.31 192.168.2.96 0.0.0.31
Switch(config)#access-list 122 deny ip 192.168.2.64 0.0.0.31 192.168.2.128 0.0.0.31
Switch(config)#access-list 122 permit ip any any
Switch(config)#int vlan 22
Switch(config-if)#ip access-group 122 in

// vlan 23
Switch(config)#access-list 123 deny ip 192.168.2.96 0.0.0.31 192.168.2.0 0.0.0.31
Switch(config)#access-list 123 deny ip 192.168.2.96 0.0.0.31 192.168.2.32 0.0.0.31
Switch(config)#access-list 123 deny ip 192.168.2.96 0.0.0.31 192.168.2.64 0.0.0.31
Switch(config)#access-list 123 deny ip 192.168.2.96 0.0.0.31 192.168.2.128 0.0.0.31
Switch(config)#access-list 123 permit ip any any
Switch(config)#int vlan 23
Switch(config-if)#ip access-group 123 in

// vlan 24
Switch(config)#access-list 124 deny ip 192.168.2.128 0.0.0.31 192.168.2.0 0.0.0.31
Switch(config)#access-list 124 deny ip 192.168.2.128 0.0.0.31 192.168.2.32 0.0.0.31
Switch(config)#access-list 124 deny ip 192.168.2.128 0.0.0.31 192.168.2.64 0.0.0.31
Switch(config)#access-list 124 deny ip 192.168.2.128 0.0.0.31 192.168.2.96 0.0.0.31
Switch(config)#access-list 124 permit ip any any
Switch(config)#int vlan 24
Switch(config-if)#ip access-group 124 in

2.3 生产车间

无特殊要求,无需配置

上一篇:快速排序【记录一下代码】


下一篇:软件领域没有银弹 —— 建立正确的云计算认知