C/C++教程

ACL实验

本文主要是介绍ACL实验,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

ACL实验

img

基本配置:略

首先根据题目策略的需求1,从这个角度看,我们需要做一条高级ACL,因为我们不仅要看你是谁,还要看你去干什么事情,用高级ACL来做的话,对于我们华为设备,只写拒绝,因为华为默认允许所有

所以telnet R1 我们不用管,只写一条拒绝,不让PC1 ping R1 就行了

因为两条都有telnet的服务需求,所以我先把R1R2的telnet服务开启

先到aaa里面创建一个用户

[r1]aaa
[r1-aaa]

创建一个hzf 用户,他的优先级是15,密码123456

[r1-aaa]local-user hzf privilege level 15 password cipher 123456

这个用户是做什么用的呢?主要是做telnet用的

[r1-aaa]local-user hzf service-type telnet

把我们的虚拟端口开启, 0 4是开启五个端口,同时可以登录五个人,这边只开个0端口

[r1]user-interface vty 0

告诉端口它的认证类型 :aaa

[r1-ui-vty0]authentication-mode aaa

[r1-ui-vty0]q

此时我们便开启了telnet

同样方法开启r2的telnet服务

在R1上先创建一个高级acl 3000

[r1]acl 3000

[r1-acl-adv-3000]

注意写的时候只需要写拒绝就可以了,拒绝ping R1

ping匹配icmp协议,源地址匹配192.168.1.10 写死,目标地址192.168.1.1 写死,

r1有两个端口因此都加入规则

[r1-acl-adv-3000]rule deny icmp source 192.168.1.10 0.0.0.0 destination 192.168.1.1 0.0.0.0

[r1-acl-adv-3000]rule deny icmp source 192.168.1.10 0.0.0.0 destination 192.168.2.1 0.0.0.0

PC1不能telnet R2,因此写入规则

不能telnet是tcp协议,源地址192.168.1.10 写死,目标地址192.168.2.2 写死,目标端口23(telnet端口 23),icmp为啥不加,相当于所有icmp的包我们都拒绝,一般情况下,只有ping用icmp的包,还有tracert。要是不写目标端口会导致所有tcp协议的包都被拦截,所以我们要声明目标端口

[r1-acl-adv-3000]rule deny tcp source 192.168.1.10 0.0.0.0 destination 192.168.2.2 0.0.0.0 destination-port eq 23

规则写好了,我们就要调用,在r1的0/0/0接口

方向是流入方向inbound

[r1-GigabitEthernet0/0/0]traffic-filter inbound acl 3000

ping和telnet测试:略

同理PC2的acl规则可以直接写入3000里,

[r1]acl 3000
[r1-acl-adv-3000]

拒绝PC2 telnet r1,也是两个端口都拒

[r1-acl-adv-3000]rule deny tcp source 192.168.1.11 0.0.0.0 destination 192.168.1
.1 0.0.0.0 destination-port eq 23

[r1-acl-adv-3000]rule deny tcp source 192.168.1.11 0.0.0.0 destination 192.168.2
.1 0.0.0.0 destination-port eq 23

可以ping R1,华为设备默认允许全部

不可以ping R2,但是可以telnet R2

[r1-acl-adv-3000]rule deny icmp source 192.168.1.11 0.0.0.0 destination 192.168.
2.2 0.0.0.0

测试:略

img

这篇关于ACL实验的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!