Cisco路由器实现远程访问虚拟专用网——Easy虚拟专用网(解决出差员工访问内网的问题)

经过博文CIsco路由器实现IPSec 虚拟专用网原理及配置详解能够实现两个局域网之间创建虚拟专用网,可是在现实环境中,较为经常使用的仍是Easy 虚拟专用网。它主要解决的就是出差员工经过虚拟专用网访问内网的问题。在路由器上实现Easy 虚拟专用网时,会涉及如下的基本概念:XAUTH、组策略、动态Crypto Map等概念!web

博文大纲:
1、Easy 虚拟专用网须要解决的问题;
2、在路由器上实现Easy 虚拟专用网须要配置什么?
1.使用XAUTH作用户验证;
2.组策略;
3.动态 Crypto Map;
3、在Cisco路由器上配置Easy 虚拟专用网案例;算法

1、Easy 虚拟专用网须要解决的问题

经过CIsco路由器实现IPSec 虚拟专用网原理及配置详解了解到实现IPSec 虚拟专用网时,须要经历两个重要的阶段。数据库

1.阶段1——创建管理链接

  • 协商采用何种方式创建管理链接;
  • 经过DH算法共享密钥信息;
  • 对等体彼此进行身份验证;

2.阶段2-创建数据链接

  • 定义对等体间保护何种流量;
  • 定义用来保护数据的安全协议;
  • 定义传输模式;

按照上述过程创建IPSec 虚拟专用网没有问题,可是若是使用上面的方法创建Easy 虚拟专用网就会出现不少问题。好比:安全

  • 远程访问虚拟专用网通常来讲,这时一端为硬件设备,如路由器、防火墙等;另外一端则为客户端设备,如笔记本电脑等。这时客户端一侧的安全性就会存在必定的问题。你们试想一下,公司网关级的设备与PC的安全管理级别确定是不一样的,更况且不少员工是经过互联网访问公司的资源,会带来很大的安全隐患。而创建IPSec 虚拟专用网加密的传输的根本就是事先配置在设备上的预共享密钥,一旦密钥泄露,整个IPSec 虚拟专用网就没有任何意义;
  • 创建IPSec 虚拟专用网时,双方都有固定的IP地址,这样咱们才能配置ACL、对等体。很显然若是按照配置IPSec 虚拟专用网的思路来创建Easy 虚拟专用网是不可能的!

2、在路由器上实现Easy 虚拟专用网须要配置什么?

1.使用XAUTH作用户验证

(1)XAUTH

XAUTH是一个虚拟专用网网关的加强特性,提供用户名和密码的方式来验证用户身份。因为这个过程是在两个链接创建之间完成的,因此也被称为“阶段1.5”服务器

说起用户验证天然就会涉及用户名和密码的存储方式,一般有两种状况:网络

  • 存储在虚拟专用网网关设备的内部数据库中;
  • 存储在第三方设备上,好比一台AAA服务器;

虽然增长了用户名和密码的验证过程,但若是远程访问虚拟专用网用户的笔记本电脑丢失,一些非法用户也能够经过这台笔记本电脑来获取公司内部的资料。解决这种问题的办法有:框架

  • 用户使用令牌卡,是每次输入用户名/口令都是不一样的;
  • 虚拟专用网的管理员强制客户端不得在本地存储用户名/口令,用户每次登录必须手动输入;

实际环境中通常都是采用第二种验证方式!ide

(2)AAA的定义

AAA是Authentication(验证)、Authorization(受权)和Accounting(统计)的缩写,它提供了在网络设备上配置访问控制的基本框架。测试

实现AAA服务器只要使用RADIUS协议和TACACS+协议:网站

  • RADIUS协议:是一个全开放的标准协议,任何厂商和用户能够灵活的修改RADIUS;
  • TACACS+协议:是Cisco设计的私有协议;

2.组策略

配置Easy 虚拟专用网一个关键的问题就是,因为与虚拟专用网链接的客户端由不少,因此Peer的IP地址就不会固定,Crypto ACL也不会惟一。最好的解决方法就是让虚拟专用网“主动推送”这些策略给客户端。可是不少状况下客户端的这些策略都是相同的,所以在Easy 虚拟专用网中引入组的概念,将具备相同策略的客户端划分到一个组中,在虚拟专用网网关上一次性地为一组客户端配置策略,这样在配置过程和管理过程当中都将大大节省工做量。

组策略包含如下内容:

(1)地址池

远程访问虚拟专用网的客户端之因此很难与虚拟专用网的网关创建链接,就是由于客户端没有固定的IP地址,在这种“动态”的状况下,最好的办法就是让使虚拟专用网设备像DHCP服务器同样为每一个经过验证的客户端“推送”IP地址。这样,因为客户端的IP地址是虚拟专用网网关动态分配的,虚拟专用网设备天然也就知道该与哪一个IP创建虚拟专用网链接。

