本页面介绍如何为 Cloud 新一代防火墙设置传输层安全协议 (TLS) 检查。
准备工作
在配置 TLS 检查之前,请完成以下部分中的任务。
启用 Certificate Authority Service
Cloud NGFW 使用 Certificate Authority Service 生成中间证书授权机构 (CA)。Cloud NGFW 使用这些中间 CA 来生成用于 TLS 检查的证书。
如需启用 CA Service,请使用以下命令:
gcloud services enable privateca.googleapis.com
启用 Certificate Manager
Cloud NGFW 使用 Certificate Manager 创建信任配置。如果您不想使用信任配置,请跳过此步骤。
如需启用 Certificate Manager,请使用以下命令:
gcloud services enable certificatemanager.googleapis.com
创建信任配置
这是一个可选步骤。 如需创建信任配置,请按照本部分中的步骤操作。
-
您在此步骤中创建的 CA 池与您为配置 TLS 检查政策而创建的 CA 池不同。
使用您之前创建的 CA 池创建根 CA。
使用自动生成的密钥创建证书。使用您之前创建的 CA 池的名称。
从创建的证书中获取 CA 的公共证书。
$PEM-CERT=$(gcloud privateca roots describe ROOT_CA_NAME \ --location LOCATION \ --project PROJECT_ID \ --pool CA_POOL \ --format "value(pemCaCertificates)")
请替换以下内容:
ROOT_CA_NAME
:根 CA 的名称LOCATION
:根 CA 的位置PROJECT_ID
:根 CA 的项目 IDCA_POOL
:创建证书的 CA 池的名称
使用上一步中获得的
PEM-CERT
创建并导入信任配置。如果您使用自己的 CA,请使用从您的 CA 获取的公共证书。
您将使用此信任配置创建 TLS 检查政策。
创建 CA 池
您必须先创建 CA 池,然后才能使用 CA Service 创建 CA。如需创建 CA 池,请按照创建 CA 池中的说明操作。
您将使用此 CA 池创建 TLS 检查政策。
创建根 CA
如果您还没有根 CA,则可以在 CA Service 中创建一个。如需创建根 CA,请按照创建根 CA 中的说明操作,并使用您之前创建的同一个 CA 池(请参阅创建 CA 池部分)。
创建服务账号
如果您没有服务账号,则必须创建一个服务账号并授予所需的权限。
创建服务账号:
gcloud services identity create \ --service networksecurity.googleapis.com \ --project PROJECT_ID
将
PROJECT_ID
替换为服务账号的项目 ID。Google Cloud CLI 会创建一个名为
service-PROJECT_NUMBER@gcp-sa-networksecurity.iam.gserviceaccount.com
的服务账号。 其中,PROJECT_NUMBER
是您在上述命令中提供的PROJECT_ID
的唯一标识符。向您的服务账号授予相应权限,以生成使用 CA 池的证书:
gcloud privateca pools add-iam-policy-binding CA_POOL \ --member 'serviceAccount:SERVICE_ACCOUNT' \ --role 'roles/privateca.certificateRequester' \ --location REGION
请替换以下内容:
CA_POOL
:创建证书的 CA 池的名称SERVICE_ACCOUNT
:您在上一步中创建的服务账号的名称LOCATION
:CA 池的区域
配置 TLS 检查
在执行本部分中的任务之前,请确保您已配置证书,或者已完成须知事项部分中列出的前提条件。
如需配置 TLS 检查,请完成以下部分中的任务。
创建 TLS 检查政策
控制台
在 Google Cloud 控制台中,进入 TLS 检查政策页面。
在项目选择器菜单中,选择您的项目。
点击创建 TLS 检查政策。
在名称部分,输入名称。
可选:在说明字段中,输入说明。
在区域列表中,选择要在其中创建 TLS 检查政策的区域。
在 CA 池列表中,选择要在其中创建证书的 CA 池。
如果您没有配置 CA 池,请点击新建池,然后按照创建 CA 池中的说明进行操作。
可选:在最低的 TLS 版本列表中,选择政策支持的最低 TLS 版本。
在信任配置部分中,选择以下选项之一:
可选:在加密套件配置文件列表中,选择 TLS 配置文件类型。您可以从下列值中选择一个:
- 兼容:可让数量最多的客户端(包括仅支持已过时的 TLS 功能的客户端)协商 TLS。
- 新型:支持大量 TLS 功能,可让新型客户端协商 TLS。
- 受限:支持的 TLS 功能较少,旨在满足更严格的合规要求。
自定义:可让您逐个选择 TLS 功能。
在加密套件列表中,选择自定义配置文件支持的加密套件的名称。
点击创建。
gcloud
创建 YAML 文件
TLS_INSPECTION_FILE.yaml
。将TLS_INSPECTION_FILE
替换为您选择的文件名。将以下代码添加到 YAML 文件中以配置 TLS 检查政策。
name: projects/PROJECT_ID/locations/REGION/tlsInspectionPolicies/TLS_INSPECTION_NAME caPool: projects/PROJECT_ID/locations/REGION/caPools/CA_POOL minTlsVersion: TLS_VERSION tlsFeatureProfile: PROFILE_TYPECIPHER_NAME excludePublicCaSet: `TRUE`|`FALSE` trustConfig: projects/PROJECT_ID/locations/REGION/trustConfigs/TRUST_CONFIG_NAME
请替换以下内容:
PROJECT_ID
:TLS 检查政策的项目 IDREGION
:创建 TLS 检查政策的区域TLS_INSPECTION_NAME
:TLS 检查政策的名称CA_POOL
:创建证书的 CA 池的名称CA 池必须位于同一区域。
TLS_VERSION
:可选参数,用于指定 Cloud NGFW 支持的最低 TLS 版本您可以从下列值中选择一个:
TLS_1_0
TLS_1_1
TLS_1_2
PROFILE_TYPE
:可选参数,用于指定 TLS 配置文件的类型您可以从下列值中选择一个:
PROFILE_COMPATIBLE
:可让数量最多的客户端(包括仅支持已过时的 TLS 功能的客户端)协商 TLS。PROFILE_MODERN
:支持大量 TLS 功能,可让新型客户端协商 TLS。PROFILE_RESTRICTED
:支持的 TLS 功能较少,旨在满足更严格的合规要求。PROFILE_CUSTOM
:可让您逐个选择 TLS 功能。
CIPHER_NAME
:可选参数,用于指定自定义配置文件支持的加密套件的名称仅当配置文件类型设置为
PROFILE_CUSTOM
时,您才能指定此参数。excludePublicCaSet
:可选标志,用于包含或排除公共 CA 集。 此标志默认设置为 false。此标志设置为 true 时,TLS 连接不信任公共 CA 服务器。在这种情况下,Cloud NGFW 只能与具有信任配置中的 CA 签名的证书的服务器建立 TLS 连接。TRUST_CONFIG_NAME
:可选参数,用于指定信任配置资源的名称
导入您在创建 TLS 检查政策部分中创建的 TLS 检查政策
gcloud network-security tls-inspection-policies import TLS_INSPECTION_NAME \ --source TLS_INSPECTION_FILE.yaml \ --location REGION
替换以下内容:
TLS_INSPECTION_NAME
:TLS 检查政策的名称TLS_INSPECTION_FILE
:TLS 检查政策 YAML 文件的名称
查看 TLS 检查政策的详细信息
您可以查看在项目中创建的 TLS 检查政策的相关信息。
控制台
在 Google Cloud 控制台中,进入 TLS 检查政策页面。
在项目选择器菜单中,选择您的项目。
TLS 检查部分列出了 TLS 检查政策。
如需查看详细信息,请点击 TLS 检查政策的名称。
将 TLS 检查政策添加到防火墙端点关联
如需将 TLS 检查政策添加到防火墙端点关联,请按照创建防火墙端点关联中所述的步骤操作。
使用 TLS 检查配置防火墙政策规则
如需为您的 Virtual Private Cloud (VPC) 网络启用 TLS 检查,请在防火墙政策规则中设置 --tls-inspect
标志。此标志表示在应用安全配置文件组时,可以执行 TLS 检查。
如需详细了解如何在分层防火墙政策规则中启用 --tls-inspect
标志,请参阅创建防火墙规则。
如需详细了解如何在全球网络防火墙政策规则中启用 --tls-inspect
标志,请参阅创建全球网络防火墙规则。
管理 TLS 检查政策
您可以列出、更新和删除项目中的 TLS 检查政策。
列出所有 TLS 检查政策
您可以列出项目中的所有 TLS 检查政策。
控制台
在 Google Cloud 控制台中,进入 TLS 检查政策页面。
在项目选择器菜单中,选择您的项目。
TLS 检查部分列出了 TLS 检查政策。
gcloud
如需列出所有 TLS 检查政策,请使用 gcloud network-security tls-inspection-policies list
命令:
gcloud network-security tls-inspection-policies list \ --project PROJECT_ID \ --location REGION
替换以下内容:
PROJECT_ID
:TLS 检查政策的项目 IDREGION
:您要列出其 TLS 检查政策的区域的名称
修改 TLS 检查政策
您可以修改项目中的现有 TLS 检查政策。
控制台
在 Google Cloud 控制台中,进入 TLS 检查政策页面。
在项目选择器菜单中,选择您的项目。
TLS 检查部分列出了 TLS 检查政策。
如需修改政策,请点击 TLS 检查政策的名称。
点击修改。
修改必填字段。如需详细了解每个字段,请参阅创建 TLS 检查政策。
点击保存。
删除 TLS 检查政策
您可以从项目中删除 TLS 检查政策。但是,如果防火墙端点关联引用了 TLS 检查政策,则无法删除该 TLS 检查政策。
控制台
在 Google Cloud 控制台中,进入 TLS 检查政策页面。
在项目选择器菜单中,选择您的项目。
TLS 检查部分列出了 TLS 检查政策。
如需删除 TLS 检查政策,请选中其名称旁边的复选框。
点击删除。
再次点击删除。
gcloud
如需删除 TLS 检查政策,请使用 gcloud network-security tls-inspection-policies delete
命令:
gcloud network-security tls-inspection-policies delete \ projects/PROJECT_ID/locations/REGION/tlsInspectionPolicies/TLS_INSPECTION_NAME \ --location REGION
替换以下内容:
PROJECT_ID
:TLS 检查政策的项目 IDTLS_INSPECTION_NAME
:TLS 检查的名称REGION
:创建 TLS 检查政策的区域