本文档介绍了使用 Secure Web Proxy 所需的初始设置步骤。
获取 IAM 角色和权限
如需获得预配安全 Web 代理实例所需的权限,请让管理员向您授予项目的以下 IAM 角色:
- 如需配置政策和预配安全 Web 代理实例:
Compute Network Admin 角色
(
roles/compute.networkAdmin) - 如需上传显式 Secure Web Proxy TLS 证书:
Certificate Manager Editor 角色
(
roles/certificatemanager.editor)
如需详细了解如何授予角色,请参阅 管理对项目、文件夹和组织的访问权限。
您也可以通过自定义角色或其他预定义角色来获取所需的权限。
可选:如果您有一组用户负责管理您的
Compute Engine 组织安全政策,请向他们授予
Compute Organization Security Policy Admin 角色
(roles/compute.orgSecurityPolicyAdmin)。
如需详细了解项目角色和权限,请参阅以下内容:
创建 Google Cloud 项目
如需创建或选择项目,请按以下步骤操作: Google Cloud
控制台
在 Google Cloud 控制台中,前往项目选择器页面。
创建一个项目或选择现有项目。 Google Cloud
gcloud
您可以按照以下步骤之一操作:
如需创建 Google Cloud 项目,请使用
gcloud projects create命令。gcloud projects create PROJECT_ID将
PROJECT_ID替换为唯一的项目 ID。如需选择现有 Google Cloud 项目,请使用
gcloud config set命令。gcloud config set project PROJECT_ID
启用结算功能
确保您的 Google Cloud 项目已启用结算功能。如需了解详情,请参阅 为项目启用、停用或更改结算功能 和验证项目的结算状态。
启用所需的 API
控制台
在 Google Cloud 控制台中,前往启用对 API 的访问权限页面。
按照说明启用以下必需的 API:Compute Engine API、Certificate Manager API、Network Services API 和 Network Security API。
可选:如果您计划为代理配置 TLS 检查 ,则必须启用 Certificate Authority Service API。
gcloud
如需启用所需的 Google Cloud API,请使用
gcloud services enable命令。
gcloud services enable \
compute.googleapis.com \
certificatemanager.googleapis.com \
networkservices.googleapis.com \
networksecurity.googleapis.com \
privateca.googleapis.com
可选:如果您计划为代理配置 TLS 检查,则必须启用 Certificate Authority Service (privateca.googleapis.com) API。
创建 VPC 子网
在 VPC 网络中为要部署安全 Web 代理实例的每个区域创建一个子网。如果您之前创建了子网,则可以通过将 purpose 参数设置为 PRIVATE,将其重新用作 VPC 子网。
gcloud
如需创建子网,请使用
gcloud compute networks subnets create 命令。
gcloud compute networks subnets create VPC_SUBNET_NAME \
--purpose=PRIVATE \
--region=REGION \
--network=NETWORK_NAME \
--range=IP_RANGE
替换以下内容:
VPC_SUBNET_NAME:VPC 子网的名称REGION:要在其中部署 VPC 子网的区域NETWORK_NAME:VPC 网络的名称IP_RANGE:子网范围,例如10.10.10.0/24
创建代理子网
为要部署 Secure Web Proxy 实例的每个区域创建一个代理子网。
我们建议您创建大小为 /23 的子网,该子网最多可以存储 512 个代理专用地址。Secure Web Proxy 使用此范围来分配专用唯一 IP 地址池。此预留池有助于确保代理有足够的容量来处理伸缩,并安全地与 VPC 网络中的 Cloud NAT 和目标进行交互。
gcloud
如需创建代理子网,请使用
gcloud compute networks subnets create 命令。
gcloud compute networks subnets create PROXY_SUBNET_NAME \
--purpose=REGIONAL_MANAGED_PROXY \
--role=ACTIVE \
--region=REGION \
--network=NETWORK_NAME \
--range=IP_RANGE
替换以下内容:
PROXY_SUBNET_NAME:代理子网的名称REGION:要在其中部署代理子网的区域NETWORK_NAME:VPC 网络的名称IP_RANGE:子网范围,例如192.168.0.0/23
部署 TLS 证书
由于安全 Web 代理的默认和最基本功能(即不进行深度检查的政策 执行)不需要传输层 安全协议 (TLS) 证书,因此 TLS(以前称为 SSL) 证书对于安全 Web 代理是可选的。
只有当客户端(网络中的工作负载、应用或设备)使用 HTTPS 连接到代理时,Secure Web Proxy 才需要 TLS 证书。如需了解详情,请参阅 SSL 证书概览。
如需使用 Certificate Manager 部署 TLS 证书,请按照以下任一方法操作:
以下示例展示了如何使用 Certificate Manager 部署自行管理的区域级证书:
创建 TLS 证书。
openssl req -x509 -newkey rsa:2048 \ -keyout KEY_PATH \ -out CERTIFICATE_PATH -days 365 \ -subj '/CN=SWP_HOST_NAME' -nodes -addext \ "subjectAltName=DNS:SWP_HOST_NAME"替换以下内容:
KEY_PATH:用于保存私钥的路径,例如~/key.pemCERTIFICATE_PATH:用于保存证书的路径,例如~/cert.pemSWP_HOST_NAME:Secure Web Proxy 实例的主机名,例如myswp.example.com