使用 SSL 政策

利用 SSL 政策,您将能够控制 SSL 代理或 HTTPS 负载平衡器协商的 SSL 的功能。在本文档中,术语“SSL”是指 SSL 和 TLS 协议。

如需详细了解 SSL 政策的工作方式,请参阅 SSL 政策概念

使用 SSL 政策

您可以在创建 HTTPS 或 SSL 负载平衡器时,或者在创建负载平衡器之后的任意时候,使用 gcloud 命令行工具启用 SSL 政策。

gcloud compute ssl-policies create NAME \
    --profile COMPATIBLE|MODERN|RESTRICTED|CUSTOM \
    --global \
    [--min-tls-version 1.0|1.1|1.2] \
    [--custom-features FEATURES]

创建 SSL 政策

您可以在创建 HTTPS 或 SSL 负载平衡器时,或者在创建负载平衡器之后的任意时候,使用控制台或 gcloud 命令行工具创建 SSL 政策。

您可以创建使用 Google 管理的配置文件或自定义配置文件的 SSL 政策。

gcloud 命令行工具的语法

gcloud 命令行工具使用以下语法创建 SSL 政策:

gcloud compute ssl-policies create NAME \
    --profile COMPATIBLE|MODERN|RESTRICTED|CUSTOM \
    --global \
    [--min-tls-version 1.0|1.1|1.2] \
    [--custom-features FEATURES]

创建使用 Google 管理的配置文件的 SSL 政策

Console

要创建使用 Google 管理的配置文件的 SSL 政策,请按照以下说明操作:

  1. 转到 Google Cloud Console 中的“SSL 政策”页面。
    转到“SSL 政策”页面
  2. 点击创建政策。此时会显示创建政策页面。
  3. 输入一个名称
  4. 选择最低的 TLS 版本
  5. 配置文件下方,选择兼容新型受限。 相应配置文件的已启用的功能已停用的功能会显示在页面的右侧。
  6. 如果存在一个负载平衡器,并且您要向其中附加政策,请点击添加目标,然后选择转发规则作为 SSL 政策的目标。如果需要,可添加更多目标。
  7. 点击创建

gcloud

常规语法如下:

gcloud compute ssl-policies create [SSL_POLICY] \
    --global \
    --profile [COMPATIBLE|MODERN|RESTRICTED]   \
    --min-tls-version 1.0|1.1|1.2

以下命令会创建使用新型配置文件的 SSL 政策:

gcloud compute ssl-policies create my_ssl_policy \
    --global \
    --profile MODERN    \
    --min-tls-version 1.0

接着您会看到以下内容:

