2009年5月22日星期五

Cisco ASA Web VPN 配置详解

zyxa-asa5510(config)# show ver

Cisco Adaptive Security Appliance Software Version 8.0(4)
Device Manager Version 6.1(3)

Compiled on Thu 07-Aug-08 20:53 by builders
System image file is "disk0:/asa804-k8.bin"
Config file at boot was "startup-config"

zyxa-asa5510 up 2 hours 14 mins

Hardware: ASA5510, 256 MB RAM, CPU Pentium 4 Celeron 1600 MHz
Internal ATA Compact Flash, 256MB
BIOS Flash M50FW080 @ 0xffe00000, 1024KB

Encryption hardware device : Cisco ASA-55x0 on-board accelerator (revision 0x0)
Boot microcode : CN1000-MC-BOOT-2.00
SSL/IKE microcode: CNLite-MC-SSLm-PLUS-2.03
IPSec microcode : CNlite-MC-IPSECm-MAIN-2.05
0: Ext: Ethernet0/0 : address is 0023.5e56.6554, irq 9
1: Ext: Ethernet0/1 : address is 0023.5e56.6555, irq 9
2: Ext: Ethernet0/2 : address is 0023.5e56.6556, irq 9
3: Ext: Ethernet0/3 : address is 0023.5e56.6557, irq 9
4: Ext: Management0/0 : address is 0023.5e56.6553, irq 11
5: Int: Not used : irq 11
6: Int: Not used : irq 5

Licensed features for this platform:
Maximum Physical Interfaces : Unlimited
Maximum VLANs : 50
Inside Hosts : Unlimited
Failover : Disabled
VPN-DES : Enabled
VPN-3DES-AES : Disabled
Security Contexts : 0
GTP/GPRS : Disabled
VPN Peers : 250
WebVPN Peers : 2
AnyConnect for Mobile : Disabled
AnyConnect for Linksys phone : Disabled
Advanced Endpoint Assessment : Disabled
UC Proxy Sessions : 2

This platform has a Base license.

Serial Number: JMX1250L26R
Running Activation Key: 0xf730e04b 0x5c75460f 0xc09149b4 0x99dc5cc0 0x8a3a33b4
Configuration register is 0x1
Configuration last modified by enable_15 at 05:10:01.499 UTC Fri May 22 2009


实验环境如拓朴图。


在做实验之前让我们先来了解一下SSL VPN。
  目前市场上VPN产品很多,而且技术各异,就比如传统的 IPSec VPN 来讲, SSL 能让公司实现更多远程用户在不同地点接入,实现更多网络资源访问,且对客户端设备要求低,因而降低了配置和运行支撑成本。很多企业用户采纳 SSL VPN 作为远程安全接入技术,主要看重的是其接入控制功能。
SSL VPN 提供增强的远程安全接入功能。 IPSec VPN 通过在两站点间创建隧道提供直接(非代理方式)接入,实现对整个网络的透明访问;一旦隧道创建,用户 PC 就如同物理地处于企业 LAN 中。这带来很多安全风险,尤其是在接入用户权限过大的情况下。 SSL VPN 提供安全、可代理连接,只有经认证的用户才能对资源进行访问,这就安全多了。 SSL VPN 能对加密隧道进行细分,从而使得终端用户能够同时接入 Internet 和访问内部企业网资源,也就是说它具备可控功能。另外, SSL VPN 还能细化接入控制功能,易于将不同访问权限赋予不同用户,实现伸缩性访问;这种精确的接入控制功能对远程接入 IPSec VPN 来说几乎是不可能实现的。
SSL VPN 基本上不受接入位置限制,可以从众多 Internet 接入设备、任何远程位置访问网络资源。 SSL VPN 通信基于标准 TCP/UDP 协议传输,因而能遍历所有 NAT 设备、基于代理的防火墙和状态检测防火墙。这使得用户能够从任何地方接入,无论是处于其他公司网络中基于代理的防火墙之后,或是宽带连接中。 IPSec VPN 在稍复杂的网络结构中难于实现,因为它很难实现防火墙和 NAT 遍历,无力解决 IP 地址冲突。另外, SSL VPN 能实现从可管理企业设备或非管理设备接入,如家用 PC 或公共 Internet 接入场所,而 IPSec VPN 客户端只能从可管理或固定设备接入。随着远程接入需求的不断增长,远程接入 IPSec VPN 在访问控制方面受到极大挑战,而且管理和运行支撑成本较高,它是实现点对点连接的最佳解决方案,但要实现任意位置的远程安全接入, SSL VPN 要理想得多。
SSL VPN 不需要复杂的客户端支撑,这就易于安装和配置,明显降低成本。 IPSec VPN 需要在远程终端用户一方安装特定设备,以建立安全隧道,而且很多情况下在外部(或非企业控制)设备中建立隧道相当困难。另外,这类复杂的客户端难于升级,对新用户来说面临的麻烦可能更多,如系统运行支撑问题、时间开销问题、管理问题等。 IPSec 解决方案初始成本较低,但运行支撑成本高。如今,已有 SSL 开发商能提供网络层支持,进行网络应用访问,就如同远程机器处于 LAN 中一样;同时提供应用层接入,进行 Web 应用和许多客户端 / 服务器应用访问。

