多厂商***系列之三:Cisco EZ***的实现【PC&路由器拨号】

简介

如果有这么种情况,在外出差的员工需要随时访问公司的内部的资源,在之前提到的IPsec ***中是无法实现的,不可能出差还到处带个路由器跑吧!所以cisco在IOS12.2(8)T以后开出一个Remote ***,适应于出差员工和小型办公,通常称为Easy ***,其实说它简单,是因为client只需安装一个软件即可拨号了,或者是路由器做一些简单的配置。


    在12.4以前 Easy ***只能使用pre-shared key来作为认证[v_act],cisco也考虑到PC的处理能力加解密能力没有路由器的强,所以在这种情况下使用了Aggressive mode(积极模式)来进行协商第一阶段策略。

多厂商***系列之三:Cisco EZ***的实现【PC&路由器拨号】

Aggressive Mode只会发送3个协商包,Cliet发送内置的策略到server端,server查看IKE policy匹配上了client端的策略后,会把这个结果做Hash一并发送给client,Client确认后也返回一个Hash值做确认。这些协商包都是在不加密的情况下进行的,所以cisco认为这种情况下不是非常安全,所以推出了1.5阶段的策略。这是cisco的特用技术,其他产商可能用不同的技术来实现效果。
1.5阶段的策略包括 Xauth:需要进行用户名验证 ,必须基于AAA技术(可以是本地或者server)
Mode-Config:推送策略到Client端,包括ip address、 DNS、等
因为,Client安装软件后会出现一张cisco ***的网卡,它会通过server端推送的策略获取地址,用这个地址与与内部进行通信。
第二阶段还是与IPsec ***一样,但是在Easy ***中一个很重要的概念,就是Reerse Router Injctin(RRI)反向路由注入,它在Easy ***中起很大的作用,我们假设一个Client拨入server后需要访问内部的网络,可返回的流量怎么返回呢,所以RRI的作用是,通过server端推送的地址自动产生一条32位的静态路由,这个路由条目为分配的地址为网络,下一跳为Client的公网地址,这样来完成流量的返回。


Client分为软件和硬件Client,软件Client是指装在PC上的一个软件,硬件通常是指路由器、ASA/PIX *** 3000等,作为Client来拨入,Easy ***提供了很强大的扩展性,也可以实现LAN-To-LAN的效果,主要是Client端可以为动态IP。

多厂商***系列之三:Cisco EZ***的实现【PC&路由器拨号】

这个拓扑主要实现 Software Client 与hardware Client来作为拨入Client的形式,当拨入center后,获取地址用于访问server的资源。
用于Software Client的网关做了PAT,方便Client的拨号,而硬件Client就一条默认路由,这里主要是看硬件Client拨入后的各种状态。
Internet用一个环回口2.2.2.2 作为测试。

GW基本配置

interface FastEthernet0/0
ip address 12.1.1.1 255.255.255.252
ip nat outside
!
interface FastEthernet0/1
ip address 192.168.3.1 255.255.255.0
ip nat inside

access-list 1 permit any
ip nat inside source list 1 interface FastEthernet0/0 overload
ip route 0.0.0.0 0.0.0.0 12.1.1.2

Client

interface FastEthernet0/0
ip address 192.168.2.1 255.255.255.0
!
interface FastEthernet0/1
ip address 11.1.1.1 255.255.255.252
!
ip route 0.0.0.0 0.0.0.0 11.1.1.2

Internet

interface FastEthernet0/0
ip address 11.1.1.2 255.255.255.252
!
interface FastEthernet0/1
ip address 23.1.1.1 255.255.255.252
!
interface FastEthernet1/0
ip address 12.1.1.2 255.255.255.252
!
line vty 0 4
no login

Center

interface FastEthernet0/0
ip address 23.1.1.2 255.255.255.252
!
interface FastEthernet0/1
ip address 192.168.1.1 255.255.255.0
!
ip route 0.0.0.0 0.0.0.0 23.1.1.1

基本配置完毕了,主要是各个公网接口能ping通对方,software Client能访问公网。

多厂商***系列之三:Cisco EZ***的实现【PC&路由器拨号】

Soft Client地址访问internet通过PAT转换12.1.1.1的视频。

