En esta guía se muestra cómo usar listas de URLs para definir las URLs a las que pueden acceder tus usuarios.
Antes de empezar
Completa los pasos de configuración inicial.
Comprueba que tienes instalada la versión 406.0.0 o una posterior de la CLI de Google Cloud:
gcloud version | head -n1
Si tienes instalada una versión anterior de la CLI de gcloud, actualízala:
gcloud components update --version=406.0.0
Crear una instancia de proxy web seguro con una política vacía
Para crear una instancia de proxy web seguro, primero crea una política de seguridad vacía y, a continuación, crea un proxy web.
Crear una política de seguridad vacía
Consola
En la Google Cloud consola, ve a la página Políticas de SWP.
Haz clic en
Crear una política.Introduce el nombre de la política que quieras crear, como
myswppolicy
.Introduce una descripción de la política, como
My new swp policy
.En la lista Regiones, selecciona la región en la que quieras crear la política.
Haz clic en Crear.
Cloud Shell
Usa el editor de texto que prefieras para crear el archivo
POLICY_FILE
.yaml. SustituyePOLICY_FILE
por el nombre que quieras darle al archivo de la política.Añade lo siguiente al archivo YAML que has creado:
name: projects/PROJECT_NAME/locations/REGION/gatewaySecurityPolicies/POLICY_NAME description: POLICY_DESCRIPTION
Haz los cambios siguientes:
PROJECT_NAME
: el nombre de tu proyectoREGION
: la región a la que se aplica esta políticaPOLICY_NAME
: el nombre de la política que vas a crearPOLICY_DESCRIPTION
: la descripción de la política que vas a crear
Importa la política de seguridad:
gcloud network-security gateway-security-policies import POLICY_NAME \ --source=POLICY_FILE.yaml \ --location=REGION
Crear un proxy web
Consola
En la Google Cloud consola, ve a la página Proxies web.
Haz clic en
Crear un proxy web seguro.Introduce el nombre del proxy web que quieras crear, como
myswp
.Introduce una descripción del proxy web, como
My new swp
.En la lista Regiones, selecciona la región en la que quieras crear el proxy web.
En la lista Red, selecciona la red en la que quieras crear el proxy web.
En la lista Subred, selecciona la subred en la que quieras crear el proxy web.
Opcional: Introduce la dirección IP del proxy web seguro. Puedes introducir una dirección IP del intervalo de direcciones IP de Secure Web Proxy que se encuentre en la subred que has creado en el paso anterior. Si no introduces la dirección IP, tu instancia de Secure Web Proxy elegirá automáticamente una dirección IP de la subred seleccionada.
En la lista Certificado, selecciona el certificado que quieras usar para crear el proxy web.
En la lista Política, seleccione la política que ha creado para asociar el proxy web.
Haz clic en Crear.
Cloud Shell
Usa el editor de texto que prefieras para crear el archivo
GATEWAY_FILE
.yaml. SustituyeGATEWAY_FILE
por el nombre de archivo que quieras para el archivo de proxy web.Añade lo siguiente al archivo YAML que has creado:
name: projects/PROJECT_NAME/locations/REGION/gateways/GATEWAY_NAME type: SECURE_WEB_GATEWAY ports: [GATEWAY_PORT_NUMBERS] certificateUrls: [CERTIFICATE_URLS] gatewaySecurityPolicy: projects/PROJECT_NAME/locations/REGION/gatewaySecurityPolicies/POLICY_NAME network: projects/PROJECT_NAME/global/networks/NETWORK_NAME subnetwork: projects/PROJECT_NAME/regions/REGION/subnetworks/SUBNET_NAME addresses: [GATEWAY_IP_ADDRESS] scope: samplescope
Haz los cambios siguientes:
GATEWAY_NAME
: el nombre de esta instanciaGATEWAY_PORT_NUMBERS
: una lista de números de puerto de esta pasarela, como[80,443]
CERTIFICATE_URLS
: una lista de URLs de certificados SSLSUBNET_NAME
: el nombre de la subred que contieneGATEWAY_IP_ADDRESS
GATEWAY_IP_ADDRESS
: una lista opcional de direcciones IP de tus instancias de Secure Web Proxy en las subredes de proxy que has creado anteriormente en los pasos de configuración inicialSi decides no incluir direcciones IP, omite el campo para que el proxy web elija una dirección IP por ti.
Crea una instancia de proxy web seguro:
gcloud network-services gateways import GATEWAY_NAME \ --source=GATEWAY_FILE.yaml \ --location=REGION
Probar la conectividad
Para probar la conectividad, usa el comando curl
desde cualquier VM de tu red de nube privada virtual (VPC):
curl -x https://GATEWAY_IP_ADDRESS:PORT_NUMBER https://www.example.com --proxy-insecure
Se espera un error 403 Forbidden
.
Crear una lista de URLs
Para crear una lista de URLs y añadir una regla, completa las tareas que se indican en las siguientes secciones.
Crear y configurar una lista de URLs
Consola
En la Google Cloud consola, ve a la página Listas de URLs.
Haz clic en
Crear una lista de URLs.Introduce un nombre para la lista de URLs que quieras crear, como
myurllist
.Introduce una descripción de la lista de URLs, como
My new URL list
.En la lista Regiones, selecciona la región en la que quieras crear la lista de URLs.
Haga clic en Subir listas para subir la lista de hosts, URLs o patrones que quiere que coincidan. Para obtener más información, consulta la referencia de sintaxis de UrlList.
Haz clic en Crear.
Cloud Shell
Usa el editor de texto que prefieras para crear el archivo URL_LIST_FILE
.yaml. Replace
URL_LIST_FILE` con el nombre que quieras.name: projects/PROJECT_ID/locations/REGION/urlLists/URL_LIST_NAME values: URL_LIST
Haz los cambios siguientes:
PROJECT_ID
: tu número de proyectoREGION
: la región a la que se aplica esta lista de URLsURL_LIST_NAME
: el nombre de la lista de URLs que va a crearURL_LIST
: la lista de hosts, URLs o patrones que deben coincidir.
Para obtener más información, consulta la referencia de sintaxis de UrlList.
A continuación, se muestra un ejemplo de archivo de reglas de lista de URLs:
name: projects/PROJECT_ID/locations/REGION/urlLists/example-org-allowed-list values: - www.example.com - about.example.com - "*.google.com" - "github.com/example-org/*"
El carácter asterisco (
*
) tiene un significado especial en YAML. Por lo tanto, debes entrecomillar las URLs que incluyan el carácter*
.Añade la lista de URLs para que se pueda hacer referencia a ella en una regla de Secure Web Proxy:
gcloud network-security url-lists import URL_LIST_NAME \ --location=REGION \ --project=PROJECT_ID \ --source=URL_LIST_FILE.yaml
Añadir una regla
Consola
En la Google Cloud consola, ve a la página Políticas de SWP.
En el menú del selector de proyectos, selecciona el ID de tu organización o la carpeta que contenga tu política.
Haz clic en el nombre de la política.
Haz clic en
Añadir regla.Rellena los campos de la regla:
- Nombre
- Descripción
- Status
- Prioridad: el orden de evaluación numérico de la regla. Las reglas se evalúan de mayor a menor prioridad, donde
0
es la prioridad más alta. - En la sección Acción, especifica si las conexiones que coincidan con la regla se permiten (Permitir) o se deniegan (Denegar).
En la sección Coincidencia de sesión, especifique el nombre de la lista de URLs que ha creado anteriormente. Por ejemplo:
sessionMatcher: "inUrlList(host(), 'projects/PROJECT_ID/locations/REGION/urlLists/URL_LIST_NAME')"
Para habilitar la inspección TLS, selecciona Habilitar inspección TLS.
En la sección Coincidencia de aplicación, especifica los criterios para que coincida la solicitud.
Haz clic en Crear.
Haz clic en Añadir regla para añadir otra regla.
Haz clic en Crear para crear la política.
Cloud Shell
Usa el editor de texto que prefieras para crear el archivo
RULE_FILE
.yaml. SustituyeRULE_FILE
por el nombre de archivo que quieras.name: projects/PROJECT_ID/locations/REGION/gatewaySecurityPolicies/POLICY_NAME/rules/RULE_NAME basicProfile: ALLOW enabled: true priority: PRIORITY_VALUE description: RULE_DESCRIPTION sessionMatcher: SESSION_CEL_EXPRESSION applicationMatcher: APPLICATION_CEL_EXPRESSION
Haz los cambios siguientes:
PROJECT_ID
: tu número de proyectoREGION
: la región a la que se aplica esta reglaPOLICY_NAME
: el nombre de unGatewaySecurityPolicy
que ya se haya usado en tu instancia de Secure Web ProxyRULE_NAME
: un nombre para elGatewaySecurityPolicyRule
que vas a crearPRIORITY_VALUE
: valor de prioridad de esta regla. Los números más bajos corresponden a prioridades más altas.RULE_DESCRIPTION
: una descripción de la política que vas a crearSESSION_CEL_EXPRESSION
: una expresión de lenguaje de expresión común (CEL) para la sesiónAPPLICATION_CEL_EXPRESSION
: una expresión CEL de la aplicación
A continuación, se muestra un ejemplo de archivo de reglas:
name: projects/PROJECT_ID/locations/REGION/urlLists/allow-repos basicProfile: ALLOW enabled: true priority: 100 description: Allow access to our list of known code repos. sessionMatcher: "inUrlList(host(), 'projects/PROJECT_ID/locations/REGION/urlLists/URL_LIST_NAME')"
Añade una regla de proxy web seguro con la lista de URLs que has creado anteriormente:
gcloud network-security gateway-security-policies rules import RULE_NAME \ --location=REGION \ --project=PROJECT_ID \ --source=RULE_FILE.yaml \ --gateway-security-policy=POLICY_NAME
Probar la conectividad
Para probar la conectividad, usa el siguiente comando curl
:
curl -x https://SWP_IP_ADDRESS:SWP_PORT_NUMBER HTTP_TEST_ADDRESS
--proxy-insecure
Haz los cambios siguientes:
SWP_IP_ADDRESS
: la dirección IP de tu proxy webSWP_PORT_NUMBER
: el número de puerto de tu proxy web, como443
HTTP_TEST_ADDRESS
: una dirección que se va a probar, comohttps://www.example.com
, que coincida con una entrada de host o URL de tuURL_LIST
La solicitud debe devolver una respuesta correcta.