你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn。
Azure 防火墙高级版包含一项 TLS 检查功能,此功能需要证书身份验证链。 对于生产部署,应使用企业 PKI 生成用于 Azure 防火墙高级版的证书。 本文介绍如何创建和管理 Azure 防火墙高级版的中间 CA 证书。
有关 Azure 防火墙高级版使用的证书的详细信息,请参阅 Azure 防火墙高级版证书。
先决条件
如果没有 Azure 订阅,请在开始之前创建一个免费帐户。
若要使用企业 CA 生成用于 Azure 防火墙高级版的证书,必须具有以下资源:
- 一个 Active Directory 林
- 一个启用了 Web 注册的 Active Directory 证书服务根 CA
- 一个具有高级层防火墙策略的 Azure 防火墙高级版
- Azure Key Vault
- 一个对密钥保管库访问策略中定义的证书和机密具有读取权限的托管标识
创建新的从属证书模板
运行
certtmpl.msc
打开证书模板控制台。在控制台中找到“从属证书颁发机构”模板。
右键单击“从属证书颁发机构”模板,然后选择“复制模板”。
在“新模板的属性”窗口中,转到“兼容性”选项卡,并设置相应的兼容性设置或保留默认设置。
转到“常规”选项卡,设置“模板显示名称”(例如:
My Subordinate CA
),并根据需要调整有效期。 (可选)选中“在 Active Directory 中发布证书”复选框。在“设置”选项卡中,确保所需的用户和组具有读取和
enroll
权限。导航到“扩展”选项卡,选择“密钥用法”,然后选择“编辑”。
- 确保已选中“数字签名”、“证书签名”和“CRL 签名”复选框。
- 选中“将此扩展设为关键扩展”复选框,然后选择“确定”。
选择“确定”保存新的证书模板。
确保新模板已启用,以便可用于颁发证书。
申请和导出证书
访问根 CA 上的 Web 注册站点(通常是
https://<servername>/certsrv
),并选择“申请证书”。选择“高级证书申请”。
选择“创建申请并将其提交到此 CA”。
使用上一部分中创建的从属证书颁发机构模板填写表单。
提交申请并安装证书。
假设此申请是使用 Internet Explorer 从 Windows Server 发出的,请打开“Internet 选项”。
导航到“内容”选项卡,然后选择“证书” 。
选择刚颁发的证书,然后选择“导出”。
选择“下一步”开始启动向导。 选择“是,导出私钥”,然后选择“下一步”。
默认会选择 .pfx 文件格式。 取消选中“包括证书路径中的所有证书(如果可能)”。 如果导出整个证书链,则导入到 Azure 防火墙的过程将失败。
分配并确认用于保护密钥的密码,然后选择“下一步”。
选择文件名和导出位置,然后选择“下一步”。
选择“完成”,并将导出的证书移动到一个安全的位置。
将证书添加到防火墙策略中
在 Azure 门户中,导航到密钥保管库的“证书”页,然后选择“生成/导入”。
选择“导入”作为创建方法,为证书命名,选择导出的 .pfx 文件,输入密码,然后选择“创建” 。
导航到防火墙策略的“TLS 检查”页,并选择托管标识、Key Vault 和证书。
选择“保存”。
验证 TLS 检查
通过对目标 URL 或所选 FQDN 的 TLS 检查来创建应用程序规则。 例如:
*bing.com
。在规则的源范围内已加入域的计算机中,导航到目标,并选择浏览器地址栏旁边的锁定符号。 证书应显示它是由企业 CA 颁发的,而不是由公共 CA 颁发的。
显示证书的同时会显示更多详细信息,包括证书路径。
在 Log Analytics 中,运行以下 KQL 查询以返回已接受 TLS 检查的所有请求:
AzureDiagnostics | where ResourceType == "AZUREFIREWALLS" | where Category == "AzureFirewallApplicationRule" | where msg_s contains "Url:" | sort by TimeGenerated desc
结果显示已检查流量的完整 URL: