如何配置 CISCO ASA 以支持 OS X VPN 客户端

如何配置 CISCO ASA 以支持 OS X VPN 客户端

鉴于 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 用户也需要这样做。)

相关内容