CCNA实验二十五 实战多种ACL访问控制
来源:互联网 发布:anaconda与python 编辑:程序博客网 时间:2024/09/21 09:27
CCNA实验二十五 实战多种ACL访问控制
环境:Windows XP 、Pracket Tracert 5.3 、 GNS3.0.7.2 目的:了解ACL作用并熟练在不同环境中配置ACL 说明: ACL是路由器和交换机接口的指令列表,用来控制端口进出的数据包并且可以保护网络,ACL适用于所有的被路由协议,如IP、IPX、AppleTalk等。ACL种类:标准ACL、扩展ACL、命名式ACL、基于时间ACL、自反ACL、动态ACL。 标准的ACL使用 1 ~ 99 以及1300~1999之间的数字作为表号,扩展的ACL使用 100 ~ 199以及2000~2699之间的数字作为表号。 标准ACL可以阻止来自某一网络的所有通信流量,或者允许来自某一特定网络的所有通信流量,或者拒绝某一协议簇(比如IP)的所有通信流量。 扩展ACL比标准ACL提供了更广泛的控制范围可以在路由器端口处决定哪种类型的通信流量被转发或被阻塞。 命名式ACL可以用来删除某一条特定的控制条目,这样可以让我们在使用过程中方便地进行修改。 在使用命名访问控制列表时,要求路由器的IOS在11.2以上的版本,并且不能以同一名字命名多个ACL,不同类型的ACL也不能使用相同的名字。 基于时间ACL就是在原来的标准访问列表和扩展访问列表中加入有效的时间范围来更合理有效地控制网络。首先定义一个时间范围,然后在原来的各种访问列表的基础上应用它。基于时间的ACL最多应用在定时断网,例如学校。 动态ACL 是Cisco IOS 的一种安全特性,它使用户能在防火墙中临时打开一个缺口,而不会破坏其它已配置了的安全限制。是能够自动创建动态访问表项的访问列表,动态访问表项是传统访问表项的一部分。它可以根据用户认证过程来创建特定的、临时的访问表项,一旦某个表项超时,就会自动从路由器中删除。在用户被认证之后,路由器会自动关闭telnet会话,并将一个动态访问表项置于某个访问表中,以允许源地址为认证用户工作站地址的报文通过。 自反ACL 允许从内部网络发起的会话的 IP 流量,同时拒绝外部网络发起的 IP 流量. 路由器检查出站流量,当发现新的连接时,便会在临时 ACL 中添加条目以允许应答流量进入。自反ACL永远是 permit 的;自反 ACL允许高层 Session 信息的IP 包过滤利用自反 ACL 可以只允许出去的流量,但是阻止从外部网络产生的向内部网络的流量,从而可以更好地保护内部网络;自反 ACL 是在有流量产生时(如出方向的流量)临时自动产生的,并且当 Session结束条目就删除;自反 ACL不是直接被应用到某个接口下的, 而是嵌套在一个扩展命名访问列表下的。 ACL原则: (1) ACL的列表号指出了是那种协议的ACL。 (2) 一个ACL的配置是每协议、每接口、每方向的。 (3) ACL的语句顺序决定了对数据包的控制顺序。 (4) 最有限制性的语句应该放在ACL语句的首行。 (5) 新的表项只能被添加到ACL的末尾,这意味着不可能改变已有访问控制列表的功能。如果 必须改变,只有先删除已存在的ACL,然后创建一个新ACL。 (6) ACL语句不能被逐条的删除,只能一次性删除整个ACL (7) 标准的ACL应放在接近目标的位置,扩展的ACL应放在靠近源的位置。 (8) 应用在进方向的ACL:先处理再路由。应用在出方向的ACL先路由再处理. (9) 注意通配符掩码。 实验A、(标准ACL与扩展ACL的应用)Packet Tracert搭建拓扑如下:
配置R1: Router>en Router#conf t Router(config)#host R1 R1(config)#int fa0/1 R1(config-if)#ip add 192.168.1.254 255.255.255.0 R1(config-if)#no sh R1(config-if)#exit R1(config)#int fa0/0 R1(config-if)#ip add 192.168.0.254 255.255.255.0 R1(config-if)#no sh R1(config-if)#exit R1(config)#int e1/0 R1(config-if)#ip add 192.168.3.254 255.255.255.0 R1(config-if)#no sh R1(config-if)#exit R1(config)#access-list 1 deny 192.168.0.0 0.0.0.255 //配置一条标准的ACL 1拒绝网络 192.168.0.0上的所有主机 R1(config)#access-list 1 permit any //配置标准ACL 1除拒绝的网段外其他都允许 R1(config)#access-list 2 permit host 192.168.0.1 //配置标准ACL 2只允许主机192.168.0.1 R1(config)#access-list 100 permit tcp 192.168.1.0 0.0.0.255 host 192.168.3.80 eq www //配置扩展的ACL 100 只允许192.168.1.0网络的TCP WEB服务流量通往192.168.3.80主机 R1(config)#int e1/0 //进入e1/0接口 R1(config-if)#ip access-group 1 out //把标准ACL 1应用在e1/0的出方向 R1(config-if)#exit R1(config)#int fa0/1 //进入fa0/1接口 R1(config-if)#ip access-group 100 in //把扩展ACL应用在fa0/1的入方向 R1(config-if)#exit R1(config)#line vty 0 4 //进入虚拟终端 R1(config-line)#access-class 2 in //把标准ACL 2应用在虚拟终端的入方向,即是登录时 R1(config-line)#password cisco //设置虚拟终端的登录密码 R1(config-line)#login //启用密码登录 R1(config-line)#exit 测试ACL效果:
1、PC0 telnet 到R1(成功)
2、PC0 浏览WWW服务器(失败)
3、PC1 浏览WWW服务器(成功)
实验B、(标准命名式ACL 和 扩展命名式ACL)Packet Tracert搭建拓扑如下:
配置R1:
Router>en
Router#conf t
Router(config)#host R2
R2(config)#int e1/0
R2(config-if)#ip add 192.168.0.254 255.255.255.0
R2(config-if)#no sh
R2(config-if)#exit
R2(config)#int e1/1
R2(config-if)#ip add 192.168.1.254 255.255.255.0
R2(config-if)#no sh
R2(config-if)#exit
R2(config)#int e1/3
R2(config-if)#ip add 192.168.3.254 255.255.255.0
R2(config-if)#no sh
R2(config-if)#exit
R2(config)#ip access-list standard denyftp //创建一条命名式标准ACL denyftp
R2(config-std-nacl)#deny 192.168.0.0 0.0.0.255 //拒绝所有来自192.168.0.0/24网络的流量
R2(config-std-nacl)#permit any //允许其他所有网络
R2(config-std-nacl)#exit //退出命名式ACL
R2(config)#ip access-list extended allowftp //创建一条命名式扩展ACL allowftp
R2(config-ext-nacl)#permit tcp 192.168.1.0 0.0.0.255 host 192.168.3.21 eq ftp //允许网络192.168.1.0/24向主机192.168.3.21发出的ftp流量
R2(config-ext-nacl)#deny ip any any //拒绝其他所有的流量
R2(config-ext-nacl)#exit //退出命名式ACL
R2(config)#int e1/1 //进入接口e1/1
R2(config-if)#ip access-group allowftp in //把命名式allowftp ACL应用到e1/1的入方向
R2(config-if)#exit //退出接口模式
R2(config)#int e1/3 //进入e1/3接口
R2(config-if)#ip access-group denyftp out //把命名式denyftp ACL应用到e1/3的出方向
R2(config-if)#exit //退出接口模式
测试ACL效果:
1、PC0访问FTP服务器(失败)
2、PC1访问FTP服务器(成功)
实验C、(基于时间的ACL)GNS创建拓扑如下:
配置R1: Router>en Router#conf t Router(config)#host R1 R1(config)#enable pass cisco R1(config)#int e0/0 R1(config-if)#ip add 192.168.12.1 255.255.255.0 R1(config-if)#no sh R1(config-if)#exit R1(config)#line vty 0 4 //进入虚拟终端模式 R1(config-line)#password cisco //设置虚拟终端登录密码 R1(config-line)#login //启用密码登录 R1(config-line)#exit R1(config)#time-range time_to_telnet //创建一个时间范围名为time_to_telnet R1(config-time-range)#periodic weekdays 12:00 to 14:00 //设置工作日时间为每天12点到14点
R1(config-time-range)#periodic weekdays 18:00 to 19:00 //设置工作日时间为每天18点到19点
R1(config-time-range)#periodic weekend 00:00 to 23:59 //设置周末时间为全天
R1(config-time-range)#exit //退出时间设置模式
R1(config)# access-list 100 permit tcp host 192.168.12.2 host 192.168.12.1 eq telnet time-range time_to_telnet //创建扩展ACL 100 只允许主机 192.168.12.2 在范围时间内telnet到路由192.168.12.1
R1(config)#int e0/0 //进入接口e0/0
R1(config-if)#ip access-group 100 in //把扩展ACL应用到e0/0的入接口方向
R1(config-if)#exit //退出接口
配置PC
Router>en
Router#conf t
Router(config)#host PC
PC(config)#no ip routing //关闭路由功能,配置成PC
PC(config)#ip default-gateway 192.168.12.1 //设置网关为R1
PC(config)#int e0/0 //进入接口e0/0
PC(config-if)#ip add 192.168.12.2 255.255.255.0 //配置IP
PC(config-if)# no sh //开启端口
PC(config-if)#exit
测试ACL效果:
1、PC 尝试telnet到R1(当前时间不在允许范围内 失败)
2、在R1上修改系统时间:
R1#clock set 18:30:00 17 november 2010 //修改成允许范围内的时间
PC再尝试telnet R1:(成功)
实验D、(动态ACL)GNS创建如下拓扑:
配置R1: Router>en Router#conf t Router(config)#host R1 R1(config)#username kkfloat password kkfloat R1(config)#line vty 0 2 R1(config-line)#login local R1(config-line)#autocommand access-enable timeout 30 R1(config-line)#exit R1(config)#line vty 3 4 R1(config-line)#login local R1(config-line)#rotary 1 R1(config-line)#exit R1(config)#access-list 100 permit tcp host 192.168.12.1 host 192.168.12.254 eq telnet R1(config)#access-list 100 permit icmp any host 192.168.12.254 echo-reply R1(config)#access-list 100 dynamic allow timeout 60 permit ip any any log R1(config)#exit R1(config)#int e0/0 R1(config-if)#ip add 192.168.12.254 255.255.255.0 R1(config-if)#ip access-group 100 in R1(config-if)#no sh R1(config-if)#exit 配置PC1 Router>en Router#conf t Router(config)#host PC1 PC1(config)#no ip routing PC1(config)#ip default-gateway 192.168.12.254 PC1(config)#int e0/0 PC1(config-if)#ip add 192.168.12.1 255.255.255.0 PC1(config-if)#no sh PC1(config-if)#exit PC1(config)# 配置PC2: Router> Router>en Router#conf t Router(config)#host PC2 PC2 (config)#no ip routing PC2 (config)#ip default-gateway 192.168.12.254 PC2 (config)#int e0/0 PC2 (config-if)#ip add 192.168.12.2 255.255 PC2(config-if)#no sh PC2 (config-if)#exit
测试ACL效果:
1、PC2尝试使用ping与telnet连接R1(失败)
2、PC1 telnet到R1(成功)
3、再用PC2 尝试Ping R1 (成功)
实验E、(自反ACL)GNS创建如下拓扑:
配置R1: Router>en Router#conf t Router(config)#host R1 R1 (config)# enable password cisco R1(config)#int loopback 0 R1(config-if)#ip add 192.168.1.1 255.255.255.0 R1(config-if)#exit R1(config)#int e0/1 R1(config-if)#ip add 172.16.12.1 255.255.255.0 R1(config-if)#no sh R1(config-if)#exit R1(config)#line vty 0 4 R1(config-line)#password cisco R1(config-line)#login R1(config)#ip route 0.0.0.0 0.0.0.0 172.16.12.2 配置R2: Router>en Router#conf t Router(config)#host R2 R2(config)#int e0/1 R2(config-if)#ip add 172.16.12.2 255.255.255.0 R2(config-if)#no sh R2(config-if)#exit R2(config)#int e0/3 R2(config-if)#ip add 192.168.23.1 255.255.255.0 R2(config-if)#no sh R2(config-if)#exit R2(config)#ip access-list extended outside R2(config-ext-nacl)#permit tcp any any reflect ref R2(config-ext-nacl)#permit udp any any reflect ref R2(config-ext-nacl)#exit R2(config)#ip access-list extended inside R2(config-ext-nacl)#evaluate ref R2(config-ext-nacl)#exit R2(config)#int e0/3 R2(config-if)#ip access-group outside out R2(config-if)#ip access-group inside in R2(config-if)#exit R2(config)#ip route 0.0.0.0 0.0.0.0 192.168.23.2 配置R3: Router#conf t Router(config)#host R3 R3(config)#enable password cisco R3(config)#int loopback 0 R3(config-if)#ip add 192.168.2.1 255.255.255.0 R3(config-if)#exit R3(config)#int e0/3 R3(config-if)#ip add 192.168.23.2 255.255.255.0 R3(config-if)#no sh R3(config-if)#exit R3(config)#line vty 0 4 R3(config-line)#password cisco R3(config-line)#login R3(config-line)#exit R3(config)#ip route 0.0.0.0 0.0.0.0 192.168.23.1 测试ACL效果:
Router>en
1、R3 使用ping与telnet连接R1(失败)
2、R1 使用telnet连接R3(成功)
- CCNA实验二十五 实战多种ACL访问控制
- CCNA实验二十六 实战多种NAT地址转换
- CCNA实验—ACL
- CCNA学习笔记十 ACL访问控制列表、包过滤
- CCNA第六天(ACL访问控制列表)
- CCNA实验三十七 CBAC(基于上下文的访问控制)
- CCNP路由实验之十四 路由器的访问控制ACL
- S5700的ACL访问控制列表及实验
- CCNP路由实验之十四 路由器的访问控制ACL
- zookeeper实战与源码分析----ACL访问控制
- ACL访问控制列表
- ACL访问控制列表
- 访问控制列表ACL
- ACL 访问控制列表
- 访问控制列表 ACL
- 访问控制列表ACL
- ACL访问控制列表
- 访问控制列表ACL
- ssh整合开发中的分页方案(Srtuts2+Spring+Hibernate)
- mysql使用存储过程循环插入数据
- viso
- 用JAVA实现排序算法之四:快速排序
- “0d 0a”这两个字符是什么涵义
- CCNA实验二十五 实战多种ACL访问控制
- 企业核心竞争力和领先优势
- 人工智能
- SQL Server修改表结构后批量更新所有视图的存储过程
- MYSQL 主从库同步 异常处理汇总
- 带两位小数的正则表达式
- 工程师的核心竞争力
- 未公开Windows API SHChangeNotifyRegister实现文件监控
- oracle 通过触发器和sequence 实现字段自增