有没有办法根据某些安全相关标准(例如是否存在病毒扫描程序和病毒定义)来阻止 VPN 连接?
在我们的例子中,我们有一个 Windows Server 2008 作为域控制器和 RRAS 服务器。我们还在每个客户端上运行 ESET NOD32 Business,安装由服务器推送。
有没有办法根据某些安全相关标准(例如是否存在病毒扫描程序和病毒定义)来阻止 VPN 连接?
在我们的例子中,我们有一个 Windows Server 2008 作为域控制器和 RRAS 服务器。我们还在每个客户端上运行 ESET NOD32 Business,安装由服务器推送。
您要问的是许多“网络访问保护”(NAP)产品的症结所在。就个人而言,我不认为像 NAP 这样的努力真的有什么用处,除了“保持诚实的计算机诚实”。
从根本上说,您依靠客户端计算机的可信度来“真实地”处理您的 NAP 服务器计算机的要求。您的服务器无法“证明”远程计算机正在运行给定程序。您实际上只是在接受那台远程计算机的“好话”。这就是 NAP 背后理念的致命缺陷——信任是错误的。
在保持网络安全方面,我认为最小特权原则是最重要的指导原则。了解并监控“阻塞点”和攻击媒介,更新操作系统和应用程序,仅在所有计算机(服务器、客户端等)上安装必要的软件,并及时了解安全公告。
如果一台机器上安装了一个可以“说服”本地防病毒软件等它没有被感染的 rootkit,那么 NAP 将无济于事。我认为通过最小化攻击面和基于监控流量和行为检测攻击可以获得更多收益。
就 VPN 用户而言,我将使用 VPN 将来自客户端的入站协议限制为已知的“允许集”——用于 Outlook 客户端的 RPC-over-HTTP(尽管您可以使用 oa VPN 轻松做到这一点) ,RDP 到固定的台式计算机或终端服务器机器,WebDAV 获取通过 HTTP 导出的文件共享等。让 VPN 客户端不受限制地访问网络的第 3 层肯定会暴露出广泛的攻击面。
如果您要允许更多不受限制的第 3 层访问(即使您不是,如果您担心未经授权的设备连接到 VPN),我会考虑使用部分基于客户端设备身份验证的 VPN 技术。假设您的用户在他们的客户端计算机上没有“管理员”权限,并且不能以其他方式从设备上撬出证书并将其安装在任意设备上,使用 L2TP/IPsec 之类的东西和基于计算机的身份验证会持续很长时间防止未经授权的设备连接到 VPN 的方法。
您可以查看 W2K8 上的 NAP:
http://technet.microsoft.com/en-us/network/bb545879.aspx
这可能不是最好的,而是最复杂的方法来做一些可能有点简单的事情。
如果您的 VPN 正在由 w2008 服务器处理,您可以执行 WMI 查询
然后你可以适当地比较
威胁管理网关连同 MS Forefront 和 Stirling Wave 应该为您提供此类功能。这听起来很令人兴奋,但我只是在一次关于微软技术的研讨会上简单地听到过这个,所以我无法提供任何进一步的建议。
Symantec Endpoint Protection 还可以检测客户端计算机的补丁级别以及防病毒软件是否是最新的。但它在客户端上运行并用于保护客户端而不是服务器 - 如果 Endpoint Protection 未安装在客户端上,则您无法对其执行任何操作。