Created                             [https://www.googleapis.com/compute/v1/projects/project/global/sslpolicies/policy_name].
PROFILE       MIN_TLS_VERSION
MODERN        TLS_1_0

ENABLED FEATURES:
TLS_ECDHE_ECDSA_WITH_CHACHA20_POLY1305_SHA256
TLS_ECDHE_RSA_WITH_CHACHA20_POLY1305_SHA256
TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256
TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256
TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384
TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384
TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA
TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA
TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA
TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA

创建使用自定义配置文件的 SSL 政策

控制台

如需创建使用自定义配置文件的 SSL 政策,请按照以下说明操作:

  1. 转到 Google Cloud Console 中的“SSL 政策”页面。
    转到“SSL 政策”页面
  2. 点击创建政策。此时会显示创建政策页面。
  3. 输入一个名称
  4. 选择最低的 TLS 版本
  5. 配置文件下方,选择自定义。 所有功能都会在页面右侧显示为已停用的功能
  6. 功能列表中,选择要启用的每个加密套件。 您启用的加密套件会被列为已启用的功能
  7. 如果存在一个负载平衡器,并且您要向其中附加政策,请点击添加目标,然后选择转发规则作为 SSL 政策的目标。如果需要,可添加更多目标。
  8. 点击创建

gcloud

以下命令创建了一个使用自定义配置文件并指定将最低 TLS 版本指定为 1.2 的 SSL 政策,并创建了功能 TLS_ECDHE_ECDSA_WITH_CHACHA20_POLY1305_SHA256TLS_ECDHE_RSA_WITH_CHACHA20_POLY1305_SHA256

在创建使用自定义配置文件的 SSL 政策时,仅支持您在 create 命令中指定的功能,其他功能均不受支持。

gcloud compute ssl-policies create NAME \
    --global \
    --profile CUSTOM --min-tls-version 1.2 \
    --custom-features "TLS_ECDHE_ECDSA_WITH_CHACHA20_POLY1305_SHA256,"\
    "TLS_ECDHE_RSA_WITH_CHACHA20_POLY1305_SHA256"

列出 SSL 政策功能

您可以使用控制台或 gcloud 命令行工具列出所有 SSL 政策功能。

控制台

  1. 转到 Google Cloud Console 中的“SSL 政策”页面。
    转到“SSL 政策”页面
  2. 点击您想要查看其功能的政策的名称。 此时页面右侧将显示已启用和已停用的加密套件。

gcloud

如需列出 SSL 政策中的可用功能,请使用以下命令:

gcloud compute ssl-policies list-available-features

修改 SSL 政策

您可以使用控制台或 gcloud 命令行工具修改 SSL 政策。

控制台

  1. 转到 Google Cloud Console 中的“SSL 政策”页面。
    转到“SSL 政策”页面
  2. 点击要修改的政策的名称。
  3. 点击修改
  4. 根据需要进行更改。
  5. 点击保存

gcloud

要修改现有的 SSL 政策,请传递与要更新的字段对应的任何或所有标记。请注意,未指定的字段不会更新。

如果您要更新功能,则先前启用的功能会被删除,并且会替换为您指定的新功能。

gcloud compute ssl-policies update NAME \
    [--profile COMPATIBLE|MODERN|RESTRICTED|CUSTOM] \
    [--min-tls-version 1.0|1.1|1.2] \
    [--custom-features FEATURES]

使用 SSL 政策创建目标 SSL 代理或 HTTPS 代理

您可以使用 SSL 政策创建目标 SSL 代理:

gcloud compute target-ssl-proxies create NAME \
    --backend-service BACKEND_SERVICE_NAME \
    --ssl-certificate SSL_CERTIFICATE_NAME \
    [--ssl-policy SSL_POLICY_NAME]

您可以使用 SSL 政策为外部 HTTP(S) 负载平衡器创建目标 HTTPS 代理:

gcloud compute target-https-proxies create NAME \
    --ssl-certificate SSL_CERTIFICATE_NAME \
    --url-map URL_MAP_NAME \
    [--ssl-policy SSL_POLICY_NAME]

将现有 SSL 政策附加到现有目标 SSL 代理或 HTTPS 代理

您可以使用控制台或 gcloud 命令行工具,将现有 SSL 政策附加到现有目标 SSL 代理或 HTTPS 代理。

控制台

  1. 转到 Google Cloud Console 中的负载平衡页面。
    转到“负载平衡”页面
  2. 点击要修改的 HTTPS 或 SSL 负载平衡器的名称。
  3. 点击修改
  4. 点击前端配置
  5. 点击要向其分配新的或不同 SSL 政策的前端。
  6. SSL 政策下方,选择要更新的 SSL 政策。
  7. 选择其他 SSL 政策。
  8. 点击完成
  9. 点击更新。此时将显示负载平衡器详情页面。

gcloud

可使用以下命令将现有 SSL 政策附加到 SSL 代理或 HTTPS 负载平衡器:

gcloud compute target-ssl-proxies update NAME \
    --ssl-policy SSL_POLICY_NAME
gcloud compute target-https-proxies update NAME \
    --ssl-policy SSL_POLICY_NAME

如果您在更新目标代理时(例如,更新 SSL 证书时)未提供 --ssl-policy 标志或 --clear-ssl-policy 标志,则 SSL 政策将保持不变。从现有目标 SSL 代理或 HTTPS 代理中删除 SSL 政策中介绍了 --clear-ssl-policy 标志。

从现有目标 SSL 代理或 HTTPS 代理中删除 SSL 政策

您可以使用控制台或 gcloud 命令行工具,从现有的目标 SSL 代理或目标 HTTPS 代理中删除 SSL 政策。

控制台

  1. 转到 Google Cloud Console 中的负载平衡页面。
    转到“负载平衡”页面
  2. 点击要修改的 HTTPS 或 SSL 负载平衡器的名称。
  3. 点击修改
  4. 点击前端配置
  5. 点击要从中删除 SSL 政策的前端。
  6. SSL 政策下方,选择要更新的 SSL 政策。
  7. 选择其他 SSL 政策。
  8. 点击完成
  9. 点击更新。此时将显示负载平衡器详情页面。

gcloud

可使用以下命令从 SSL 代理或 HTTPS 负载平衡器中移除 SSL 政策,其中 NAME 是目标 SSL 或 HTTPS 代理的名称。 如果未将其他 SSL 政策附加到目标代理,则负载平衡器将使用默认 SSL 政策。请注意,使用 --clear-ssl-policy 标志相当于将 SSL 政策替换为默认 SSL 政策。

gcloud compute target-ssl-proxies update NAME \
    --clear-ssl-policy
gcloud compute target-https-proxies update NAME \
    --clear-ssl-policy

如果您在更新命令中提供 --clear-ssl-policy 标志,SSL 政策将从代理中移除。

如果您在更新目标代理时(例如,更新 SSL 证书时)未提供 --clear-ssl-policy 标志或 --ssl-policy 标志,则 SSL 政策将保持不变。将现有 SSL 政策附加到现有目标 SSL 代理或 HTTPS 代理中介绍了 --ssl-policy 标志。

限制

  • 您最多可以为每个项目配置 10 个 SSL 政策。
  • 您不能为每个代理配置多个 SSL 政策。

后续步骤