Secure Mail 的 S/MIME
Secure Mail 支持安全/多用途 Internet 邮件扩展 (S/MIME),使用户能够对邮件进行签名和加密,以提高安全性。签名可向收件人保证邮件是由已识别的发件人发送的,而非冒名顶替者。加密仅允许拥有兼容证书的收件人打开邮件。
有关 S/MIME 的详细信息,请参阅 Microsoft TechNet。
下表中的 X 表示 Secure Mail 在设备操作系统上支持 S/MIME 功能。
| S/MIME 功能 | iOS | Android |
|---|---|---|
| 数字身份提供程序集成: 您可以将 Secure Mail 与受支持的第三方数字身份提供程序集成。您的身份提供程序主机将证书提供给用户设备上的身份提供程序应用程序。该应用程序将证书发送到 Endpoint Management 共享保管库,这是一个用于敏感应用程序数据的安全存储区域。Secure Mail 从共享保管库获取证书。有关详细信息,请参阅集成数字身份提供程序部分。 | X | |
| 派生凭据支持 | Secure Mail 支持使用派生凭据作为证书源。有关派生凭据的详细信息,请参阅 Citrix Endpoint Management 文档中的适用于 iOS 的派生凭据一文。 | |
| 通过电子邮件分发证书: 通过电子邮件分发证书需要您创建证书模板,然后使用这些模板请求用户证书。安装并验证证书后,您将导出用户证书,然后通过电子邮件将其发送给用户。用户随后在 Secure Mail 中打开电子邮件并导入证书。有关详细信息,请参阅通过电子邮件分发证书部分。 | X | X |
| 自动导入单用途证书: Secure Mail 会检测证书是仅用于签名还是用于加密,然后自动导入证书并通知用户。如果证书用于两种目的,系统会提示用户导入它。 | X |
集成数字身份提供程序
下图显示了证书从数字身份提供程序主机到 Secure Mail 的路径。当您将 Secure Mail 与受支持的第三方数字身份提供程序集成时,会发生这种情况。
- 
- MDX 共享保管库是用于敏感应用程序数据(例如证书)的安全存储区域。只有由 Endpoint Management 启用的应用程序才能访问共享保管库。
先决条件
- Secure Mail 支持与 Entrust IdentityGuard 集成。
配置集成
- 准备身份提供程序应用程序并将其提供给用户:
- 联系 Entrust 以获取要封装的 .ipa。
-
使用 MDX Toolkit 封装应用程序。
如果您将此应用程序部署给已在 Endpoint Management 环境外部拥有该应用程序版本的用户,请为此应用程序使用唯一的应用程序 ID。为此应用程序和 Secure Mail 使用相同的预配配置文件。
- 将应用程序添加到 Endpoint Management 并将其发布到 Endpoint Management 应用程序商店。
-
告知用户他们必须从 Secure Hub 安装身份提供程序应用程序。根据需要提供有关任何安装后步骤的指导。
根据您在下一步中配置 Secure Mail 的 S/MIME 策略的方式,Secure Mail 可能会提示用户安装证书或在 Secure Mail 设置中启用 S/MIME。这两个过程的步骤都可以在在适用于 iOS 的 Secure Mail 上启用 S/MIME中找到。
-
- 将 Secure Mail 添加到 Endpoint Management 时,请务必配置以下策略:
-
将 S/MIME 证书源策略设置为共享保管库。此设置表示 Secure Mail 使用您的数字身份提供程序存储在其共享保管库中的证书。
-
要在 Secure Mail 首次启动期间启用 S/MIME,请配置“首次 Secure Mail 启动期间启用 S/MIME”策略。该策略确定当共享保管库中存在证书时 Secure Mail 是否启用 S/MIME。如果没有可用证书,Secure Mail 会提示用户导入证书。如果未启用该策略,用户可以在 Secure Mail 设置中启用 S/MIME。默认情况下,Secure Mail 不启用 S/MIME,这意味着用户必须通过 Secure Mail 设置启用 S/MIME。
使用派生凭据
除了与数字身份提供程序集成之外,您还可以允许使用派生凭据。
- 将 Secure Mail 添加到 Endpoint Management 时,请将 S/MIME 证书源策略配置为**派生凭据**。有关派生凭据的详细信息,请参阅[适用于 iOS 的派生凭据](/zh-cn/citrix-endpoint-management/authentication/derived-credentials.html)。
通过电子邮件分发证书
除了与数字身份提供程序集成或使用派生凭据之外,您还可以通过电子邮件向用户分发证书。此选项需要以下一般步骤,本节将详细介绍。
-
使用 Server Manager 启用 Microsoft Certificate Services 的 Web 注册并验证您在 IIS 中的身份验证设置。
-
- 创建用于签名和加密电子邮件的证书模板。使用这些模板请求用户证书。
-
-
安装并验证证书,然后导出用户证书并通过电子邮件将其发送给用户。
-
用户在 Secure Mail 中打开电子邮件并导入证书。因此,这些证书仅适用于 Secure Mail。它们不会出现在适用于 S/MIME 的 iOS 配置文件中。
先决条件
本节中的说明基于以下组件:
- XenMobile® Server 10 及更高版本
- 受支持版本的 Citrix Gateway(以前称为 NetScaler® Gateway)
- 适用于 iOS 的 Secure Mail(最低版本 10.8.10);适用于 Android 设备的 Secure Mail(最低版本 10.8.10)
- Microsoft Windows Server 2008 R2 或更高版本,其中 Microsoft Certificate Services 充当根证书颁发机构 (CA)
- Microsoft Exchange:
- Exchange Server 2016 累积更新 4
- Exchange Server 2013 累积更新 15
- Exchange Server 2010 SP3 更新汇总 16
在配置 S/MIME 之前,请完成以下先决条件:
- 通过手动方式或通过 Endpoint Management 中的凭据设备策略将根证书和中间证书分发到移动设备。有关详细信息,请参阅[凭据设备策略](/zh-cn/citrix-endpoint-management/policies/credentials-policy.html)。
- 如果您正在使用私有服务器证书来保护到 Exchange Server 的 ActiveSync 流量,请执行以下操作:在移动设备上安装所有根证书和中间证书。
启用 Microsoft Certificate Services 的 Web 注册
- 转到管理工具,然后选择 Server Manager。
- 在 Active Directory Certificate Services 下,检查是否已安装 Certificate Authority Web Enrollment。
- 选择添加角色服务以安装 Certificate Authority Web Enrollment(如果需要)。
-
- 选中 Certificate Authority Web Enrollment,然后单击下一步。
-
- 安装完成后,单击关闭或完成。
-
验证您在 IIS 中的身份验证设置
- 确保用于请求用户证书的 Web 注册站点(例如,
https://ad.domain.com/certsrv/)使用 HTTPS 服务器证书(私有或公共)进行保护。 - 必须通过 HTTPS 访问 Web 注册站点。
-
转到管理工具,然后选择 Server Manager。
- 在 Web 服务器 (IIS) 中,查找 角色服务。验证是否已安装“客户端证书映射身份验证”和“IIS 客户端证书映射身份验证”。如果未安装,请安装这些角色服务。
- 转到 管理工具,然后选择 Internet Information Services (IIS) 管理器。
-
- 在 IIS 管理器 窗口的左窗格中,选择运行 IIS 实例以进行 Web 注册的服务器。
-
- 单击 身份验证。
-
- 确保 Active Directory 客户端证书身份验证 已 启用。
-
- 在右窗格中,单击 站点 > Microsoft Internet Information Services 的默认站点 > 绑定。
-
- 如果 HTTPS 绑定不存在,请添加一个。
- 转到默认网站主页。
- 单击 SSL 设置,然后单击 接受客户端证书。
创建新的证书模板
为了对电子邮件消息进行签名和加密,Citrix 建议您在 Microsoft Active Directory 证书服务上创建证书。如果您将同一证书用于这两种目的并存档加密证书,则可以恢复签名证书并允许模拟。
以下过程复制证书颁发机构 (CA) 服务器上的证书模板:
- 仅限 Exchange 签名(用于签名)
- Exchange 用户(用于加密)
-
打开“证书颁发机构”管理单元。
-
展开 CA,然后转到“证书模板”。
-
右键单击,然后单击“管理”。
-
搜索“仅限 Exchange 签名”模板,右键单击该模板,然后单击“复制模板”。

-
分配任意名称。
-
选中“在 Active Directory 中发布证书”复选框。
注意:
如果您未选中“在 Active Directory 中发布证书”复选框,用户必须手动发布用户证书(用于签名和加密)。他们可以通过 Outlook 邮件客户端 > 信任中心 > 电子邮件安全性 > 发布到 GAL(全局地址列表)来执行此操作。

-
单击“请求处理”选项卡,然后设置以下参数:
- 用途:签名
- 最小密钥大小:2048
- 允许导出私钥复选框:已选中
- 注册主题而无需任何用户输入复选框:已选中

-
单击“安全”选项卡,并在“组或用户名称”下,确保已添加“经过身份验证的用户”(或任何所需的域安全组)。另请确保在“经过身份验证的用户权限”下,已为“允许”选中“读取和注册”复选框。

-
对于所有其他选项卡和设置,保留默认设置。
-
在“证书模板”中,单击“Exchange 用户”,然后重复步骤 4 到 9。

对于新的 Exchange 用户模板,使用与原始模板相同的默认设置。
-
单击“请求处理”选项卡,然后设置以下参数:
- 用途:加密
- 最小密钥大小:2048
- 允许导出私钥复选框:已选中
-
注册主题而无需任何用户输入复选框:已选中


-
创建两个模板后,请务必颁发这两个证书模板。单击“新建”,然后单击“要颁发的证书模板”。

请求用户证书
此过程使用“user1”导航到 Web 注册页面;例如,https://ad.domain.com/certsrv/。该过程请求两个用于安全电子邮件的新用户证书:一个用于签名,另一个用于加密。您可以对需要通过 Secure Mail 使用 S/MIME 的其他域用户重复相同的过程。
通过 Microsoft 证书服务上的 Web 注册站点(例如,https://ad.domain.com/certsrv/)进行手动注册,用于生成签名和加密的用户证书。另一种方法是通过组策略为将使用此功能的用户组配置自动注册。
-
在基于 Windows 的计算机上,打开 Internet Explorer,然后转到 Web 注册站点以请求新的用户证书。
注意:
请务必使用正确的域用户登录以请求证书。

-
登录后,单击“请求证书”。

-
单击“高级证书请求”。
-
单击“创建并向此 CA 提交请求”。
-
生成用于签名的用户证书。选择相应的模板名称并键入您的用户设置,然后在“请求格式”旁边,选择 PKCS10。
请求已提交。

-
单击“安装此证书”。
-
验证证书是否已成功安装。

-
重复相同的过程,但现在用于加密电子邮件。在同一用户登录到 Web 注册站点的情况下,转到“主页”链接以请求新证书。
-
选择用于加密的新模板,然后键入您在步骤 5 中输入的用户设置。

-
确保您已成功安装证书,然后重复相同的步骤为另一个域用户生成一对用户证书。本示例遵循相同的步骤,为“User2”生成一对证书。
注意:
- > - > 此过程使用同一台基于 Windows 的计算机为“User2”请求第二对证书。
验证已发布的证书
-
要确保证书已正确安装在域用户配置文件中,请转至 Active Directory 用户和计算机 > 视图 > 高级功能。

-
转至用户的属性(本示例中为 User1),然后单击已发布的证书选项卡。确保两个证书都可用。您还可以验证每个证书是否具有特定用途。

此图显示用于加密电子邮件的证书。

此图显示用于签署电子邮件的证书。

确保已将正确的加密证书分配给用户。您可以在 Active Directory 用户和计算机 > 用户属性下验证此信息。

Secure Mail 的工作方式是通过 LDAP 查询检查 userCertificate 用户对象属性。您可以在属性编辑器选项卡上读取此值。如果此字段为空或包含不正确的加密用户证书,则 Secure Mail 无法加密(或解密)邮件。

导出用户证书
此过程以 .PFX (PKCS#12) 格式导出“User1”和“User2”的配对证书,并包含私钥。导出后,证书将通过 Outlook Web Access (OWA) 发送给用户。
-
打开 MMC 控制台,然后转至 证书 - 当前用户的管理单元。您会看到“User1”和“User2”的配对证书。

-
右键单击证书,然后单击所有任务 > 导出。
-
通过选择是,导出私钥来导出私钥。
-
选中如果可能,包括所有证书路径中的所有证书和导出所有扩展属性复选框。

-
导出第一个证书后,对用户的其余证书重复相同的过程。
注意:
清楚地标记哪个证书是签名证书,哪个证书是加密证书。在本示例中,证书标记为 userX-sign.pfx 和 “userX-enc.pfx。

通过电子邮件发送证书
当所有证书都以 PFX 格式导出后,您可以使用 Outlook Web Access (OWA) 通过电子邮件发送它们。本示例的登录名为 User1,发送的电子邮件包含两个证书。

对 User2 或域中的其他用户重复相同的过程。
在适用于 iOS 和 Android 的 Secure Mail 上启用 S/MIME
电子邮件送达后,下一步是使用 Secure Mail 打开邮件并使用适当的签名和加密证书启用 S/MIME。
启用具有单独签名和加密证书的 S/MIME
-
打开 Secure Mail,导航到包含 S/MIME 证书的电子邮件。
-
点击签名证书以下载和导入。
-
输入从服务器导出签名证书时分配给私钥的密码。

您的证书已导入。
-
点击启用签名

-
此外,您可以导航到 “设置” > “S/MIME”,然后点击 “S/MIME” 以启用签名证书。

-
在 “签名” 屏幕中,验证是否已导入正确的签名证书。

-
返回电子邮件,然后点击加密证书以下载并导入。

-
键入从服务器导出加密证书时分配给私钥的密码。

您的证书已导入。
-
点击 “启用加密”

-
此外,您可以导航到 “设置” > “S/MIME”,然后点击 “S/MIME” 以启用 “默认加密”。

-
在 “加密” 屏幕中,验证是否已导入正确的加密证书。

注意:
-
如果电子邮件使用 S/MIME 进行数字签名、包含附件,并且收件人未启用 S/MIME,则不会收到附件。此行为是 Active Sync 的限制。为了有效接收 S/MIME 邮件,请在 Secure Mail 设置中启用 S/MIME。
-
“默认加密” 选项可最大程度地减少加密电子邮件所需的步骤。如果此功能处于“开”状态,您的电子邮件在撰写时将处于加密状态。如果此功能处于“关”状态,您的电子邮件在撰写时将处于未加密状态,并且您必须点击 “锁定” 图标才能加密。

-
使用单个签名和加密证书启用 S/MIME
-
打开 Secure Mail,导航到包含 S/MIME 证书的电子邮件。

-
点击 S/MIME 证书以下载并导入。
-
键入从服务器导出证书时分配给私钥的密码。

-
从出现的证书选项中,点击相应的选项以导入签名证书或加密证书。 点击 “打开证书” 以查看有关证书的详细信息。

您的证书已导入。
您可以通过导航到 “设置” > “S/MIME” 来查看导入的证书。
在 iOS 和 Android 上测试 S/MIME
完成上一节中列出的步骤后,您的收件人可以阅读已签名和加密的邮件。
下图显示了收件人阅读的加密邮件示例。

下图显示了已签名受信任证书的验证示例。

Secure Mail 在 Active Directory 域中搜索收件人的公共加密证书。如果用户向没有有效公共加密密钥的收件人发送加密邮件,则邮件将以未加密方式发送。在群组邮件中,如果即使只有一个收件人没有有效的密钥,邮件也会以未加密方式发送给所有收件人。

配置公共证书源
要使用 S/MIME 公共证书,请配置 S/MIME 公共证书源、LDAP 服务器地址、LDAP 基本 DN 和匿名访问 LDAP 策略。
除了应用程序策略之外,请执行以下操作。
- 如果 LDAP 服务器是公共的,请确保流量直接流向 LDAP 服务器。为此,请将 Secure Mail 的网络策略配置为 “隧道连接到内部网络”,并为 Citrix ADC 配置拆分 DNS。
- 如果 LDAP 服务器位于内部网络上,请执行以下操作:
- 对于 iOS,请确保您未配置后台网络服务网关策略。如果您配置了该策略,用户会收到频繁的身份验证提示。
- 对于 Android,请确保您在后台网络服务网关策略的列表中添加 LDAP 服务器 URL。