此产品的文档集力求使用非歧视性语言。在本文档集中,非歧视性语言是指不隐含针对年龄、残障、性别、种族身份、族群身份、性取向、社会经济地位和交叉性的歧视的语言。由于产品软件的用户界面中使用的硬编码语言、基于 RFP 文档使用的语言或引用的第三方产品使用的语言,文档中可能无法确保完全使用非歧视性语言。 深入了解思科如何使用包容性语言。
思科采用人工翻译与机器翻译相结合的方式将此文档翻译成不同语言,希望全球的用户都能通过各自的语言得到支持性的内容。 请注意:即使是最好的机器翻译,其准确度也不及专业翻译人员的水平。 Cisco Systems, Inc. 对于翻译的准确性不承担任何责任,并建议您总是参考英文原始文档(已提供链接)。
本文档介绍如何允许Cisco VPN客户端或Cisco AnyConnect安全移动客户端在通过隧道连接到思科自适应安全设备(ASA)5500系列或ASA 5500-X系列时只访问其本地LAN。此配置允许Cisco VPN客户端或Cisco AnyConnect安全移动客户端通过IPsec、安全套接字层(SSL)或互联网密钥交换版本2(IKEv2)安全访问企业资源,并且仍允许客户端执行诸如打印客户端所在位置的活动。如果允许,要发送到 Internet 的流量仍通过隧道传输到 ASA。
注意:此配置并非用于分割隧道,在分割隧道配置中,客户端可以在连接到 ASA 或 PIX 时对 Internet 进行未加密访问。请参阅PIX/ASA 7.x:在ASA上允许VPN客户端的拆分隧道配置示例,了解有关如何在ASA上配置拆分隧道的信息。
本文档假定 ASA 上已存在能够正常运行的远程访问 VPN 配置。
如果尚未配置Cisco VPN客户端,请参阅使用ASDM将PIX/ASA 7.x作为远程VPN服务器的配置示例。
如果尚未配置Cisco AnyConnect安全移动客户端,请参阅Cisco AnyConnect SSL VPN客户端配置示例的ASA 8.x VPN访问。
本文档中的信息基于以下软件和硬件版本:
本文档中的信息都是基于特定实验室环境中的设备编写的。本文档中使用的所有设备最初均采用原始(默认)配置。如果您使用的是真实网络,请确保您已经了解所有命令的潜在影响。
客户端位于典型的小型办公室/家庭办公室(SOHO)网络上,通过互联网连接到主办公室。
与所有互联网流量都未加密发送的传统分割隧道方案不同,当您为VPN客户端启用本地LAN访问时,它允许这些客户端仅与其所在网络上的设备进行未加密通信。例如,在从家连接到ASA时允许本地LAN访问的客户端可以打印到自己的打印机,但不能访问Internet,而无需先通过隧道发送流量。
使用访问列表的目的是按分割隧道在 ASA 上的相似配置方式允许本地 LAN 访问。不过,在此种情况下,访问列表定义不应当加密哪些网络,而不是定义应当 加密哪些网络。并且,与分割隧道方案不同的是,此列表中的实际网络不必是已知网络。相反,ASA提供默认网络0.0.0.0/255.255.255.255,该网络被理解为指客户端的本地LAN。
注意:当客户端连接并配置为用于本地LAN访问时,您无法在本地LAN上按名称打印或浏览。但是,可以按 IP 地址浏览或打印。有关详细信息以及此情况的解决方法,请参阅本文档的故障排除部分。
完成以下任务,以便在连接到ASA时允许思科VPN客户端或思科AnyConnect安全移动客户端访问其本地LAN:
在ASDM中完成以下步骤,以允许VPN客户端在连接到ASA时访问本地LAN:
您可以在 ASA CLI 中完成以下步骤(而不是使用 ASDM),以便允许 VPN 客户端在连接到 ASA 时访问本地 LAN:
ciscoasa>enable
Password:
ciscoasa#configure terminal
ciscoasa(config)#
ciscoasa(config)#access-list Local_LAN_Access remark Client Local LAN Access
ciscoasa(config)#access-list Local_LAN_Access standard permit host 0.0.0.0
警告:由于ASA软件版本8.x到9.x之间的ACL语法发生更改,因此不再允许此ACL,管理员在尝试配置时将看到以下错误消息:
rtpvpnoutbound6(config)# access-list test standard permit host 0.0.0.0
错误:IP地址无效
唯一允许的是:
rtpvpnoutbound6(config)# access-list test standard permit any4
这是已知问题,已由Cisco Bug ID CSCut3131解决。请升级到包含此Bug修复的版本,以便能够配置本地LAN访问。
ciscoasa(config)#group-policy hillvalleyvpn attributes
ciscoasa(config-group-policy)#
ciscoasa(config-group-policy)#split-tunnel-policy excludespecified
ciscoasa(config-group-policy)#split-tunnel-network-list value Local_LAN_Access
ciscoasa(config)#tunnel-group hillvalleyvpn general-attributes
ciscoasa(config-tunnel-ipsec)# default-group-policy hillvalleyvpn
ciscoasa(config-group-policy)#exit
ciscoasa(config)#exit
ciscoasa#
ciscoasa#copy running-config startup-config
Source filename [running-config]?
Cryptochecksum: 93bb3217 0f60bfa4 c36bbb29 75cf714a
3847 bytes copied in 3.470 secs (1282 bytes/sec)
ciscoasa#
要配置Cisco AnyConnect安全移动客户端,请参阅ASA 8.x的“使用SVC建立SSL VPN连接”部分:在 ASA 上允许 AnyConnect VPN 客户端使用分割隧道的配置示例)。
拆分排除隧道要求在AnyConnect客户端中启用AllowLocalLanAccess。所有拆分排除隧道都被视为本地LAN访问。要使用拆分隧道的排除功能,必须在AnyConnect VPN客户端首选项中启用AllowLocalLanAccess首选项。默认情况下,本地LAN访问处于禁用状态。
为了允许本地LAN访问,从而允许拆分 — 排除隧道,网络管理员可以在配置文件中启用它,或者用户可以在其首选项设置中启用它(请参阅下一节中的图像)。 为了允许本地LAN访问,如果在安全网关上启用了拆分隧道,则用户会选择允许本地LAN访问复选框,并使用拆分隧道策略排除指定策略进行配置。此外,如果允许本地LAN访问,则可以使用<LocalLanAccess UserControllable="配置VPN客户端配置文件true">true</LocalLanAccess>。
以下是您应在Cisco AnyConnect安全移动客户端的“首选项”(Preferences)选项卡中进行的选择,以允许本地LAN访问。
以下是如何使用XML配置VPN客户端配置文件的示例。
<?xml version="1.0" encoding="UTF-8"?>
<AnyConnectProfile xmlns="http://schemas.xmlsoap.org/encoding/"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://schemas.xmlsoap.org/encoding/ AnyConnectProfile.xsd">
<ClientInitialization>
<UseStartBeforeLogon UserControllable="true">false</UseStartBeforeLogon>
<AutomaticCertSelection UserControllable="true">false</AutomaticCertSelection>
<ShowPreConnectMessage>false</ShowPreConnectMessage>
<CertificateStore>All</CertificateStore>
<CertificateStoreOverride>false</CertificateStoreOverride>
<ProxySettings>Native</ProxySettings>
<AllowLocalProxyConnections>true</AllowLocalProxyConnections>
<AuthenticationTimeout>12</AuthenticationTimeout>
<AutoConnectOnStart UserControllable="true">false</AutoConnectOnStart>
<MinimizeOnConnect UserControllable="true">true</MinimizeOnConnect>
<LocalLanAccess UserControllable="true">true</LocalLanAccess>
<ClearSmartcardPin UserControllable="true">true</ClearSmartcardPin>
<IPProtocolSupport>IPv4,IPv6</IPProtocolSupport>
<AutoReconnect UserControllable="false">true
<AutoReconnectBehavior UserControllable="false">DisconnectOnSuspend
</AutoReconnectBehavior>
</AutoReconnect>
<AutoUpdate UserControllable="false">true</AutoUpdate>
<RSASecurIDIntegration UserControllable="false">Automatic
</RSASecurIDIntegration>
<WindowsLogonEnforcement>SingleLocalLogon</WindowsLogonEnforcement>
<WindowsVPNEstablishment>LocalUsersOnly</WindowsVPNEstablishment>
<AutomaticVPNPolicy>false</AutomaticVPNPolicy>
<PPPExclusion UserControllable="false">Disable
<PPPExclusionServerIP UserControllable="false"></PPPExclusionServerIP>
</PPPExclusion>
<EnableScripting UserControllable="false">false</EnableScripting>
<EnableAutomaticServerSelection UserControllable="false">false
<AutoServerSelectionImprovement>20</AutoServerSelectionImprovement>
<AutoServerSelectionSuspendTime>4</AutoServerSelectionSuspendTime>
</EnableAutomaticServerSelection>
<RetainVpnOnLogoff>false
</RetainVpnOnLogoff>
</ClientInitialization>
</AnyConnectProfile>
完成这些部分中的步骤以验证您的配置。
将Cisco AnyConnect安全移动客户端连接到ASA以验证配置。
当您从诊断和报告工具(DART)捆绑包中检查AnyConnect日志时,可以确定是否设置了允许本地LAN访问的参数。
******************************************
Date : 11/25/2011
Time : 13:01:48
Type : Information
Source : acvpndownloader
Description : Current Preference Settings:
ServiceDisable: false
CertificateStoreOverride: false
CertificateStore: All
ShowPreConnectMessage: false
AutoConnectOnStart: false
MinimizeOnConnect: true
LocalLanAccess: true
AutoReconnect: true
AutoReconnectBehavior: DisconnectOnSuspend
UseStartBeforeLogon: false
AutoUpdate: true
RSASecurIDIntegration: Automatic
WindowsLogonEnforcement: SingleLocalLogon
WindowsVPNEstablishment: LocalUsersOnly
ProxySettings: Native
AllowLocalProxyConnections: true
PPPExclusion: Disable
PPPExclusionServerIP:
AutomaticVPNPolicy: false
TrustedNetworkPolicy: Disconnect
UntrustedNetworkPolicy: Connect
TrustedDNSDomains:
TrustedDNSServers:
AlwaysOn: false
ConnectFailurePolicy: Closed
AllowCaptivePortalRemediation: false
CaptivePortalRemediationTimeout: 5
ApplyLastVPNLocalResourceRules: false
AllowVPNDisconnect: true
EnableScripting: false
TerminateScriptOnNextEvent: false
EnablePostSBLOnConnectScript: true
AutomaticCertSelection: true
RetainVpnOnLogoff: false
UserEnforcement: SameUserOnly
EnableAutomaticServerSelection: false
AutoServerSelectionImprovement: 20
AutoServerSelectionSuspendTime: 4
AuthenticationTimeout: 12
SafeWordSofTokenIntegration: false
AllowIPsecOverSSL: false
ClearSmartcardPin: true
******************************************
要测试VPN客户端在通过隧道连接到VPN头端时是否仍具有本地LAN访问,另一种方法是在Microsoft Windows命令行上使用ping命令。以下示例中,客户端的本地LAN为192.168.0.0/24,网络中存在另一台主机,其IP地址为192.168.0.3。
C:\>ping 192.168.0.3
Pinging 192.168.0.3 with 32 bytes of data:
Reply from 192.168.0.3: bytes=32 time<1ms TTL=255
Reply from 192.168.0.3: bytes=32 time<1ms TTL=255
Reply from 192.168.0.3: bytes=32 time<1ms TTL=255
Reply from 192.168.0.3: bytes=32 time<1ms TTL=255
Ping statistics for 192.168.0.3:
Packets: Sent = 4, Received = 4, Lost = 0 (0% loss),
Approximate round trip times in milli-seconds:
Minimum = 0ms, Maximum = 0ms, Average = 0ms
本部分提供了可用于对配置进行故障排除的信息。
当 VPN 客户端已连接且已针对本地 LAN 访问配置后,在本地 LAN 上无法按名称打印或浏览。可以使用以下两种选择方法来处理此情况:
192.168.0.3 SERVER1 192.168.0.4 SERVER2 192.168.0.5 SERVER3