Cisco路由器ACL安全应用—Local-And-Key

session 1 原理

    Local-And-Key是动态ACL的一种,可以在外网用户访问内网设备时提供一种简单的安全机制,在配置了LOCAL-AND-KEY的路由器上,所有的外网到内网的访问都是需要经过telnet的用户验证,如果通过了telnet验证,那么外网用户就获得了访问内网的临时访问权(路由器会根据动态ACL产生一条临时的ACL来匹配访问流量),但如果不通过验证,外网用户无法访问内网设备。

注意的点:1、local-and-key配置在边界路由器上,即被保护主机的边界。

          2、telnet的认证是在配置了local-and-key的路由器上进行,也就是telnet该路由器来进行认证,在              通过认证后,该telnet会马上断开连接,并给出通过认证的提示,不会影响路由器本身的安全性              能,但是也就不能通过telnet来管理配置了local-and-key的路由器了。

          3、应用于外网用户时首先保证外网用户可以访问该路由器(telnet可以登录,否则无法通                       信也就无从认证了)。

session 2 配置

1、实验环境2台cisco3745路由器和一台虚拟PC机器

Cisco路由器ACL安全应用—Local-And-Key_第1张图片

       internet扮演一台外网路由器兼外网用户(使用loopback 0来模拟),而R2及PC2扮演内网边界路由器及受保护的应用PC主机,实验要求为:当外网用户访问PC2时候,需要经过telnet安全认证通过,否则将无法访问,并且只有经过了telnet安全认证的用户才能对PC2进行访问,这里单独提一下“只有经过了telnet安全认证的用户才能对PC2进行访问”这个点是因为后面配置里面讲到的一个host参数的关系,见下文:

1、首先配置相互连通性,这里就用静态路由或者默认路由保证internet的lo0口与PC2可以通信即可

internet f0/0 192.168.1.1 ----- R2 f0/0 192.168.1.2 ------ R2 f0/1 10.0.0.1 ----- PC2 10.0.0.2 getway 10.0.0.1

做路由后测试ping

internet#show run int f0/0

interface FastEthernet0/0

 ip address 192.168.1.1 255.255.255.0

end

internet#ping 10.0.0.2

Sending 5, 100-byte ICMP Echos to 10.0.0.2, timeout is 2 seconds:

!!!!!

Success rate is 100 percent (5/5), round-trip min/avg/max = 24/33/48 ms

做路由通信后,开始配置local-and-key

R2上的配置:

第一步,配置本地认证数据库,设置认证所用到的用户名及密码

R2(config)#username ccie password ccie

第二部,创建动态ACL,匹配要进行认证的流量。并且允许telnet流量(认证需要telnet),并在接口上启用ACL

R2(config)#access-list 101 permit tcp any any eq 23   (允许telnet认证的流量,放在动态ACL条目下面也不影响,不过建议放在前面)

R2(config)#access-list 101 dynamic local-and-key timeout 60 permit ip any any 

创建了101的动态ACL条目,当源通过认证时,会产生一条临时ACL内容为permit ip 源 any,允许访问的时间为60分钟,不加时间参数的话默认是120分钟。

R2(config-if)#ip access-group 101 in    将ACL应用在对外接口的in方向

第三部,配置认telnet证使用本地数据进行

R2(config)#line vty 0 4

R2(config-line)#login local

R2(config-line)#autocommand access-enable host timeout 2

R2(config-line)#exit

第四步,在接口上应用ACL

R2(config-if)#ip access-group local-and-key in     应用在接口的in方向

       以上四部动态ACL local-and-key就配置完成了,其中标红的host参数,是指“只有经过了telnet安全认证的用户才能对PC2进行访问”,否则不加此参数的结果是只要有一个源通过了telnet的认证,那么将放行any对于PC2的访问。2是时间参数2分钟,意思为telnet连接以后2分钟内不进行认证行为该会话就会自动关闭,默认为5分钟,此功能是为了防止对路由器的telnet半连接攻击设计。

autocommand说明:此命令类似于登录脚本,就是登录后执行输出aotucommand后面的命令或者文字,就是说telnet登录成功后,就会执行access-enable host timeout 2这条命令,由这条命令激活了之前设置的动态ACL,才会自动生成动态ACL定义的临时ACL条目。

session 3 测试结果

1、没有启用local-and-key的ping测试

internet#ping 10.0.0.2

Sending 5, 100-byte ICMP Echos to 10.0.0.2, timeout is 2 seconds:

!!!!!

Success rate is 100 percent (5/5), round-trip min/avg/max = 24/33/48 ms

2、启用了local-and-key动态ACL的ping测试

internet#ping 10.0.0.2

Type escape sequence to abort.

Sending 5, 100-byte ICMP Echos to 10.0.0.2, timeout is 2 seconds:

UUUUU

Success rate is 0 percent (0/5)

3、在internet路由器上使用telnet认证连接R2,并通过认证

internet#telnet 192.168.1.2

Trying 192.168.1.2 ... Open

User Access Verification

Username: ccie

Password: 

% List#101-local-and-key already contains this IP address pair

[Connection to 192.168.1.2 closed by foreign host]   认证成功后看到连接马上自动关闭

internet#

4、再pingPC2看结果并查看R2上的ACL条目

internet#ping 10.0.0.2 source 192.168.1.1

Type escape sequence to abort.

Sending 5, 100-byte ICMP Echos to 10.0.0.2, timeout is 2 seconds:

Packet sent with a source address of 192.168.1.1 

.!!!!

Success rate is 80 percent (4/5), round-trip min/avg/max = 16/273/1028 ms

internet#

可以访问PC2了,查看R2中的ACL:

R2#show access-lists 

Extended IP access list 101

    10 Dynamic local-and-key permit ip any any

       permit ip host 192.168.1.1 any (79 matches)

    20 permit tcp any any eq telnet (57 matches)

R2#

看到动态ACL列表local-and-key产生了一条临时条目permit ip host 192.168.1.1 any (79 matches),允许192.168.1.1对于any的访问。

完成local-and-key动态ACL的应用。

补充:动态ACL的local-and-key只是检查ip,如果经过认证某台设备的ip被非法抢占了,那么抢占这个已经通过认证的ip的设备就可以利用这个抢占的ip来通信了,所以local-and-key动态ACL不实用。


你可能感兴趣的:(Cisco路由器ACL安全应用—Local-And-Key)