CiscoASAWebVPN配置详解实验环境如拓朴图。在做实验之前让我们先来了解一下SSLVPN。目前市场上VPN产品很多,而且技术各异,就比如传统的IPSecVPN来讲,SSL能让公司实现更多远程用户在不同地点接入,实现更多网络资源访问,且对客户端设备要求低,因而降低了配置和运行支撑成本。很多企业用户采纳SSLVPN作为远程安全接入技术,主要看重的是其接入控制功能。SSLVPN提供增强的远程安全接入功能。IPSecVPN通过在两站点间创建隧道提供直接(非代理方式)接入,实现对整个网络的透明访问;一旦隧道创建,用户PC就如同物理地处于企业LAN中。这带来很多安全风险,尤其是在接入用户权限过大的情况下。SSLVPN提供安全、可代理连接,只有经认证的用户才能对资源进行访问,这就安全多了。SSLVPN能对加密隧道进行细分,从而使得终端用户能够同时接入Internet和访问内部企业网资源,也就是说它具备可控功能。另外,SSLVPN还能细化接入控制功能,易于将不同访问权限赋予不同用户,实现伸缩性访问;这种精确的接入控制功能对远程接入IPSecVPN来说几乎是不可能实现的。SSLVPN基本上不受接入位置限制,可以从众多Internet接入设备、任何远程位置访问网络资源。SSLVPN通信基于标准TCP/UDP协议传输,因而能遍历所有NAT设备、基于代理的防火墙和状态检测防火墙。这使得用户能够从任何地方接入,无论是处于其他公司网络中基于代理的防火墙之后,或是宽带连接中。IPSecVPN在稍复杂的网络结构中难于实现,因为它很难实现防火墙和NAT遍历,无力解决IP地址冲突。另外,SSLVPN能实现从可管理企业设备或非管理设备接入,如家用PC或公共Internet接入场所,而IPSecVPN客户端只能从可管理或固定设备接入。随着远程接入需求的不断增长,远程接入IPSecVPN在访问控制方面受到极大挑战,而且管理和运行支撑成本较高,它是实现点对点连接的最佳解决方案,但要实现任意位置的远程安全接入,SSLVPN要理想得多。SSLVPN不需要复杂的客户端支撑,这就易于安装和配置,明显降低成本。IPSecVPN需要在远程终端用户一方安装特定设备,以建立安全隧道,而且很多情况下在外部(或非企业控制)设备中建立隧道相当困难。另外,这类复杂的客户端难于升级,对新用户来说面临的麻烦可能更多,如系统运行支撑问题、时间开销问题、管理问题等。IPSec解决方案初始成本较低,但运行支撑成本高。如今,已有SSL开发商能提供网络层支持,进行网络应用访问,就如同远程机器处于LAN中一样;同时提供应用层接入,进行Web应用和许多客户端/服务器应用访问。了解了上述基本因素之后,下面我们将开始实验:第一步,ASA的基本配置:Archasa(config)#inte0/0Archasa(config-if)#ipadd192.168.0.1255.255.255.0Archasa(config-if)#nameifoutsideArchasa(config-if)#noshutArchasa(config-if)#exitArchasa(config)#inte0/1Archasa(config-if)#ipadd172.20.59.10255.255.255.0Archasa(config-if)#nameifinsideArchasa(config-if)#noshutArchasa(config-if)#exitArchasa(config)#webvpnArchasa(config-webvpn)#enableoutsideArchasa(config-webvpn)#svcimagedisk0:/sslclient-win-1.1.3.173.pkgArchasa(config-webvpn)#svcenable#上述配置是在外网口上启动WEBVPN,并同时启动SSLVPN功能2、SSLVPN配置准备工作#创建SSLVPN用户地址池Archasa(config)#iplocalpoolssl-pool10.10.10.1-10.10.10.50#配置SSLVPN数据流不做NAT翻译Archasa(config)#access-listgo-vpnpermitip172.20.50.0255.255.255.010.10.10.0255.255.255.0Archasa(config)#nat(inside)0access-listgo-vpn3、WEBVPN隧道组与策略组的配置#创建名为mysslvpn-group-policy的组策略Archasa(config)#group-policymysslvpn-group-policyinternalArchasa(config)#group-policymysslvpn-group-policyattributesArchasa(config-group-policy)#vpn-tunnel-protocolwebvpnArchasa(config-group-policy)#webvpn#在组策略中启用SSLVPNArchasa(config-group-webvpn)#svcenableArchasa(config-group-webvpn)#exitArchasa(config-group-policy)#exitArchasa(config)##创建SSLVPN用户Archasa(config-webvpn)#usernametestpasswordwoaicisco#把mysslvpn-group-plicy策略赋予用户testArchasa(config)#usernametestattributesArchasa(config-username)#vpn-group-policymysslvpn-group-policyArchasa(config-username)#exitArchasa(config)#tunnel-groupmysslvpn-grouptypewebvpnArchasa(config)#tunnel-groupmysslvpn-groupgeneral-attributes#使用用户地址池Archasa(config-tunnel-general)#address-poolssl-poolArchasa(config-tunnel-general)#exitArchasa(config)#tunnel-groupmysslvpn-groupwebvpn-attributesArchasa(config-tunnel-webvpn)#group-aliasgroup2enableArchasa(config-tunnel-webvpn)#exitArchasa(config)#webvpnArchasa(config-webvpn)#tunnel-group-listenable4、配置SSLVPN隧道分离#注意,SSLVPN隧道分离是可选取的,可根据实际需求来做。#这里的源地址是ASA的INSIDE地址,目标地址始终是ANYArchasa(config)#access-listsplit-sslextendedpermitip10.10.1.0255.255.255.0anyArchasa(config)#group-policymysslvpn-group-policyattributesArchasa(config-group-policy)#split-tunnel-policytunnelspecifiedArchasa(config-group-policy)#split-tunnel-network-listvaluesplit-ssl基本上整个配置就完成了,下面可以进行测试:在浏览器中输入,在随后弹出的对话框中输入用户名和密码单击登陆。这时系统会弹出要求安装SSLVPNCLIENT程序,单击“YES”,系统自动安装并连接SSLVPN,在SSLVPN连通之后在您的右下角的任务栏上会出现一个小钥匙状,你可以双击打开查看其状态。草率此就,有不对的地方请予以指正,谢谢!