本教程介绍如何为 Microsoft 365 (Office 365) 安装 SSL 证书。最重要的一点先说明:您无法也不能将 SSL 证书上传到 Microsoft 365 云本身。Microsoft 负责管理 Exchange Online、SharePoint Online 以及其他托管服务的 TLS。您只能在连接到 Microsoft 365 或与其协同运行的服务器、应用和网关上管理商业证书。以下各节将涵盖实际适用的三种场景。
生成 CSR 代码
CSR(证书签名请求)是一段编码文本,包含您在申请过程中提交给证书颁发机构的联系信息和域名详情。只有在您需要安装自己的证书(Exchange Server 或 Azure)的场景中才需要生成 CSR。对于 Exchange Online 强制 TLS 连接器,您不需要生成 CSR,因为您这一侧不上传任何证书。
您有两种选择:
- 使用我们的CSR 生成器自动生成 CSR。
- 按照我们的分步指南了解如何为 Microsoft 365 创建 CSR。
在下单时将 CSR 提交给证书颁发机构。CA 验证 CSR 并签发证书后(通常以包含私钥和证书链的 .pfx 包形式提供),请继续参考下方对应的章节。
为 Microsoft 365 安装 SSL 证书
重要提示:您无法将 SSL 证书安装到 Exchange Online 或 SharePoint Online 等 Microsoft 365 云服务中。Microsoft 会自动处理这些服务的 TLS,云端不允许手动上传证书。您只能在自己拥有的服务器、应用或网关上安装和管理证书,这些设备需连接到或与 Microsoft 365 协同工作。
本指南涵盖 Microsoft 365 环境中商业证书的三种常见使用场景:
- 启用强制 SSL/TLS 的 Exchange Online(连接器,无需上传证书)
- 本地部署或混合部署的 Exchange Server
- Azure 托管的网络应用或服务
场景一:Exchange Online,与合作伙伴强制启用 SSL/TLS(无需上传证书)
如果您仅使用 Exchange Online,并希望通过可信的外部服务器(例如合作机构、遗留系统或多功能打印机)保护邮件流,可以通过连接器强制启用 TLS。您不需要上传证书,而是要求对方提供有效的、经公开信任的证书。
在 Microsoft 365 邮件流中设置强制 TLS 的步骤
- 使用具有邮件流权限的账户登录Exchange 管理中心。
- 在左侧面板中,依次进入邮件流和连接器。
- 点击添加连接器。对于从合作伙伴发往 Microsoft 365 的邮件,将连接方向设为从:合作机构和到:Microsoft 365。(对于发往合作伙伴的出站邮件,方向相反:从:Microsoft 365和到:合作机构。)
- 点击下一步并按照向导操作。
- 在安全限制步骤中,选择如果邮件未通过 TLS 发送则拒绝,以强制要求使用 TLS。
- 如需将连接限定到特定证书,请选择并要求合作伙伴用于向 Office 365 认证的证书上的主题名称与此域名匹配,然后输入合作伙伴的域名(例如
mail.partnerdomain.com)。 - 完成向导并验证连接器。
注意:Microsoft 要求您在安全步骤中至少选择一项限制条件——上文中的 TLS 和域名匹配选项,或基于合作伙伴 IP 地址范围的限制。若未选择任何限制条件,向导将无法完成连接器设置。此外,外部服务器必须提供 Microsoft 365 信任的有效公共 SSL/TLS 证书,即由商业 CA 签发的证书。自签名证书将无法通过验证。
场景二:本地部署的 Exchange Server,安装并分配证书
如果您运行 Exchange Server 2016、2019 或订阅版(SE),或采用与 Microsoft 365 的混合部署方式,则需要在本地服务器上安装证书。在混合配置中,Exchange 证书必须是来自受信任 CA 的有效第三方证书,否则本地与 Exchange Online 之间的邮件流将中断。
前提条件
- 包含证书、私钥和中间链的 .pfx 文件。
- 该 .pfx 文件的密码,妥善保存。
PowerShell 方法(Exchange 管理 Shell)
PowerShell 适用于所有受支持的 Exchange 版本,这也是本文选用此方法的原因(关于何时也可以使用 Exchange 管理中心完成此操作,请参阅以下步骤后的说明)。以管理员身份运行 Exchange 管理 Shell,并将文件路径、密码和指纹替换为您自己的值。
1. 定义证书文件的路径:
$file = "\servershareyourdomain.pfx"
2. 安全地输入密码(系统会提示您输入,且该值不会显示在屏幕上):
$pwd = Read-Host -AsSecureString
3. 导入证书:
Import-ExchangeCertificate -FileData ([IO.File]::ReadAllBytes($file)) -Password $pwd
4. 查找证书指纹,然后将证书分配给所需的服务:
Get-ExchangeCertificate | FL Thumbprint, Subject
Enable-ExchangeCertificate -Thumbprint <YourThumbprintHere> -Services IIS,SMTP
仅分配证书所针对的服务(常见值包括 IIS、SMTP、POP 和 IMAP)。当系统提示是否覆盖默认的 SMTP 证书时,只有在确实需要时才确认。
关于 Exchange 管理中心的说明:许多指南通过 EAC 图形界面(服务器然后证书)导入证书。该功能的可用性取决于您的版本。从 Exchange Server 2019 CU12 和 Exchange Server 2016 CU23 开始,Microsoft 出于安全原因移除了 EAC 中的证书导入、导出、请求、完成和续期功能。Microsoft 后来在 Exchange Server 2019 CU15 中恢复了这些功能,并且在 Exchange Server 订阅版(SE)中也提供该功能。因此,根据您运行的版本,EAC 向导可能可用也可能不可用,但上述 PowerShell 步骤适用于所有受支持的版本,这也是本文选用该方法的原因。
场景三:Azure App Service,上传并绑定证书
如果您在 Azure App Service 上托管连接到 Microsoft 365 的网站或应用程序(例如客户门户、SSO 端点或 Webhook 接收器),则需要在 Azure 中安装证书并将其绑定到自定义域名。
- 打开Azure 门户并进入您的App Service。
- 在左侧菜单中打开证书(较旧版本的门户中该选项标记为TLS/SSL 设置)。
- 在自带证书 (.pfx)下,点击添加证书并上传您的 .pfx 文件,然后输入其密码。
- 进入自定义域并选择您的域名。
- 在TLS/SSL 绑定(或SSL 绑定)下,点击添加绑定。
- 选择您上传的证书,大多数应用选择SNI SSL,然后确认绑定。
Azure 要求证书具备扩展密钥用途中的服务器身份验证(OID 1.3.6.1.5.5.7.3.1)。每个有效的商业 SSL 证书默认都包含此项。
给管理员和开发人员的提示
- 只在您自己控制的端点上安装证书。Microsoft 365 云不允许手动安装证书。
- 所有证书都必须来自公开受信任的证书颁发机构。自签名证书在这些场景中将无法生效。
- 在 Windows、IIS、Exchange 和 Azure 中使用 .pfx 文件,而不是单独导入 .crt 或 .pem,因为 .pfx 文件将私钥和证书链一起打包。
- 在 .pfx 中包含完整的证书链(中间证书,以及必要时的根证书),以便客户端能够建立完整的信任路径。
测试您的 SSL 安装
在 Exchange Server 或 Azure 应用上安装证书后,请在浏览器中打开相关 URL,检查锁形图标及证书详情。即使一切看起来都正常,也建议运行一次完整扫描,以发现潜在的证书链或协议问题。我们的SSL Checker可立即为您的证书状态生成报告。对于与邮件相关的配置,您还可以通过查看 Exchange 管理中心中的连接器和邮件跟踪结果来确认加密传输是否正常。
常见问题
不需要。Microsoft 365 云(Exchange Online、SharePoint Online、Teams)已经通过 TLS 得到保护,Microsoft 会为您配置并续期这些证书。只有当您自己运行连接到该服务的端点时,例如本地部署或混合部署的 Exchange Server,或是 Azure 上的网络应用,才需要购买并安装商业证书。云服务本身没有任何需要上传的内容。
它使用 TLS(传输层安全协议)来加密客户端与服务器之间的通信。较旧的 SSL 协议已被弃用,不再使用。人们出于习惯仍称其为“SSL 证书”,但实际使用的是标准的 TLS 证书。
在 Exchange 管理中心中,依次进入邮件流和连接器,为合作方向添加连接器,并在安全步骤中选择如果邮件未通过 TLS 发送则拒绝。如需将连接限定到特定证书,还可要求合作伙伴证书的主题名称与其域名匹配。您这一侧不需要上传任何证书;您只是要求对方使用 TLS。
在 Exchange 服务器上运行 Exchange 管理 Shell,使用 Get-ExchangeCertificate | FL Thumbprint, Subject, Services 列出已安装的证书。此命令会显示每个证书、其指纹以及为其启用的服务。对于绑定到单独 IIS 站点的证书,请打开Internet 信息服务 (IIS) 管理器,选择服务器,然后双击服务器证书。
这取决于您的版本。Microsoft 在 Exchange Server 2019 CU12 和 Exchange Server 2016 CU23 中移除了 Exchange 管理中心的证书导入、导出、请求、完成和续期功能,以修复一个安全隐患,随后在 Exchange Server 2019 CU15 和 Exchange Server 订阅版(SE)中恢复了这些功能。如果您的版本没有显示该选项,或者您只是想使用一种在所有版本中都通用的方法,可以改用 Exchange 管理 Shell:使用 Import-ExchangeCertificate 导入证书,并使用 Enable-ExchangeCertificate 分配服务,如上文所示。
使用将证书、私钥和中间链打包在一起的 .pfx(PKCS#12)文件。Exchange Server 和 Azure App Service 都可以直接导入 .pfx 文件并要求输入其密码。不含私钥的单独 .crt 或 .pem 文件无法满足这些安装的要求。