开始Easy *** server的配置,首先需要注意几点的是,Easy ***不支持Group 1,DES+SHA的策略也不能协商成功,这是因为软件Client没有集成这些。另外拨入server后,所有的流量都会引向server端,包括访问internet的流量,当然可以通过技术来解决。
这里IKE 第一阶段能成功协商的有 | DES+MD5 | SHA+3DES | MD5+3DES |

IKE 第1阶段

crypto isakmp policy 10
hash md5
authentication pre-share
group 2

1.5阶段 就是xauth 和mode -config

用于Easy ***需要采用用户名验证,必须是基于AAA的来实现,所以前提开启AAA。
aaa new-model
aaa authentication login remote local
aaa authorization network remote local
这里对登陆用户做本地验证,和网络授权也为本地
usernmae cciese password cisco

crypto isakmp client configuration group ez*** 起一个组名字为ez***,这个组给Client推送策略使用
key cisco
pool cciese
ip local pool cciese 192.168.1.100 192.168.1.200

这里这个两个策略是必须设置的,一个Key作为组的验证,一个地址推送
crypto isakmp profile cisco
match identity group ez***
client authentication list remote
isakmp authorization list remote
client configuration address respond
调用1.5阶段,Client的认证为刚刚定义的本地认证,isakmp的授权也为本地,Client configuration address respond是为软件3.0以上使用的是由Client 询问, 而2.0的Client选择initiate , 由server 推送

IPsec 二阶段,这里EZ***没有transport之说

crypto ipsec transform-set trans esp-des esp-md5-hmac

动态map调用,因为server端并不知道peer是谁
crypto dynamic-map remote 10
set transform-set trans
set isakmp-profile cisco
reverse-route
这里最重要的是RRI,作用上面提过了。

crypto map remote 100 ipsec-isakmp dynamic remote
接口下
crypto map remote

Software做拨入

多厂商***系列之三:Cisco EZ***的实现【PC&路由器拨号】

在没拨入之前,Client还是能访问公网的。

多厂商***系列之三:Cisco EZ***的实现【PC&路由器拨号】

这个软件Client的设置,host为center的地址,Group 的name就是之前定义的Group名字 ,password就是Key

多厂商***系列之三:Cisco EZ***的实现【PC&路由器拨号】

当连接后,需要输入用户信息,就是之前设置的。

多厂商***系列之三:Cisco EZ***的实现【PC&路由器拨号】

拨入成功后,获得了一个地址192.168.1.101 ,默认网关为192.168.1.101 ,本地网关地址缺没有了,在测试下ping 公网地址。

多厂商***系列之三:Cisco EZ***的实现【PC&路由器拨号】
多厂商***系列之三:Cisco EZ***的实现【PC&路由器拨号】

会发现公网也访问不了了,这是因为在***认为,上internet是不安全的,你拨入上来只允许访问内部资源,不做别的。所以把去往所有的流量发往192.168.1.101。

多厂商***系列之三:Cisco EZ***的实现【PC&路由器拨号】

访问内部网络资源正常。

多厂商***系列之三:Cisco EZ***的实现【PC&路由器拨号】

拨入后,center端会通过RRI自动获取一个32位的主机路由,网络为Client获取的地址,下一跳为拨入的公网地址。这个静态地址可以通过重分布进IGP协议中,让流量可以顺利返回。


如果需要改变流量的引入,那么需要用到split tunnel
Tunnel Options: 1、Tunnel everything :默认全部数据都加密 default
2、Tunnel everything except local LAN Traffic :本LAN不加密
3、Split Tunneling :需要的才加密,不需要的就走internet

这里定义一个分离隧道,需要的流量才加密,不需要的走默认路由
access-list 100 permit ip 192.168.1.0 0.0.0.255 any
这个列表表示任何访问192.168.1.0/24网段的才加密,其他的不需要
crypto isakmp client configuration group ez***
acl 100
在1.5阶段中调用
Client重新拨入

多厂商***系列之三:Cisco EZ***的实现【PC&路由器拨号】

发现安全加密的显示为192.168.1.0 255.255.255.0这个网段,并且能正常访问,其余的流量走默认路由,所以能访问公网 2.2.2.2

