如何在使用GPO的计算机上部署SSL证书?

时间:2020-01-09 10:46:33  来源:igfitidea点击:

让我们看看如何在域计算机上集中 部署SSL证书,并使用 组策略将其添加到 可信根证书颁发机构。部署证书后,所有客户端设备都将信任由该证书签名的服务。在我们的例子中,我们将把自签名的SSL交换证书(未安装域中的activedirectory证书服务角色)部署到AD中用户的计算机上。

如果对Exchange服务器使用自签名SSL证书,则在首次启动Outlook期间,客户端计算机上将显示以下消息:此证书不受信任,使用它不安全。

若要删除此警告,必须将Exchange证书添加到用户计算机上的受信任证书列表中。这可以手动完成(或者通过将证书集成到操作系统镜像),但是使用GPO自动安装证书更容易、更有效。当使用这样的证书分发方案时,所有必需的证书将自动安装在所有新旧域计算机上。

首先,必须从Exchange服务器导出自签名证书。为此,请登录服务器,运行 mmc.exe并添加 证书(对于本地计算机)管理单元。

进入 证书(本地计算机)->可信根证书颁发机构->证书部分

在右窗格中找到兑换凭证,右键点击,选择 全部任务-> 导出

在导出向导中,选择 DER编码二进制X.509(.CER)格式,并指定证书文件的路径。

也可以直接从浏览器导出SSL证书。在Internet Explorer中,使用不受信任的证书打开web服务器的HTTPS地址(对于Exchange,这通常是表单中的地址https://exchange_-cas/owa). 点击地址栏中的 证书错误图标,点击 查看证书,进入 详细信息页签。点击 复制到文件按钮,打开证书导出到CER文件向导。

我们还可以使用WebRequest方法从PowerShell获取HTTPS站点的SSL证书并将其保存在CER文件中:

$webRequest = [Net.WebRequest]::Create("https://exchange_cas/owa")
try { $webRequest.GetResponse() } catch {}
$getcert = $webRequest.ServicePoint.Certificate
$bytes = $getcert.Export([Security.Cryptography.X509Certificates.X509ContentType]::Cert)
set-content -value $bytes -encoding byte -path "c:\ps\your_exchange_cert.cer"

因此,我们已将交换证书导出到CER文件中。我们需要将证书文件放在共享网络文件夹中,并且所有用户都必须对其具有读取权限(如有必要,可以使用NTFS权限限制访问权限或者使用ABE隐藏文件夹)。例如,让证书文件的路径如下:\lon-fs01\GroupPolicy$\Certificates***

让我们来创建一个新的证书部署策略。要执行此操作,请启动 组策略管理控制台(gpmc.msc). 通过选择OU来创建一个新策略(在我们的示例中,它是包含计算机的OU,因为我们不希望证书安装在服务器和技术系统上),然后在上下文菜单中选择 在此域中创建GPO并将其链接到此处…

指定策略名称( 安装交换证书)并切换到策略编辑模式。

在GPO编辑器中,转到C **计算机配置–>策略–>Windows设置–>安全设置–>公钥策略–>受信任的根证书颁发机构]部分

在GPO编辑器窗口的右侧点击并选择 导入

指定导入的证书文件的路径,该文件已放在共享文件夹中。

在向导的相应步骤中(将所有证书放在下面的存储中),请指定它必须放在 受信任证书权威机构中。**