【汇总】学习VPN其实很简单
简介
在12.4以前 Easy VPN只能使用pre-shared key来作为认证[v_act],cisco也考虑到PC的处理能力加解密能力没有路由器的强,所以在这种情况下使用了Aggressive mode(积极模式)来进行协商第一阶段策略。
1.5阶段的策略包括 Xauth:需要进行用户名验证 ,必须基于AAA技术(可以是本地或者server)
Mode-Config:推送策略到Client端,包括ip address、 DNS、等
因为,Client安装软件后会出现一张cisco VPN的网卡,它会通过server端推送的策略获取地址,用这个地址与与内部进行通信。
第二阶段还是与IPsec VPN一样,但是在Easy VPN中一个很重要的概念,就是Reerse Router Injctin(RRI)反向路由注入,它在Easy VPN中起很大的作用,我们假设一个Client拨入server后需要访问内部的网络,可返回的流量怎么返回呢,所以RRI的作用是,通过server端推送的地址自动产生一条32位的静态路由,这个路由条目为分配的地址为网络,下一跳为Client的公网地址,这样来完成流量的返回。
Client分为软件和硬件Client,软件Client是指装在PC上的一个软件,硬件通常是指路由器、ASA/PIX VPN 3000等,作为Client来拨入,Easy VPN提供了很强大的扩展性,也可以实现LAN-To-LAN的效果,主要是Client端可以为动态IP。
这个拓扑主要实现 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能访问公网。
Soft Client地址访问internet通过PAT转换12.1.1.1的视频。
开始Easy VPN server的配置,首先需要注意几点的是,Easy VPN不支持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 VPN需要采用用户名验证,必须是基于AAA的来实现,所以前提开启AAA。
aaa new-model
aaa authentication login remote local
aaa authorization network remote local
这里对登陆用户做本地验证,和网络授权也为本地
usernmae cciese password cisco
crypto isakmp client configuration group ezvpn 起一个组名字为ezvpn,这个组给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 ezvpn
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 二阶段,这里EZVPN没有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做拨入
在没拨入之前,Client还是能访问公网的。
这个软件Client的设置,host为center的地址,Group 的name就是之前定义的Group名字 ,password就是Key
当连接后,需要输入用户信息,就是之前设置的。
拨入成功后,获得了一个地址192.168.1.101 ,默认网关为192.168.1.101 ,本地网关地址缺没有了,在测试下ping 公网地址。
会发现公网也访问不了了,这是因为在VPN认为,上internet是不安全的,你拨入上来只允许访问内部资源,不做别的。所以把去往所有的流量发往192.168.1.101。
访问内部网络资源正常。
如果需要改变流量的引入,那么需要用到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 ezvpn
acl 100
在1.5阶段中调用
Client重新拨入
发现安全加密的显示为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 ezvpn
include-local-lan
Client
在选项中的transport中,Allow Local LAN access
crypto ipsec client ezvpn cciese
connect manual
group ezvpn key cisco
mode client
peer 23.1.1.2
connect manual
这里定义一个i额EZVPN Client 名字为cciese,Group的名字和key ,还有向谁拨入 ,mode 这里为Client,还支持network。主要的是connect manual为手动连接,当然实际中肯定是自动连接了,这里为实现效果。
接口下调用,这个跟NAT的调用很像,有分为outside与Inside
interface f0/1
crypto ipsec client ezvpn cciese outside
!
interface FastEthernet0/0
crypto ipsec client ezvpn cciese inside
开始连接
输入:crypto ipsec client ezvpn connect 后提示xauth后,然后输入用户信息拨入。
show crypto ipsec client ezvpn 查看client的信息
这里是之前做过split tunnel,所以推送了策略。在看看其他方面的特性。
虽然做了split tunnel,但是Client端我之前是没做NAT设置的,这里为什么能访问公网呢。
查看NAT信息,会发现server自动推送了两个access-list 一个为internet-list,用于访问外网,另外一个access-list是为了访问内部流量后自动转换成分配的那个地址出去。
在看看network-extension,它能实现一个类似于L2L的效果,Client模式是通过分配的地址转换访问内部流量,而这个模式能使用内部真实的地址访问center内部的流量,相当与L2L的效果。这种情况下中心也能访问Client,方便语音电话之类的。
会发现server端没有为Client分配地址,
总结下Client与network mode的内容,这里还有个 Network Mode Split tunnel 没有弄出来,它是可以访问internet的。
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 ezvpn cciese
acl 100
会发现除了192.168.2.0/24的sa信息 还有1.1.1.0/24信息。
最后一个自动连接的设置,这里需要保存usernmae和password就需要server端允许。否则不能完成自动连接的效果
server端
crypto isakmp client configuration group ezvpn
save-password
Client端
crypto ipsec client ezvpn cciese
username cciese password cisco
connect auto
不需要设置自动连接了。
软件也可以实现保存,这个适用于公司一些不懂技术的人设置的。
EZVPN的扩展性和实用性非常好,,许多功能需要自己去测试才能真正的体会到它们的功能。当然ASA功能更加强大,主要体现在策略上。
下载对应文档
关于博客资源下载说明
(1)第一种是书籍PDF与视频类,全部放在博客分享,觉得对大家学习有帮助的博主会收集好、然后以博主的经验整理分类后排序好分享出来。
(2)第二种是技术性文章与视频,全部放在公众号(网络之路博客)/B站(网络之路Blog)发布,以博主原创为主,主要分享系列为主,由浅入深的带大家了解工作中常用到的一些网络技术,当然也会分享一些比较经典的案例。
(3)分享资源有涉及到您的利益以及版权问题,请联系博主,24小时候内删除。

学习视频系列(总有您想要的)
Book与实验手册(从初级到高级)
数通系列(路由交换 无线、防火墙VPN等)
实战系列(最贴近企业需求的案例)
想第一时间收到最新更新内容吗,点击获取~~~