示意图以下:
Cisco路由器实现远程访问虚拟专用网——Easy虚拟专用网(解决出差员工访问内网的问题)
当客户端经过了以前的AAA身份验证以后哦,为了与虚拟专用网网关创建IPSec 链接,虚拟专用网网关会从自身或第三方认证服务器中的地址池推送IP地址给客户端。

(2)DNS和网关

和DHCP服务器同样,除了给客户端分配IP地址之外,还要分配网关和DNS,这样客户端就拥有了内网的IP、网关及DNS等必备的资源,真正成为内网的一员。

示意图以下:
Cisco路由器实现远程访问虚拟专用网——Easy虚拟专用网(解决出差员工访问内网的问题)
客户端经过虚拟专用网隧道接入公司内网,就好像虚拟成公司内部的一台客户机同样,这样就能够应用一些公网上被禁的协议。好比共享。

(3)共享密钥

在远程访问虚拟专用网中,虚拟专用网网关须要与多组客户端“共享密钥”,所以在配置虚拟专用网时须要为每组客户端设置不一样的共享密钥,客户端的密钥并非虚拟专用网网关推送的,而是须要用户经过客户端软件配置在主机上,而这个过程通常是由公司的网络管理员来实现的,那么这个密钥天然是保存在客户端主机本地了,所以才有了“阶段1.5”的存在。

示意图以下:
Cisco路由器实现远程访问虚拟专用网——Easy虚拟专用网(解决出差员工访问内网的问题)

(4)分离隧道

默认状况下,客户端与虚拟专用网网关创建隧道后,只能访问内网受权的资源,这是由于隧道会容许全部的流量,也就是说全部的流量必须通过隧道到达公司内网,天然也就不容许任何流量访问外网,而对于客户端而言,访问外网,再正常不过了,因此须要针对远程访问虚拟专用网配置ACL来分离隧道。

经过配置ACL,全部“permit”的流量都被加密传输,全部“deny”的流量都被明文传输,而加密的流量就是经过隧道访问公司内网的流量,明文的流量就是访问Internet的流量,将这个ACL应用到组策略中便可实现需求。

示意图以下:
Cisco路由器实现远程访问虚拟专用网——Easy虚拟专用网(解决出差员工访问内网的问题)
客户端经过认证后,ACL将随其余组策略一同被推送到客户端主机,此时主机的网关将变成公网网关,查看主机的路由表会发现有一条明细路由指向虚拟专用网网关,这条明细的路由就是虚拟专用网客户端根据推送来的ACL生成的。

(5)分离DNS

当客户端主机经过远程访问虚拟专用网链接到公司内网,即便隧道分离后,客户端访问Internet的web服务器时,也须要使用公司内网的DNS解析,但这不是一个合理的过程,若是客户端每次访问百度,都要通过公司内网进行DNS解析,实际上是不必的,太浪费资源了,因此要实现客户端访问公司内网的web服务器时,使用公司内网的DNS解析,若访问百度,则使用外网的DNS,若是要实现不一样的域名使用不一样的DNS,就须要用到了分离DNS。

示意图以下:
Cisco路由器实现远程访问虚拟专用网——Easy虚拟专用网(解决出差员工访问内网的问题)
Cisco路由器实现远程访问虚拟专用网——Easy虚拟专用网(解决出差员工访问内网的问题)

3.动态 Crypto Map

由于咱们没法实如今虚拟专用网设备的静态crypto map中指定客户端的地址(客户端的地址由虚拟专用网的DHCP服务分发,不是固定的),因此须要将静态crypto map中须要的参数被动态填充,使用动态crypto map 必须采用ISAKMP/IKE发起协商,并且在实现远程访问虚拟专用网的时候一般在虚拟专用网网关上同时配置静态和动态的crypto map,由于只有一台具备静态配置的设备能够发起IPSec的隧道,也正是如此,动态的crypto map不多被用于L2L(局域网to局域网)会话创建。

在实现远程访问虚拟局域网的时候,通常会先配置transform-set,由于指定传输集与peer的IP地址无关,能够将传输集直接应用到动态crypto map;因为在接口上只能配置一个crypto map,且虚拟专用网网关上必须有静态crypto map,因此需将动态crypto map 应用到静态的crypto map中,再将静态crypto map应用到接口上,这就是配置crypto map的通常思路。

示意图以下:
Cisco路由器实现远程访问虚拟专用网——Easy虚拟专用网(解决出差员工访问内网的问题)

3、在Cisco路由器上配置Easy 虚拟专用网案例

(1)案例环境

Cisco路由器实现远程访问虚拟专用网——Easy虚拟专用网(解决出差员工访问内网的问题)

(2)案例需求

(1)客户端经过Easy 虚拟专用网使用域名(www.yinuo.com) 正常访问内部网站;
(2)客户端使用域名(www.xiaojiang.com) 正常访问公网网站;
(3)按照拓补图中的IP地址进行配置,R1路由器须要配置一条默认路由到R二、R2只配置IP地址、并自行搭建相关的服务用于测试;
(4)客户端下载虚拟专用网软件 (仅用于Windows 7);

(3)案例实施

1.内部网关路由器R1的配置:

