鉴于 OS X 现在(本机)支持 CISCO IPSec VPN 连接,我想知道远程端的 VPN 配置有何要求?
我评估了许多 CISCO 设备(较小范围的,例如 ASA 5505 路由器,以及 RV120W 和 WRVS4400N 设备),并且没有太多运气让它们通过内置客户端与 VPN 通信,然而,当我使用诸如 Lobotomo 的 IPSecuritas 之类的产品时,我能够毫无问题地建立连接。
那么,实现此功能的理想配置是什么?老实说,我更希望不必在我的系统上安装 VPN 客户端,而只需使用内置客户端即可。
答案1
由于苹果声称思科 VPN 是原生支持的,并且有详细说明这里,我猜测是 VPN 配置问题或不匹配。
这可能是将远程访问 VPN 设置与 OSX 客户端匹配的问题,而不是相反。
答案2
根据我的经验,您必须在 ASA 上创建一个组并为其分配密码。然后将用户添加到此组。
在 OSX 中,帐户名和密码属于用户。然后在“身份验证设置”下输入您在 ASA 上配置的组的密码(共享密钥),并在“组名”字段中输入组的名称。
答案3
我从我的 ASA (5525) 中复制并粘贴了相关配置,希望这些配置对 AnyConnect 和 MacOS 原生客户端都适用。我删除了本地化信息,因此可能在过程中打错了一些内容。希望我没有遗漏任何内容。(请留意! ***
评论。)
! *** This is a pool of IPs that will be allocated to VPN clients
ip local pool Pool_VPN 10.255.255.10-10.255.255.250 mask 255.255.255.0
! *** These are the networks accessible via the VPN
access-list Split_Tunnel standard permit 10.0.0.0 255.0.0.0
access-list Split_Tunnel standard permit 172.16.0.0 255.240.0.0
access-list Split_Tunnel standard permit 192.168.0.0 255.255.0.0
webvpn
! *** See below for the content of this file
anyconnect profiles ExampleVPN disk0:/examplevpn.xml
group-policy GP_VPN internal
group-policy GP_VPN attributes
wins-server none
! *** Replace with your internal DNS server
dns-server value 192.168.0.255
vpn-tunnel-protocol ikev1 ikev2 l2tp-ipsec ssl-client ssl-clientless
password-storage enable
group-lock value TG_VPN
split-tunnel-policy tunnelspecified
ipv6-split-tunnel-policy tunnelspecified
split-tunnel-network-list value Split_Tunnel
! *** Replace with your internal DNS zone
default-domain value example.com
split-dns none
split-tunnel-all-dns disable
secure-unit-authentication disable
! *** Replace with the FQDN of your ASA
gateway-fqdn value asa.example.com
address-pools value Pool_VPN
client-access-rule none
webvpn
anyconnect profiles value ExampleVPN type user
anyconnect ask none default anyconnect
tunnel-group TG_VPN type remote-access
tunnel-group TG_VPN general-attributes
address-pool Pool_VPN
default-group-policy GP_VPN
tunnel-group TG_VPN webvpn-attributes
group-alias TG_VPN enable
tunnel-group TG_VPN ipsec-attributes
! *** Replace with your own shared secret
ikev1 pre-shared-key ThisIsASharedSecret
tunnel-group-map default-group IPSecProfile
该文件disk0:/examplevpn.xml
包含:
<AnyConnectProfile xmlns="http://schemas.xmlsoap.org/encoding/">
<ServerList>
<HostEntry>
<HostName>asa.example.com</HostName>
<HostAddress>198.51.100.1</HostAddress>
<PrimaryProtocol>IPsec</PrimaryProtocol>
</HostEntry>
</ServerList>
</AnyConnectProfile>
替换为您的 ASA 的外部 FQDN 和 IP 地址。
然后设置您的 MacOS“Cisco IPSec”客户端以使用与“ikev1 pre-shared-key”行中找到的相同共享密钥,并且组名称为隧道组,在本例中为“TG_VPN”。用户名和密码在 ASA 中本地定义,如下所示:
username user password ***** encrypted privilege 15
我猜测它使用本地帐户的原因是:
user-identity default-domain LOCAL
但是如果您可以让本地用户使用它,那么您可以根据需要尝试以不同的方式设置身份验证。
我要说的是,我从一个已经可以正常工作的 AnyConnect 配置开始,然后添加了以下几行:
tunnel-group TG_VPN ipsec-attributes
ikev1 pre-shared-key ThisIsASharedSecret
使其与 MacOS 客户端配合使用。(我还必须扩展拆分隧道网络访问列表,但我怀疑 AnyConnect 用户也需要这样做。)