有时候,如果我们在其他公司拨入总部的时候,又需要访问本地主机或者打印机,默认情况下是不允许访问的,所以需要使用Tunnel everything except local LAN Traffic 。这个策略需要server与Client端同时配置。

server端
crypto isakmp client configuration group ez***
include-local-lan

Client
在选项中的transport中,Allow Local LAN access

多厂商***系列之三:Cisco EZ***的实现【PC&路由器拨号】

下面说下硬件Client的实现,这里为IOS的实现,会了这个PIX/ASA也不会有问题了。*** 3000由于美国规定不允许在北美以外出售,所以不需要了解了,现在ASA也集成了*** 3000的功能。


crypto ipsec client ez*** cciese
connect manual
group ez*** key cisco
mode client
peer 23.1.1.2
connect manual
这里定义一个i额EZ*** Client 名字为cciese,Group的名字和key ,还有向谁拨入 ,mode 这里为Client,还支持network。主要的是connect manual为手动连接,当然实际中肯定是自动连接了,这里为实现效果。

接口下调用,这个跟NAT的调用很像,有分为outside与Inside
interface f0/1
crypto ipsec client ez*** cciese outside
!
interface FastEthernet0/0
crypto ipsec client ez*** cciese inside

开始连接
输入:crypto ipsec client ez*** connect 后提示xauth后,然后输入用户信息拨入。

多厂商***系列之三:Cisco EZ***的实现【PC&路由器拨号】

show crypto ipsec client ez*** 查看client的信息

多厂商***系列之三:Cisco EZ***的实现【PC&路由器拨号】

这里是之前做过split tunnel,所以推送了策略。在看看其他方面的特性。

多厂商***系列之三:Cisco EZ***的实现【PC&路由器拨号】

虽然做了split tunnel,但是Client端我之前是没做NAT设置的,这里为什么能访问公网呢。

多厂商***系列之三:Cisco EZ***的实现【PC&路由器拨号】

查看NAT信息,会发现server自动推送了两个access-list 一个为internet-list,用于访问外网,另外一个access-list是为了访问内部流量后自动转换成分配的那个地址出去。

在看看network-extension,它能实现一个类似于L2L的效果,Client模式是通过分配的地址转换访问内部流量,而这个模式能使用内部真实的地址访问center内部的流量,相当与L2L的效果。这种情况下中心也能访问Client,方便语音电话之类的。

多厂商***系列之三:Cisco EZ***的实现【PC&路由器拨号】

会发现server端没有为Client分配地址,
总结下Client与network mode的内容,这里还有个 Network Mode Split tunnel 没有弄出来,它是可以访问internet的。

多厂商***系列之三:Cisco EZ***的实现【PC&路由器拨号】

network 只适应于一个身后直连网络,但是可以在Client用ACL写其他的网络,那么它会把策略发送给server端,并自动匹配感兴趣流量,那么就有多个网段的加密信息了,实现。
比如 身后还有个1.1.1.0/24的网络需要访问,直连网络为192.168.2.0/24,也就是inside接口这个。
access-list 100 permit ip 1.1.1.0 0.0.0.255 any
crypto ipsec client ez*** cciese
acl 100

多厂商***系列之三:Cisco EZ***的实现【PC&路由器拨号】
多厂商***系列之三:Cisco EZ***的实现【PC&路由器拨号】

会发现除了192.168.2.0/24的sa信息 还有1.1.1.0/24信息。

最后一个自动连接的设置,这里需要保存usernmae和password就需要server端允许。否则不能完成自动连接的效果
server端
crypto isakmp client configuration group ez***
save-password

Client端
crypto ipsec client ez*** cciese
username cciese password cisco
connect auto

多厂商***系列之三:Cisco EZ***的实现【PC&路由器拨号】

不需要设置自动连接了。

多厂商***系列之三:Cisco EZ***的实现【PC&路由器拨号】

软件也可以实现保存,这个适用于公司一些不懂技术的人设置的。

EZ***的扩展性和实用性非常好,,许多功能需要自己去测试才能真正的体会到它们的功能。当然ASA功能更加强大,主要体现在策略上。

本文转载于公众号:网络之路博客

上一篇:如何在Mac OS X上安装python 3的pip?


下一篇:类和对象