具有来自MacOS / iOS的PEAPauthentication的L2TP

在最近的安全build议之后,我正在重新configuration我们的VPN服务器并遇到了麻烦。

我们将Windows 2008 R2服务器用于VPN服务,在同一台服务器上运行RRAS和NPS,并将其configuration为对所有隧道types(PPTP,L2TP,IKEv2,SSTP)使用PEAP-EAP-MSCHAPV2authentication,以前允许普通的MSCHAPv2 。

但是苹果产品,MacOS和iOS在这个改变之后不能连接到VPN。 我尝试安装PEAP事务中使用的根证书,但没有更改。

有谁知道MacOS / iOS是否支持PPTP / L2TP中的PEAP-EAP-MSCHAPv2身份validation? 如果是这样的任何提示,使其工作? (我知道WPA / WPA2企业支持PEAP-EAP-MSCHAPv2)

问候。

我还没有findMac OS X不支持PEAP-EAP-MSCHAPv2的官方确认,但是我也无法使其正常工作(Windows SBS 2003 R2和带有Mac OS X 10.8客户端的L2TP-over-ESP) )。 我甚至没有看到在IAS日志文件中的login尝试。 (安全事件日志充满了各种各样的东西,所以我没有仔细阅读)。我确信我至less确信ISAKMP和IPsec ESP正在通过检查/var/log/racoon.log在Mac上,我看到类似于以下的条目(这里的198.51.100.200是Mac和192.0.2.100是SBS):

DEBUG: agreed on pre-shared key auth. INFO: NAT detected: ME PEER INFO: ISAKMP-SA established 198.51.100.200[4500]-192.0.2.100[4500] spi:0123456789abcdef:0123456789abcdef INFO: NAT detected -> UDP encapsulation (ENC_MODE 2->61444). INFO: IPsec-SA established: ESP/Transport 192.0.2.100[4500]->198.51.100.200[4500] spi=01234567(0x012345) INFO: IPsec-SA established: ESP/Transport 198.51.100.200[4500]->192.0.2.100[4500] spi=89abcdef(0x6789ab) 

我也看了/var/log/ppp.log,里面有这样的东西:

 IPSec connection started IPSec phase 1 client started IPSec phase 1 server replied IPSec phase 2 started IPSec phase 2 established IPSec connection established L2TP sent SCCRQ L2TP received SCCRP L2TP sent SCCCN L2TP sent ICRQ L2TP received ICRP L2TP sent ICCN L2TP connection established. 

这将重新显示racoon.log中显示的成功的IPsec连接,并添加一个成功的L2TP连接(这很有道理 – L2TP本身是未经validation的)。 接下来,苹果电脑试图通过L2TPbuild立一个PPP连接,正如我们所料,这是我开始看到我不明白的错误:

 lcp_reqci: rcvd unknown option 13 lcp_reqci: rcvd unknown option 23 lcp_reqci: returning CONFREJ. 

其次是:

 sent [LCP ConfRej id=0x0... rcvd [LCP ConfAck id=0x1... rcvd [LCP ConfReq id=0x1 <mru 1400> <auth eap>... lcp_reqci: returning CONFNAK. sent [LCP ConfNak id=0x1 <auth chap MS-v2>] rcvd [LCP ConfReq id=0x2 <mru 1400> <auth eap>... lcp_reqci: returning CONFNAK. sent [LCP ConfNak id=0x2 <auth chap MS-v2>] rcvd [LCP ConfReq id=0x3 <mru 1400> <auth eap>... lcp_reqci: returning CONFNAK. sent [LCP ConfNak id=0x3 <auth chap MS-v2>] rcvd [LCP ConfReq id=0x4 <mru 1400> <auth eap>... lcp_reqci: returning CONFNAK. sent [LCP ConfNak id=0x4 <auth chap MS-v2>] rcvd [LCP ConfReq id=0x5 <mru 1400> <auth eap>... lcp_reqci: returning CONFNAK. sent [LCP ConfNak id=0x5 <auth chap MS-v2>] rcvd [LCP ConfReq id=0x6 <mru 1400> <auth eap>... lcp_reqci: returning CONFREJ. sent [LCP ConfRej id=0x6 <auth eap>] rcvd [LCP TermReq id=0x7... sent [LCP TermAck id=0x7] Fatal signal 6 

注意上面的'auth eap'和'auth chap MS-v2'。

我将尝试退出对远程访问策略所做的一些更改:

  • 重新启用所有encryptiontypes(无/基本/强/最强,只有最强)
  • 删除所有EAPtypes并仅启用MSCHAPv2(受保护的EAP [PEAP] / EAP-MSCHAPv2)

鉴于整个交易所都受到IPsec的保护,我想知道我的实际风险。 如果有人对客户端进行了攻击,使他们可以访问与IPsec一起使用的PSK或证书,那么我不确定是否只有PEAP才能validationPPP连接是否重要(至less对于我的威胁模型而言)。

更新:我在RRAS服务器属性和控制VPN访问的IAS策略中重新启用了MSCHAPv2,并启用了所有encryptiontypes。 进行这些更改后,Mac能够再次使用MSCHAPv2通过PPP进行身份validation,从而再次连接到IPSec上的L2TP。 我在IAS策略中打开和closures了PEAP,只是为了确认PEAP不起作用,事实上,在启用PEAP(但MSCHAPv2禁用)的情况下,我现在收到身份validation失败消息,Mac OS Xlogging下列内容:

 MS-CHAP authentication failed: E=649 No dialin permission sent [LCP TermReq id=0x2 "Failed to authenticate ourselves to peer"] 

我认为之前更模糊的行为是由于我禁用了RRAS本身以及IAS策略中的MSCHAPv2,而我当前的testingconfiguration在RRAS中启用了MSCHAPv2,但在IAS策略中已禁用。