码迷,mamicode.com
首页 > 其他好文 > 详细

远程访问虚拟专用网------EASY虚拟专用网

时间:2019-11-12 09:28:11      阅读:96      评论:0      收藏:0      [点我收藏+]

标签:允许   建立连接   就是   分离   tun   访问内网   用户服   pool   没有   

1.Easy 虚拟专用网需要解决的问题

阶段1----建立管理连接

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

阶段2----建立数据连接

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

2.使用XAUTH做用户验证

(1) XAUTH

IPsec 协议最初的设计并未考虑用户验证问题,所以IETF (internet  Engineering  Task Force , 因特网工程任务部) 引入了一个RFC的草案
---XAUTH, 它是一个虚拟专用网网管的增强特性,提供用户名和密码的方式来验证用户身份。
由于这个过程是在俩个连接建立之间完成的,所以被称为“阶段1.5”。

用户验证自然就会涉及用户名和密码的存储方式,通常情况下有两种:
  1. 存储在虚拟专用网网关设备的内部数据库中
  2. 存储在第三方设备上

(2)AAA的定义

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

验证: 用户是谁?
对用户的合法性进行验证,包括用户名,密码等信息的验证

授权:用户可以做什么?
在用户通过验证后,为用户指定其能够使用的服务等权限

统计:用户做过什么?
在用户验证,授权成功后,记录用户的操作等信息,以便用于记账

实现AAA服务器主要使用RADIUS协议和TACACS+协议
RADIUS(远程验证拨入用户服务)是一个全开放的标准协议,厂商或用户可以灵活地修改RADIUS

TACACS+(终端访问控制器访问控制系统)是Cisco设计的私有协议

  • 路由器开启AAA

Router(config)# aaa new-model

3.组策略

  • .地址池

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

    技术图片

  • DNS和网关

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

技术图片

  • 共享密钥

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

技术图片

  • 分离隧道

默认情况下,客户端与虚拟专用网网关建立隧道后,只能访问内网授权的资源,这是因为隧道会允许所有的流量,也就是说所有的流量必须经过隧道到达公司,自然也就不允许任何流量访问,而对于客户端而言,所以需要针对远程访问虚拟专用网配置ACL来分离隧道

技术图片

  • 分离DNS

当客户端主机通过远程访问虚拟专用网连接到公司,即使隧道分离后,客户端访问Internet的web服务器时,也需要使用公司内网的DNS解析,但这不是一个合理的过程,如果客户端每次访问百度,都要经过公司内网进行DNS解析,其实是没必要的,太浪费资源了,所以要实现客户端访问公司的web服务器时,使用公司内网的DNS解析,若访问百度,则使用的DNS,如果要实现不同的域名使用不同的DNS,就需要用到了分离DNS

技术图片

4.动态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。

5.配置案例

技术图片

1.配置IP 并且除了R4 别的全部做默认路由

桥接一个主机是64位的,要用虚拟专用网的客户端程序

如R3配置

R3(config)#int f0/0
R3(config-if)#ip add 192.168.0.10 255.255.255.0
R3(config-if)#no shutdown
R3(config)#ip route 0.0.0.0 0.0.0.0 192.168.0.1

R1配置:

aaa配置如下

R1(config)#aaa new-model
R1(config)#aaa authentication login bdqn-authen local
R1(config)#aaa authorization network bdqn-author local
R1(config)#username bdqn secret cisco  //创建用户 加密

阶段1配置如下

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
R1(config-isakmp)#exit

阶段1.5配置如下

R1(config)#ip local pool bdqn-pool 192.168.1.200 192.168.1.210          
//创建地址池
R1(config)#ip access-list extended split-acl
R1(config-ext-nacl)#permit ip 192.168.0.0 0.0.0.255 any 
R1(config-ext-nacl)#exit

创建组策略如下

R1(config)#crypto isakmp client configuration group test-group
R1(config-isakmp-group)#key 123456
R1(config-isakmp-group)#pool bdqn-pool
R1(config-isakmp-group)#dns 192.168.0.10
R1(config-isakmp-group)#acl split-acl
R1(config-isakmp-group)#split-dns bdqn.com
R1(config-isakmp-group)#exit

配置动态Map

R1(config)#crypto ipsec transform-set bdqn-set esp-3des esp-sha-hmac  
R1(cfg-crypto-trans)#exit
R1(config)#crypto dynamic-map bdqn-dymap 1
R1(config-crypto-map)#set transform-set bdqn-set
R1(config-crypto-map)#exit

R1(config)#crypto map bdqn-stamap 1000 ipsec-isakmp dynamic bdqn-dymap
R1(config)#crypto map bdqn-stamap client authentication list bdqn-authen
R1(config)#crypto map bdqn-stamap isakmp authorization list bdqn-author
R1(config)#crypto map bdqn-stamap client configuration address respond 
//用于让客户端先发起连接

R1(config)#int f0/1
R1(config-if)#crypto map bdqn-stamap
//应用到外接口

安装虚拟专用网的客户端

技术图片

技术图片

技术图片

技术图片

技术图片

第一和第二个框位描述信息随便填,
第三个框写R1外接口的iP
下面写组策略的用户名和密码,输入两遍密码

技术图片

输入aaa的账号密码

技术图片

验证 用虚拟机ping

技术图片

如果把R1换为防火墙

其他配置都一样

在防火墙上配置如下:

进入外接口:nameif outside
进入内接口:nameif inside
ciscoasa(config)# route outside 0 0 200.0.0.2 //防火墙走默认路由

ciscoasa(config)# username bdqn password 123456
ciscoasa(config)# crypto isakmp enable outside
ciscoasa(config)# crypto isakmp policy 10
ciscoasa(config-isakmp-policy)# encryption 3des 
ciscoasa(config-isakmp-policy)# hash sha 
ciscoasa(config-isakmp-policy)# authentication pre-share 
ciscoasa(config-isakmp-policy)# group 2
ciscoasa(config-isakmp-policy)# exit
ciscoasa(config)# ip local pool bdqn-pool 192.168.1.200-192.168.1.210
ciscoasa(config)# access-list split-acl permit ip 192.168.0.0 255.255.255.0 any
ciscoasa(config)# group-policy test-group internal 
ciscoasa(config)# group-policy test-group attributes
ciscoasa(config-group-policy)# split-tunnel-policy tunnelspecified 
ciscoasa(config-group-policy)# split-tunnel-network-list value split-acl
ciscoasa(config-group-policy)# exit
ciscoasa(config)# tunnel-group bdqn-group type ipsec-ra 
ciscoasa(config)# tunnel-group bdqn-group general-attributes
ciscoasa(config-tunnel-general)# default-group-policy test-group
ciscoasa(config-tunnel-general)# exit
ciscoasa(config)# tunnel-group bdqn-group ipsec-attributes
ciscoasa(config-tunnel-ipsec)# pre-shared-key bdqn-key
ciscoasa(config-tunnel-ipsec)# exit
ciscoasa(config)# crypto ipsec transform-set bdqn-set esp-3des esp-sha-hmac 
ciscoasa(config)# crypto dynamic-map bdqn-dymap 1 set  transform-set bdqn-set
ciscoasa(config)# crypto map bdqn-stamap 1000 ipsec-isakmp dynamic bdqn-dymap
ciscoasa(config)# crypto map bdqn-stamap int outside

远程访问虚拟专用网------EASY虚拟专用网

标签:允许   建立连接   就是   分离   tun   访问内网   用户服   pool   没有   

原文地址:https://blog.51cto.com/14400213/2449509

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!