我正在为我们的无线客户端开发一个由 Freeradius 支持的 802.1.x 身份验证基础架构。我使用的是相当通用的 Freeradius 配置,带有 EAP-PEAP。我们的客户端主要是 Windows XP SP3 计算机,但也有一些 Windows 7 32 位和 64 位笔记本电脑。我们的域处于 Windows Server 2003 功能级别。802.1x 身份验证正在与手动配置的测试客户端配合使用。
我想创建一个 GPO,通过以下方式自动配置我们的客户端:1) 将自签名 CA 证书作为受信任的根证书部署给它们,2) 将我们的 ESSID 设置为具有适当 802.1x 配置的首选网络。
我使用 GPO 向客户端部署自签名 CA 证书时没有遇到任何困难。但是,我不知道如何在 GPO 中将证书配置为受信任的根证书。
这是从以下 GPO 设置中找到的Computer Configuration - Polices - Security Settings - Wireless Network (IEEE 802.11) Polices
:
我的自签名 CA 证书在“受信任的根证书颁发机构”下的选项中不可用。由于“验证服务器证书”设置,尝试在 802.1x PEAP 设置中不信任我的自签名证书的情况下对客户端进行身份验证会失败。当然,如果我手动配置客户端以信任我的证书,则可以正确验证 radius 服务器的证书,然后 802.1x 就可以正常工作。
我的目标是能够将一台机器分配给 OU,在该 OU 中将应用此 GPO,并且所有生成的 802.1.x 和 CA 设置都将完成,而我完全无需接触客户端机器。
如何为 802.1x PEAP 设置构建 GPO,以将客户端设置为信任我的自签名 CA 证书?
编辑:
由于成本问题,目前对于我的组织来说,Microsoft NPS 或 NAP 服务器并不是一个真正的选择。描述我们环境的最佳方式是,一个运行核心服务的集中位置,通过速度和可靠性各不相同的 WAN 链路连接二十多个远程站点。我们在对这些远程站点实施积极的物理或策略控制方面的能力和成功程度各不相同,因此它们是我进行无线和最终有线 802.1x 身份验证的主要关注点。如果我们丢失 WAN 链路(这种情况并不少见),我仍然需要远程站点的客户端能够获得网络访问权限,因此需要在大多数这些位置安装 RADIUS 服务器。对另外十几个 Window 服务器的请求将被拒绝。
过去,我们所有的 Linux 服务器和网络设备都是独立于域基础设施进行维护的。这意味着,DNS 范围的分离、独立的 DNS 服务、独立的身份验证基础设施等等。虽然我意识到域集成 PKI 基础设施有一些优势,但我需要一个很好的理由来说明为什么我应该这样做,或者为什么我不应该使用独立的 PKI 基础设施。
答案1
好的。我承认我并不是微软或 GPO 专家,但这看起来很奇怪。
这个问题似乎已经回答了一半的问题 - 无论 gpmc 连接到哪个域控制器,证书都需要在受信任的根证书颁发机构中可用。这似乎很有道理。但是,即使在我们的域控制器上安装了证书,如果我在工作站上运行 gpmc,它仍然不是一个可供选择的选项。出于好玩,我登录到有问题的域控制器并直接运行 gpmc,证书就可用了。
然后,我尝试将证书安装到我的工作站的受信任根证书颁发机构中,想法与@Greg Askew 相同。没有成功。在 PEAP 设置中仍然不可用。
你显然需要A)在 gpmc 所连接的任何域控制器上的受信任的根证书颁发机构中安装了该证书,并且b)直接在该域控制器上运行 GPMC。
这对我来说毫无意义,因为 RSAT 就是 RSAT,无论您是在域控制器还是工作站上运行 gpmc。想想看……谁能解释这一点,谁就得喝杯啤酒!
从我的工作站-没有证书:
从域控制器-证书可用!
答案2
只是猜测。我认为运行 gpmc 的计算机需要在计算机的“受信任的根 CA”文件夹中拥有证书,和/或拥有将证书作为“受信任的根 CA”证书部署到域的 GPO。
答案3
您必须在无线客户端的“本地计算机”证书信任列表 (CTL) 上安装仅包含公钥的自签名证书,而不是“当前用户”CTL。使用 mmc.exe 并添加证书管理单元并选择本地计算机。
答案4
在我们的配置中,我们必须设置一个企业 CA,并发现最简单的方法是设置一个NPS 服务器进行身份验证。