目录
介绍
访问控制列表简称ACL,它使用包过滤技术,在路由器上读取第三层和第四层包头中的信息如源地址、目的地址、源端口、目的端口等。根据预先定义好的规则对包进行过滤,从而达到访问控制的目的。
核心配置参数
相关配置
案例一:拒绝学生宿舍访问财务室网络。
判断是用标准ACL还是用扩展ACL?
根据要求意思是拒绝整个学生宿舍的网络,就应该用标准ACL。
搞清楚ACL应该做在哪个路由器上?
标准ACL应做在离目标最近的端口。
第一步:设置ACL规则(名称方式命名)
R2(config)#ip access-list standard ACL1 做一个标准ACL名字叫ACL1
R2(config-std-nacl)#deny 192.168.10.0 0.0.0.255 拒绝学生宿舍网络,用反掩码精确匹配
如何查看?R2#sh ip access-lists
第二步:应用ACL规则(思考应用到哪个端口?)
标准ACL应做在离目标最近的端口,方向为out。
R2(config)#int f0/0
R2(config-if)#ip access-group ACL1 out
R2#sh running-config
第三步:验证ACL是否正确?
如果要修改ACL?
R2(config)#ip access-list standard ACL1 进入到ACL规则集
R2(config-std-nacl)#permit any 添加规则
R2(config-std-nacl)#no 20 删除编号为20的规则
R2(config)#no ip access-list standard ACL1 删除名为ACL1的规则集
如果用编号方式做ACL规则?
R2(config)#access-list 10 deny 192.168.10.0 0.0.0.255
R2(config)#access-list 10 permit any
删除规则:R2(config)#ip access-list standard 10
R2(config-std-nacl)#no 20
删除整个规则集:R2(config)#no access-list 10
R2(config)#int f0/0
R2(config-if)#ip access-group 10 out
案例二:拒绝学生宿舍访问www服务。
什么是www服务?万维网服务,提供WEB页面访问,协议是:http 默认端口号:80
1.配置网http服务:开启服务–做网页
2.配置DNS服务:开启服务–做A记录
配置DNS地址
测试:在客户端计算机打开命令提示符:nslookup
3、根据要求,应该用什么类型的ACL?
使用扩展ACL,应用在离源最近的端口,方向为in
第一步:配置ACL规则
R1(config)#access-list 100 deny tcp 192.168.10.0 0.0.0.255 host 192.168.100.1 eq www
R1(config)#access-list 100 permit ip any any
第二步:应用到端口(应用在离源最近的端口,方向为in)
R1(config-if)#ip access-group 100 in
第三步:测试:
假设测试失败,怎么检查?
首先检查:sh ip acc
其次检查:是否正确的应用到了端口 sh run
案例三:拒绝学生宿舍ping服务器,但可以访问网站。
ping服务器使用的是什么协议?ICMP
访问网站使用的是哪个协议?http tcp:80
根据要求需要使用什么类型的ACL?
扩展ACL(应用在离源最近的端口,方向为in)
第一步:配置ACL:使用编号方式
R1(config)#access-list 100 deny icmp 192.168.10.0 0.0.0.255 host 192.168.100.1 echo
R1(config)#access-list 100 permit ip any any
第二步:将ACL应用到端口(应用在离源最近的端口,方向为in)
R1(config-if)#ip access-group 100 in
第三步:验证配置是否正确?
假设测试失败,怎么检查?
首先检查:sh ip acc
其次检查:是否正确的应用到了端口 sh run
案例四:学生宿舍不可以ping服务器,不能用www.gxa.com访问网站,但可以用地址访问网站。
先no掉之前做的acl,然后做新的acl
R1(config-if)#no ip access-group 100 in
R1(config)#no ip access-list extended 100
第一步:禁止学生宿舍ping服务器
R1(config)#access-list 100 deny icmp 192.168.10.0 0.0.0.255 host 192.168.100.1 echo
第二步:禁止学生宿舍用域名访问网站,即禁用udp53端口
R1(config)#access-list 100 deny udp 192.168.10.0 0.0.0.255 host 192.168.100.1 eq domain
第三步:允许其他服务访问网站
R1(config)#access-list 100 permit ip any any
第四步:将acl应用到接口上
R1(config)#interface fastEthernet 0/0
R1(config-if)#ip access-group 100 in
检查步骤:show ip acc 看访问控制条目
show run 看是否应用到接口上
案例五:服务器提供DNS/WEB/FTP(tcp/20、12端口)服务
学生宿舍:可以访问行政楼,不允许访问财务室,只允许访问服务器的www服务 行政楼:可以访问学生宿舍,不允许访问财务室,只允许访问服务器的www服务和ftp 财务室:不能访问学生宿舍和行政楼,访问服务器不受限制
第一步:允许服务器访问财务室,其他自动默认拒绝。再应用到接口上。
R2(config)#access-list 10 permit 192.168.100.0 0.0.0.255
R2(config)#in fastEthernet 0/0
R2(config-if)#ip access-group 10 out
第二步:在R2上配置一条ACL集,并应用到0/1端口
R2(config)#access-list 100 permit tcp 192.168.10.0 0.0.0.255 host 192.168.100.1 eq www
R2(config)#access-list 100 permit tcp 192.168.20.0 0.0.0.255 host 192.168.100.1 eq www
R2(config)#access-list 100 permit tcp 192.168.20.0 0.0.0.255 host 192.168.100.1 eq ftp
R2(config)#access-list 100 permit udp 192.168.10.0 0.0.0.255 host 192.168.100.1 eq domain
R2(config)#access-list 100 permit udp 192.168.20.0 0.0.0.255 host 192.168.100.1 eq domain
R2(config)#access-list 100 permit 1p 192.168.30.0 0.0.0.255 any
R2(config)#interface fastEthernet 0/1
R2(config-if)#ip access-group 100 out
基于时间的ACL
基于时间的 ACL 功能类似于扩展 ACL,但它允许根据时间执行访问控制。要使用基于时间的 ACL,您需要创建一个时间范围,指定一周和一天内的时段。您可以为时间范围命名,然后对相应功能应用此范围。
相关配置步骤
首先需要设置路由器的时间
#clock set {hh:mm:ss}{data}{month}{year}
建立一个让列表生效的区间(即取个名字,后面好引用)
(config)#time-range {time-range-name}
如: Time-range deny_http
建立一个时间的区间范围
(config-range)#absolute start {hh:mm data month year} end {hh:mm data month year}
建立一个周期的时间范围
(config-range)#periodic{星期范围}{时间}to {星期范围}{时间}
星期范围:Monday、Tuesday、Wendnesday、Thursday、Friday、Saturday、Sundday
daily(每天)、weekday(每周)、weekend(周末)
举例说明
定义一个每天早9点到下午5点
(config-range)#periodic daily 9:00 to 17:00
定义一个每周四早9点到周五下午5点
(config-range)#periodic Thursday 9:00 to friday 17:00
最后将时间范围应用到访问控制列表中
(config-range)#access-list access-list-number{permit|deny}protocol source-eildcar destination destination-wildcat [operator port] [time-range time-range-name]
比如:
(config)#time-range deny_http
(config-range)#periodic daily 9:00 to 17:00
(config)#access-list 101 deny tcp any any eq www time-range deny_http
(config)#access_list 101 permit ip any any