了解了上述基本因素之后,下面我们将开始实验:



第一步,ASA的基本配置:

Archasa(config)# int e0/0

Archasa(config-if)# ip add 192.168.0.1 255.255.255.0

Archasa(config-if)# nameif outside

Archasa(config-if)# no shut

Archasa(config-if)# exit

Archasa(config)# int e0/1

Archasa(config-if)# ip add 172.20.59.10 255.255.255.0

Archasa(config-if)# nameif inside

Archasa(config-if)# no shut

Archasa(config-if)# exit

Archasa(config)# webvpn

Archasa(config-webvpn)# enable outside

Archasa(config-webvpn)# svc image disk0:/sslclient-win-1.1.2.169.pkg

Archasa(config-webvpn)# svc enable

#上述配置是在外网口上启动WEBVPN,并同时启动SSL VPN功能

2、SSL VPN配置准备工作

#创建SSL VPN用户地址池

Archasa(config)# ip local pool ssl-user 10.10.10.1-10.10.10.50

#配置SSL VPN数据流不做NAT翻译

Archasa(config)# access-list go-vpn permit ip 172.20.50.0 255.255.255.0 10.10.10.0

255.255.255.0

Archasa(config)# nat (inside) 0 access-list go-vpn



3、WEB VPN隧道组与策略组的配置

#创建名为mysslvpn-group-policy的组策略

Archasa(config)# group-policy mysslvpn-group-policy internal

Archasa(config)# group-policy mysslvpn-group-policy attributes

Archasa(config-group-policy)# vpn-tunnel-protocol webvpn

Archasa(config-group-policy)# webvpn

#在组策略中启用SSL VPN

Archasa(config-group-webvpn)# svc enable

Archasa(config-group-webvpn)# exit

Archasa(config-group-policy)# exit

Archasa(config)#

#创建SSL VPN用户

Archasa(config-webvpn)# username test password woaicisco

#把mysslvpn-group-plicy策略赋予用户test

Archasa(config)# username test attributes

Archasa(config-username)# vpn-group-policy mysslvpn-group-policy

Archasa(config-username)# exit

Archasa(config)# tunnel-group mysslvpn-group type webvpn

Archasa(config)# tunnel-group mysslvpn-group general-attributes

#使用用户地址池

Archasa(config-tunnel-general)# address-pool ssl-user

Archasa(config-tunnel-general)# exit

Archasa(config)# tunnel-group mysslvpn-group webvpn-attributes

Archasa(config-tunnel-webvpn)# group-alias group2 enable

Archasa(config-tunnel-webvpn)# exit

Archasa(config)# webvpn

Archasa(config-webvpn)# tunnel-group-list enable

4、配置SSL VPN隧道分离

#注意,SSL VPN隧道分离是可选取的,可根据实际需求来做。

#这里的源地址是ASA的INSIDE地址,目标地址始终是ANY

Archasa(config)# access-list split-ssl extended permit ip 10.10.1.0 255.255.255.0 any

Archasa(config)# group-policy mysslvpn-group-policy attributes

Archasa(config-group-policy)# split-tunnel-policy tunnelspecified

Archasa(config-group-policy)# split-tunnel-network-list value split-ssl

基本上整个配置就完成了,下面可以进行测试:

在浏览器中输入https://192.168.0.1访问WEB VPN,在随后弹出的对话框中输入用户名和密码单击登陆。

这时系统会弹出要求安装SSL VPN CLIENT程序,单击“YES”,系统自动安装并连接SSLVPN,在SSLVPN连通之后在您的右下角的任务栏上会出现一个小钥匙状,你可以双击打开查看其状态。

草率此就,有不对的地方请予以指正,谢谢!

0 评论: