背景:
我正在设置一组基本的客户端规则,限制出站SMB访问只能访问某些服务器.假设从黑名单开始并需要将所需的通信列入白名单.
服务器端已设置并正常运行,没有任何问题.使用旧版IPSec接口服务器端和Windows高级防火墙客户端配置设置.
第一次身份验证设置为Kerberos(计算机)或计算机证书.双方都使用“请求入站和出站”作为其身份验证模式.
双方都使用’request ipsec’模型,因为可能有非IPSec流量传递给其他设备.
客户端上的Windows高级防火墙规则完全正常运行,直到我定义“仅允许连接到这些计算机”选项.
wireshark捕获显示ISAKMP和ESP流量,我在安全关联列表中看到主模式和快速模式关联.
编辑:
根据MS文档,我已启用以下日志记录来调试我的连接问题.
auditpol /set /subcategory:"Filtering Platform Packet Drop" /success:enable /failure:enable auditpol /set /subcategory:"Filtering Platform Connection" /success:enable /failure:enable auditpol /set /subcategory:"IPsec Driver" /success:enable /failure:enable auditpol /set /subcategory:"IPsec Main Mode" /success:enable /failure:enable auditpol /set /subcategory:"IPsec Quick Mode" /success:enable /failure:enable auditpol /set /subcategory:"IPsec Extended Mode" /success:enable /failure:enable
这仅表示给定的服务 – 我尝试了SMB和RDP – 被阻止.我没有看到任何其他阻塞的流量.
编辑:
当我启用SMB或RDP规则时,看起来绝对没有流量传递到相关服务器. Wireshark什么都没显示.看起来像几年前有一个这样的情况here但没有解决方案.
Windows过滤平台似乎在应该允许时错误地阻止此流量.
The Windows Filtering Platform has blocked a connection. Application Information: Process ID: 2468 Application Name: \device\harddiskvolume1\windows\system32\mstsc.exe Network Information: Direction: Outbound Source Address: 192.168.20.54 Source Port: 49332 Destination Address: 192.168.100.50 Destination Port: 3389 Protocol: 6
1)您提到客户端正在使用具有高级安全IPsec策略的Windows防火墙,但服务器端正在使用旧版IPsec.服务器是否运行旧版本的Windows或传统IPsec策略配置的原因是什么?我不是说这不应该工作(因为你试图做机器验证,而不是用户身份验证),但它可能会使事情变得复杂.服务器是否也可以配置高级安全策略?您是否可以尝试使用具有高级策略和Kerberos v5计算机身份验证的服务器来查看会发生什么?
2)为了使您的方案工作,IPsec连接必须使用Kerberos V5身份验证(证书身份验证将无效!).您提到您的策略可能允许证书连接,因此您可能希望检查主模式安全关联,并确保它们确实是使用Kerberos而不是cert建立的.
3)在防火墙规则上配置“仅允许连接到这些计算机”设置有几种不同的方法.默认情况下,需要对您的IPsec连接进行身份验证并保护其完整性…而其他设置允许您确保它也是加密的或者是空封装(仅经过身份验证,不受完整性保护).如果您的客户端/服务器是Windows 7,那么您可能需要尝试使用null封装选项来查看是否有助于缩小问题范围.
4)我通常建议从WFP捕获的日志(netsh wfp capture start)调试防火墙丢弃的流量,因为这会显示丢失流量的确切过滤器.在这种情况下,日志可能不会非常有趣,因为它可能是默认的出站块过滤器阻止您的连接,因为您不符合安全允许规则(由于某种原因).日志将显示正在删除的连接,但不会解释您为什么不符合允许规则.也许它值得一试…… http://technet.microsoft.com/en-us/library/ff428146(v=ws.10).aspx