简介
本文档提供了在Microsoft Azure(Azure Active Directory)中注册新应用程序以生成所需的客户端ID、租户ID和客户端凭据的分步操作方法,然后为思科安全电子邮件网关或云网关上的帐户设置进行配置。当邮件管理员为高级恶意软件防护(AMP)或URL过滤配置邮箱自动补救(MAR)或使用思科安全邮件和网络管理器或思科安全网关/云网关上的邮件跟踪中的补救操作时,需要配置帐户设置和相关帐户配置文件。
邮箱自动补救流程
您的电子邮件或URL中的附件(文件)在任何时候都可能被评为恶意文件,即使它到达用户邮箱之后也是如此。思科安全邮件上的AMP(通过思科安全恶意软件分析)可以在出现新信息时识别此发展,并将追溯性警报推送到思科安全邮件。与AsyncOS 14.2 for Cisco Secure Email Cloud Gateway一样,Cisco Talos也提供了URL分析功能。 如果您的组织使用Microsoft 365管理邮箱,则可以配置Cisco Secure Email在用户邮箱中的邮件在这些威胁判定发生更改时执行自动补救操作。
Cisco Secure Email安全且直接地与Microsoft Azure Active Directory通信,以获得对Microsoft 365邮箱的访问权限。 例如,如果包含附件的电子邮件通过网关处理并由AMP扫描,则文件附件(SHA256)会提供给AMP以获得文件信誉。 AMP处置情况可以标记为“干净”(步骤5,图1),然后传递到最终收件人的Microsoft 365邮箱。 稍后,AMP性质更改为“恶意”,思科恶意软件分析会向处理该特定SHA256的任何网关发送追溯判定更新(第8步,图1)。 一旦网关收到恶意的追溯判定更新(如果已配置),网关将执行以下邮箱自动补救(MAR)操作之一:转发、删除或转发和删除。
图 1:思科安全邮件的MAR(适用于AMP)
本指南介绍如何使用Microsoft 365配置Cisco Secure Email仅用于邮箱自动补救。 应已配置网关上的AMP(文件信誉和文件分析)和/或URL过滤。 有关文件信誉和文件分析的更多详细信息,请参阅用户指南以了解您已部署的AsyncOS版本。
先决条件
1. Microsoft 365帐户订阅(请确保您的Microsoft 365帐户订阅包含对Exchange的访问权限,例如企业E3或企业E5帐户。)
2. Microsoft Azure管理员帐户以及对http://portal.azure.com的访问
3. Microsoft 365和Microsoft Azure AD帐户均正确绑定到有效的“user@domain.com”电子邮件地址,并且你可以通过该电子邮件地址发送和接收电子邮件。
您将创建以下值,以配置与Microsoft Azure AD的思科安全邮件网关API通信:
注意: 从AsyncOS 14.0开始,帐户设置允许在创建Microsoft Azure应用注册时使用客户端密钥进行配置。这是比较容易和首选的方法。
可选 — 如果不使用客户端密钥,则需要创建并做好准备:
本指南的附录中包含创建指纹和私钥的内容:
- 活动的公有(或私有)证书(CER)和用于签署证书(PEM)的私钥,或者能够创建公共证书(CER),以及能够保存用于签署证书的私钥(PEM)。思科在本文档中提供了两种根据您的管理首选项完成此任务的方法:
- 证书:Unix/Linux/OS X(使用OpenSSL)
- 证书:Windows(使用PowerShell)
- 访问Windows PowerShell(通常由Windows主机或服务器管理),或通过Unix/Linux访问终端应用程序
要构建这些必需的值,您需要完成本文档中提供的步骤。
注册Azure应用以用于Cisco Secure Email
申请注册
登录您的Microsoft Azure门户 1.单击Azure Active Directory(图2) 2.点击应用注册 3.单击+新注册 4.在“注册申请”页上: a.名称:Cisco Secure Email MAR(或您选择的名称) b.支持的帐户类型:仅此组织目录中的帐户(帐户名称) c.重定向URI:(可选) [注意:您可以将此字段留空,也可以随意使用https://www.cisco.com/sign-on进行填写] d.在页面底部,点击Register |
图 2:Microsoft Azure门户示例 |
完成上述步骤后,系统将显示您的应用程序:
图 3:Microsoft Azure Active Directory应用程序页
证书和机密
如果您正在运行AsyncOS 14.0或更高版本,思科建议配置Azure应用以使用客户端密钥。 在应用程序窗格中,在管理选项中:
1.选择Certificates & secrets
2.在Client secrets部分,单击+ New client secret
3.添加说明,以帮助确定此客户端密钥的用途,例如“思科安全邮件补救”
4.选择到期期间
5.单击Add
6.将鼠标悬停在生成的值的右侧,然后单击“复制到剪贴板”图标
7.将此值保存到您的注释中,请将此值记为“客户端密码”
图 4:Microsoft Azure创建客户端密钥示例
注意:退出活动的Microsoft Azure会话后,您刚才生成的客户端密钥值将***出该值。 如果在退出之前不记录和保护该值,则需要重新创建客户端加密才能看到明文输出。
可选 — 如果未使用客户端密钥配置Azure应用程序,请将Azure应用程序配置为使用证书。 在应用程序窗格中,在管理选项中:
- 选择Certificates & secrets
- 单击Upload certificate
- 选择CRT文件(如先前创建)
- 单击Add
API权限
注意:从AsyncOS 13.0 for Email Security开始,需要的Microsoft Azure到Cisco Secure Email通信的API权限已从使用Microsoft Exchange更改为Microsoft Graph。如果您已配置MAR,并且正在将现有思科安全电子邮件网关升级到AsyncOS 13.0,则只需更新/添加新的API权限即可。 (如果您运行的是旧版本的AsyncOS 11.x或12.x,请参阅附录B,然后继续。)
在应用程序窗格中,在管理选项中:
- 选择API权限
- 单击+“添加权限”
- 选择Microsoft Graph
- 选择以下对应用程序权限的权限:
- Mail >“Mail.Read”(读取所有邮箱中的邮件)
- Mail >“Mail.ReadWrite”(在所有邮箱中读取和写入邮件)
- Mail >“Mail.Send”(以任何用户身份发送邮件)
- Directory > "Directory.Read.All"(读取目录数据)[*可选:如果使用LDAP连接器/LDAP同步,请启用。 如果不是,则不需要执行此操作。]
- 可选:您将看到Microsoft Graph默认启用“User.Read”权限;您可以保持配置不变,或者单击Read并单击Remove permission将其从与应用程序关联的API权限中删除。
- 单击Add permissions(或者Update permissions(如果已列出Microsoft Graph))
- 最后,点击授予管理员同意…… 确保将您的新权限应用到应用程序
- 窗格内将显示一个弹出窗口,询问:
"是否要为<Azure Name>中的所有帐户授予所请求权限的同意?这将更新此应用已有的所有现有管理员同意记录,以匹配下面列出的内容。”
单击Yes
此时,您应该看到绿色成功消息,并且“需要管理员同意”列显示已批准。
获取您的客户端ID和租户ID
在应用程序窗格中,在管理选项中:
- 单击Overview
- 将鼠标悬停在应用程序(客户端)ID的右侧,然后点击复制到剪贴板图标
- 将此值保存到您的备注中,请将此值记为“客户端ID”
- 将鼠标悬停在目录(租户)ID的右侧,然后点击复制到剪贴板图标
- 将此值保存到您的备注,请将此记为“租户ID”
图 5:Microsoft Azure..客户端ID、租户ID示例
配置思科安全邮件网关/云网关
此时,应准备以下值并将其保存到您的注释中:
可选,如果不使用客户端密钥:
您已准备好使用您的笔记中创建的值,并在思科安全邮件网关上配置帐户设置!
创建帐户配置文件
- 登录您的网关
- 导航到系统管理>帐户设置
- 注意:如果运行的是AsyncOS 13.x之前的版本,则为系统管理>邮箱设置
- 单击Enable
- 点击“启用帐户设置”复选框,然后点击提交
- 单击Create Account Profile
- 提供配置文件名称和说明(如果您有多个域,则可以唯一描述您的帐户)
- 在定义Microsoft 365连接时,请将配置文件类型保留为Office 365/混合(Graph API)
- 输入客户端ID
- 输入您的租户ID
- 对于客户端凭据,请按照您在Azure中配置的方式执行以下操作之一:
- 单击Client Secret并粘贴到您配置的客户端密钥,或……
- 单击Client Certificate并输入您的指纹,还可以通过单击“Choose File”提供PEM
- 单击 Submit
- 点击UI右上角的Commit Changes
- 输入任何备注,并通过点击提交更改完成配置更改
检查连接
下一步只是验证从思科安全电子邮件网关到Microsoft Azure的API连接:
- 在相同的“帐户详细信息”页面中,单击测试连接
- 输入在Microsoft 365帐户中管理的域的有效邮件地址
- 单击测试连接
- 您应该会收到成功消息(图6)
- 单击完成以完成
图 6:帐户配置文件/连接检查示例
6.在域映射部分中,单击创建域映射
7.输入与刚刚验证其API连接的Microsoft 365帐户关联的域名
以下是可用于映射邮箱配置文件的有效域格式列表:
— 域可以是特殊关键字“ALL”,用于匹配所有域以创建默认域映射。
— 域名(例如“example.com”) — 匹配任何与此域匹配的地址。
— 部分域名,例如'@.partial.example.com' — 匹配以此域结尾的任何地址
— 可使用逗号分隔的域列表输入多个域。
8.单击“提交”
9.单击UI右上角的Commit Changes
10.输入任何备注,并通过点击提交更改完成配置更改
在邮件策略中启用邮箱自动修复(MAR)以实现高级恶意软件防护
完成此步骤以启用邮件策略的AMP配置中的MAR。
- 导航到邮件策略>传入邮件策略
- 点击要配置的策略名称的“高级恶意软件防护”(Advanced Malware Protection)列中的设置(例如,图7):
图 7:启用MAR(传入邮件策略)
- 滚动到页面底部
- 点击启用邮箱自动修复(MAR)复选框
- 选择您要为MAR采取的以下操作之一(例如,图8):
- 前转到:<输入邮件地址>
- DELETE
- 前转到:<输入电邮地址>并删除
图 8:启用AMP的MAR配置示例
- 单击 Submit
- 点击UI右上角的Commit Changes
- 输入任何备注,并通过点击提交更改完成配置更改
启用邮箱自动修复(MAR)以进行URL过滤
从思科安全邮件云网关的AsyncOS 14.2开始,URL过滤现在包括URL追溯性裁决和URL补救。
- 导航到安全服务> URL过滤
- 如果尚未配置URL过滤,请点击启用
- 点击“启用URL类别和信誉过滤器”复选框
- 默认设置下的Advanced Settings
- 单击 Submit
您的URL过滤应类似于以下内容:
图 9:URL过滤后启用示例
要查看带内置URL过滤的URL追溯,请执行以下操作或打开支持案例供思科执行:
esa1.hcxxyy-zz.iphmx.com> urlretroservice enable
URL Retro Service is enabled.
esa1.hcxxyy-zz.iphmx.com> websecurityconfig
URL Filtering is enabled.
No URL list used.
Web Interaction Tracking is enabled.
URL Retrospective service based Mail Auto Remediation is disabled.
URL Retrospective service status - Unavailable
Disable URL Filtering? [N]>
Do you wish to disable Web Interaction Tracking? [N]>
Do you wish to add URLs to the allowed list using a URL list? [N]>
Enable URL Retrospective service based Mail Auto Remediation to configure remediation actions.
Do you wish to enable Mailbox Auto Remediation action? [N]> y
URL Retrospective service based Mail Auto Remediation is enabled.
Please select a Mailbox Auto Remediation action:
1. Delete
2. Forward and Delete
3. Forward
[1]> 1
esa1.hcxxyy-zz.iphmx.com> commit
Please enter some comments describing your changes:
[]>
Do you want to save the current configuration for rollback? [Y]>
Changes committed: Tue Mar 29 19:43:48 2022 EDT
完成后,在URL Filtering页面刷新您的UI,现在应看到类似以下内容:
图 10:URL过滤(适用于思科安全邮件云网关的AsyncOS 14.2)
现在,URL保护已准备好在判定更改分数时执行补救操作。 有关详细信息,请参阅思科安全邮件云网关版AsyncOS 14.2用户指南中的保护免受恶意或不想要的URL的侵害。
配置完成!
目前,思科安全电邮已准备好在新信息出现时持续评估新兴威胁,并在文件进入您的网络后通知您这些被确定为威胁的文件。
当从文件分析(思科安全恶意软件分析)生成追溯性判定时,会向邮件安全管理员(如果已配置)发送信息消息。 示例:

如果根据邮件策略进行配置,则邮箱自动补救将采取已配置的方式。
邮箱自动修正报告示例
已修复的任何SHA256的报告都将包含在思科安全邮件网关和思科安全邮件和网络管理器上可用的邮箱自动修复报告中。
图 11:(传统UI)邮箱自动修正报告
图 12:(NG UI)邮箱自动修正报告
邮箱自动补救日志记录
邮箱自动修正具有单独的日志“mar”。 邮箱自动修正日志将包含您的思科安全电子邮件网关与Microsoft Azure、Microsoft 365之间的所有通信活动。
日志示例:
Mon May 27 02:24:28 2019 Info: Version: 12.1.0-087 SN: 420DE3B51AB744C7F092-9F0000000000
Mon May 27 02:24:28 2019 Info: Time offset from UTC: 18000 seconds
Fri May 31 01:11:53 2019 Info: Process ready for Mailbox Auto Remediation
Fri May 31 01:17:57 2019 Info: Trying to connect to Azure AD.
Fri May 31 01:17:57 2019 Info: Requesting token from Azure AD.
Fri May 31 01:17:58 2019 Info: Token request successful.
Fri May 31 01:17:58 2019 Info: The appliance is able to read the user's(robsherw@bce-demo.info) mailbox.
Fri May 31 04:41:54 2019 Info: Trying to perform the configured action on MID:312391 SHA256:de4dd03acda0a24d0f7e375875320538952f1fa30228d1f031ec00870ed39f62 Recipient:robsherw@bce-demo.info.
Fri May 31 04:41:55 2019 Info: Message containing attachment(s) for which verdict update was(were) available was not found in the recipient's (robsherw@bce-demo.info) mailbox.
Tue Jun 4 04:42:20 2019 Info: Trying to perform the configured action on MID:348938 SHA256:7d06fd224e0de7f26b48dc2daf7f099b3770080d98bd38c49ed049087c416c4b Recipient:robsherw@bce-demo.info.
Tue Jun 4 04:42:21 2019 Info: Message containing attachment(s) for which verdict update was(were) available was not found in the recipient's (robsherw@bce-demo.info) mailbox.
思科安全电子邮件网关故障排除
如果您没有看到连接状态测试成功的结果,您可能希望查看从Microsoft Azure AD执行的应用程序注册。
从思科安全邮件网关将您的MAR日志设置为“trace”级别,然后重新测试连接。
对于不成功的连接,日志可能显示类似于:
Thu Mar 30 16:08:49 2017 Info: Trying to connect to Azure AD.
Thu Mar 30 16:08:49 2017 Info: Requesting token from Azure AD.
Thu Mar 30 16:08:50 2017 Info: Error in requesting token: AADSTS70001: Application with identifier '445796d4-8e72-4d06-a72c-02eb47a4c59a' was not found in the directory ed437e13-ba50-479e-b40d-8affa4f7e1d7
Trace ID: 4afd14f4-ca97-4b15-bba4-e9be19f30d00
Correlation ID: f38e3388-729b-4068-b013-a08a5492f190
Timestamp: 2017-03-30 20:08:50Z
Thu Mar 30 16:08:50 2017 Info: Error while requesting token AADSTS70001: Application with identifier '445796d4-8e72-4d06-a72c-02eb47a4c59a' was not found in the directory ed437e13-ba50-479e-b40d-8affa4f7e1d7
Trace ID: 4afd14f4-ca97-4b15-bba4-e9be19f30d00
Correlation ID: f38e3388-729b-4068-b013-a08a5492f190
Timestamp: 2017-03-30 20:08:50Z
确认日志中的应用程序ID、目录ID(与租户ID相同)或其他关联标识符,并在Azure AD中与你的应用程序相关联。如果你不确定这些值,请从Azure AD门户中删除该应用程序并重新开始。
对于成功的连接,日志应类似于:
Thu Mar 30 15:51:58 2017 Info: Trying to connect to Azure AD.
Thu Mar 30 15:51:58 2017 Info: Requesting token from Azure AD.
Thu Mar 30 15:51:58 2017 Trace: command session starting
Thu Mar 30 15:52:00 2017 Info: Token request successful.
Thu Mar 30 15:52:00 2017 Info: The appliance is able to read the user's(myuser@mydomain.onmicrosoft.com) mailbox.
Azure AD故障排除
注意:思科TAC和思科支持人员无权对Microsoft Exchange、Microsoft Azure AD或Office 365的客户方问题进行故障排除。
对于Microsoft Azure AD的客户方问题,您需要联系Microsoft支持部门。 请从Microsoft Azure仪表板查看“帮助+支持”选项。 您可以从控制面板向Microsoft支持部门提交直接支持请求。
附录 A
注意:仅当未使用客户端密钥设置Azure应用程序时才需要此密钥。
构建公共证书和专用证书及密钥对
提示:请将$base64Value、$base64Thumbprint和$keyid的输出保存在本地,因为稍后配置步骤中将要求这些输出。 请将证书的.crt和关联的.pem保存在计算机上的可用本地文件夹中。
注意:如果您已经拥有证书(x509格式/标准)和私钥,请跳过此部分。 请确保您同时具有CRT和PEM文件,因为接下来的部分中将需要它们!
证书:Unix/Linux(使用openssl)
要创建的值: |
●指纹 ●公共证书(CRT文件) ●私钥(PEM文件) |
使用Unix/Linux/OS X的管理员为了执行提供的脚本,假设您已安装OpenSSL。
注意:运行命令“which openssl”和“openssl version”以验证OpenSSL安装。安装OpenSSL(如果它不存在)!
如需帮助,请参阅以下文档:Azure AD Configuration Script for Cisco Secure Email
从主机(UNIX/Linux/OS X):
- 从终端应用程序、文本编辑器(或者无论您如何轻松地创建shell脚本)中,通过复制以下内容来创建脚本:https://raw.githubusercontent.com/robsherw/my_azure/master/my_azure.sh
- 粘贴脚本
- 请确保使脚本可执行!运行以下命令:chmod u+x my_azure.sh
- 运行脚本:./my_azure.sh
图 13:my_azure.sh的屏幕输出
如图2所示,脚本会构建并调用Azure应用注册所需的公共证书(CER文件)。脚本还调用了指纹和证书私钥(PEM文件)您将在“配置思科安全邮件”(Configuring Cisco Secure Email)部分使用。
你拥有在Microsoft Azure中注册我们的应用程序所需的值!
[跳过下一部分! 请继续操作“注册Azure应用以用于Cisco Secure Email”]
证书:Windows(使用PowerShell)
对于使用Windows的管理员,您需要利用应用程序或具备创建自签名证书的知识。 此证书用于创建Microsoft Azure应用和关联API通信。
要创建的值: |
●指纹 ●公共证书(CRT文件) ●私钥(PEM文件) |
本文档创建自签名证书的示例是使用XCA(https://hohnstaedt.de/xca/,https://sourceforge.net/projects/xca/)。
注意:XCA可以下载用于Mac、Linux或Windows。
1.为证书和密钥创建数据库: a.从工具栏中选择文件 b.选择新数据库 c.为您的数据库创建口令 (在后面的步骤中需要它,请记住它!) 2.点击“证书”选项卡,然后点击新建证书 |
|
3.单击“主题”选项卡,并填写以下内容: a.内部名称 b.国家/地区名称 c.stateOrProvinceName d.localityName e.organizationName f. organizationalUnitName(OU) g.公用名(CN) h.电邮地址 4.单击生成新密钥 5.在弹出窗口中,验证所提供的信息 (根据需要更改): a.名称 b.密钥类型:RSA c.密钥长度:2048 位 d.点击Create e.单击OK,确认“已成功创建RSA私钥‘名称’”弹出窗口 |
图 14:使用XCA(步骤3-5) |
6.单击“密钥用法”选项卡,然后选择以下选项: a.在X509v3 Key Usage(X509v3密钥用法)下: 数字签名、密钥加密 b.在X509v3 Extended Key Usage: 电子邮件保护 |
图 15:使用XCA(第6步) |
7.单击OK将更改应用到您的证书 8.单击“确定”以确认“已成功创建证书‘名称’”弹出窗口 |
|
接下来,您将要导出公共证书(CER文件)和证书私钥(PEM文件),以便在PowerShell命令启动时使用,并用于Configuring Cisco Secure Email步骤:
1.单击并突出显示新创建的证书的“内部名称”。 2.单击“导出” a.设置保存目录以便于访问(根据需要更改) b.确保导出格式设置为PEM(.crt) c.单击确定 |
图 16:使用XCA(导出CRT)(步骤1-2) |
3.单击Private Keys(私钥)选项卡 4.单击并突出显示新创建的证书的“内部名称”。 5.单击“导出” a.设置保存目录以便于访问(根据需要更改) b.确保导出格式设置为PEM private(.pem) c.单击确定 6.退出并关闭XCA |
图 17:使用XCA(导出PEM)(步骤3-5) |
最后,您将获取您创建的证书并提取指纹,这是配置Cisco安全电子邮件所必需的。
- 使用Windows PowerShell,运行以下命令:
$cer = New-Object System.Security.Cryptography.X509Certificates.X509Certificate2
$cer.Import("c:\Users\joe\Desktop\myCert.crt")
$bin = $cer.GetRawCertData()
$base64Value = [System.Convert]::ToBase64String($bin)
$bin = $cer.GetCertHash()
$base64Thumbprint = [System.Convert]::ToBase64String($bin)
$keyid = [System.Guid]::NewGuid().ToString()[Note: “c:\Users\joe\Desktop...” is the location on your PC where your CRT file is saved.]
- 要获取后续步骤的值,请保存到文件或复制到剪贴板:
$base64Thumbprint | Out-File c:\Users\joe\Desktop\base64Thumbprint.txt
$base64Thumbprint
注意:“c:\Users\joe\Desktop..." 是您在PC上保存输出的位置。
运行PowerShell命令时的预期输出应类似于以下内容:
PS C:\Users\joe\Desktop> $base64Thumbprint
75fA1XJEJ4I1ZVFOB2xqkoCIh94=
如您所见,PowerShell命令调用了base64Thumbprint,这是Cisco安全邮件网关配置所需的Thumbprint。
您还已完成创建Azure应用注册所需的公共证书(CER文件)。您已经创建了将在Configuring Cisco Secure Email部分使用的证书私钥(PEM文件)。
您拥有在Microsoft Azure中注册应用程序所需的值!
[请继续操作“注册Azure应用以用于Cisco Secure Email”]
附录 B
注:仅在网关上运行邮件的AsyncOS 11.x或12.x时需要此功能。
API权限(AsyncOS 11.x、12.x)
在应用程序窗格中,在管理选项……
- 选择API权限
- 单击+“添加权限”
- 向下滚动到Supported legacy APIs并选择Exchange
- 选择以下授权权限:
- EWS > "EWS.AccessAsUser.All"(通过Exchange Web服务以登录用户的身份访问邮箱)
- Mail >“Mail.Read”(读取用户邮件)
- Mail >“Mail.ReadWrite”(读取和写入用户邮件)
- Mail >“Mail.Send”(以用户身份发送邮件)
- 滚动到窗格的顶部……
- 选择以下对应用程序权限的权限:
- "full_access_as_app"(使用可完全访问所有邮箱的Exchange Web服务)
- Mail >“Mail.Read”(读取用户邮件)
- Mail >“Mail.ReadWrite”(读取和写入用户邮件)
- Mail >“Mail.Send”(以用户身份发送邮件)
- 可选:您将看到Microsoft Graph默认启用“User.Read”权限;您可以保持配置不变,或者单击Read并单击Remove permission将其从与应用程序关联的API权限中删除。
- 单击Add permissions(或者Update permissions(如果已列出Microsoft Graph))
- 最后,点击授予管理员同意…… 确保将您的新权限应用到应用程序
- 窗格内将显示一个弹出窗口,询问:
"是否要为<Azure Name>中的所有帐户授予所请求权限的同意?这将更新此应用已有的所有现有管理员同意记录,以匹配下面列出的内容。”
单击Yes
此时,您应该看到绿色成功消息,并且“需要管理员同意”列显示“已授予”,与以下所示类似:
图 18:Microsoft Azure应用注册(需要API权限)
[请继续操作“注册Azure应用以用于Cisco Secure Email”]
相关信息