R1(config)#aaa new-model                           //启用AAA
R1(config)#aaa authentication login lv-authen local             //认证
R1(config)#aaa authorization network lv-author local          //受权
//“ lv-authen”是自定义的认证名称,“lv-author”是自定义的受权名称
//“local”表示本地认证方式,也可使用“group radius”,路由器会转发给指定的RADIUS服务器进行验证
//实验环境,为了简单起见就使用local方式
R1(config)#username lv secret zhenjiang
//配置用于客户端链接的用户名及密码,“secret”表示加密该密码
//也能够配置多个用户名和密码,以供路由器与多组客户端进行身份验证
R1(config)#crypto isakmp policy 10
R1(config-isakmp)#encryption 3des
R1(config-isakmp)#hash sha
R1(config-isakmp)#authentication pre-share 
R1(config-isakmp)#group 2            //不可使用DH密钥组号1
R1(config-isakmp)#exit  

阶段1配置完毕!

R1(config)#ip local pool lv-pool 192.168.2.10 192.168.2.50
//地址池的网段地址,池中的地址是向客户端分发的,不能够和内网使用同一网段,不然将会影响最终通讯
R1(config)#ip access-list extended lv-acl
//建立一个命名的ACL
R1(config-ext-nacl)#permit ip 192.168.1.0 0.0.0.255 any
//这个ACL是容许192.168.1.0去往任何地址,当推送到客户端时,就会反过来。
//变成了容许任何IP地址访问192.168.1.0。由于这里的源地址是站在路由器的角度的。
R1(config)#crypto isakmp client configuration group lv-group
//建立用户组,组名为lv-group
R1(config-isakmp-group)#key lv-key           //用户组密钥为lv-key
R1(config-isakmp-group)#pool lv-pool         //调用刚才定义的地址池
R1(config-isakmp-group)#dns 192.168.1.100    
//为客户端指定内部的DNS服务器
R1(config-isakmp-group)#acl lv-acl       //调用刚才定义的ACL
R1(config-isakmp-group)#split-dns yinuo.com
//指定须要分离出来的域名(内网服务器的域名)

阶段1.5配置完毕!

R1(config)#crypto ipsec transform-set lv-set esp-3des esp-sha-hmac 
//指定传输集的加密、验证方式。不可使用AH算法进行验证
R1(cfg-crypto-trans)#exit
R1(config)#crypto dynamic-map lv-dymap 1
//建立动态map,“1”表示序列号,用于定义优先级
R1(config-crypto-map)#set transform-set lv-set
//调用刚才定义的传输集
R1(config-crypto-map)#exit

阶段2配置完毕!

R1(config)#crypto map lv-stamap 1000 ipsec-isakmp dynamic lv-dymap
//建立一个静态map,序列号尽可能靠后,优先匹配IPSec 虚拟专用网的专用静态map
//而且调用刚才定义的动态map
R1(config)#crypto map lv-stamap client authentication list lv-authen
R1(config)#crypto map lv-stamap isakmp authorization list lv-author
//调用刚才定义的AAA方式的认证和受权
R1(config)#crypto map lv-stamap client configuration address respond 
//用于客户端首先发起链接,响应客户端的请求
R1(config)#int f2/0
R1(config-if)#crypto map lv-stamap
//将定义的静态map应用到公司网关路由器的外网接口

2.客户端安装虚拟专用网的客户端软件

Cisco路由器实现远程访问虚拟专用网——Easy虚拟专用网(解决出差员工访问内网的问题)
Cisco路由器实现远程访问虚拟专用网——Easy虚拟专用网(解决出差员工访问内网的问题)
Cisco路由器实现远程访问虚拟专用网——Easy虚拟专用网(解决出差员工访问内网的问题)
接下来无脑下一步便可!安装完成以后
Cisco路由器实现远程访问虚拟专用网——Easy虚拟专用网(解决出差员工访问内网的问题)
Cisco路由器实现远程访问虚拟专用网——Easy虚拟专用网(解决出差员工访问内网的问题)
Cisco路由器实现远程访问虚拟专用网——Easy虚拟专用网(解决出差员工访问内网的问题)
Cisco路由器实现远程访问虚拟专用网——Easy虚拟专用网(解决出差员工访问内网的问题)
Cisco路由器实现远程访问虚拟专用网——Easy虚拟专用网(解决出差员工访问内网的问题)
链接成功后,查看生成的虚拟专用网的IP地址
Cisco路由器实现远程访问虚拟专用网——Easy虚拟专用网(解决出差员工访问内网的问题)
Cisco路由器实现远程访问虚拟专用网——Easy虚拟专用网(解决出差员工访问内网的问题)
访问公司内部、公网的服务器测试访问!
Cisco路由器实现远程访问虚拟专用网——Easy虚拟专用网(解决出差员工访问内网的问题)
Cisco路由器实现远程访问虚拟专用网——Easy虚拟专用网(解决出差员工访问内网的问题)
访问成功!

———————— 本文至此结束,感谢阅读 ————————

相关文章
相关标签/搜索