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 comenzar
Completa los pasos iniciales de la configuración.
Verifica que tengas instalada la versión 406.0.0 o posterior de Google Cloud CLI:
gcloud version | head -n1
Si tienes instalada una versión anterior de gcloud CLI, actualízala:
gcloud components update --version=406.0.0
Crea 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, luego, crea un proxy web.
Crea una política de seguridad vacía
Consola
En la consola de Google Cloud, ve a la página Seguridad de red.
Haz clic en Proxy web seguro.
Haz clic en la pestaña Políticas.
Haz clic en Crear una política.
Ingresa un nombre para la política que deseas crear, como
myswppolicy
.Ingresa una descripción de la política, como
My new swp policy
.En la lista Regiones, selecciona la región en la que deseas crear la política.
Haz clic en Crear.
Cloud Shell
Usa tu editor de texto preferido para crear el archivo
POLICY_FILE
.yaml. ReemplazaPOLICY_FILE
por el nombre de archivo que deseas para el archivo de políticas.Agrega lo siguiente al archivo YAML que creaste:
name: projects/PROJECT_NAME/locations/REGION/gatewaySecurityPolicies/POLICY_NAME description: POLICY_DESCRIPTION
Reemplaza lo siguiente:
PROJECT_NAME
: nombre del proyecto.REGION
: Es la región a la que se aplica esta política.POLICY_NAME
: Es el nombre de la política que estás creando.POLICY_DESCRIPTION
: Es la descripción de la política que creas.
Importa la política de seguridad:
gcloud network-security gateway-security-policies import POLICY_NAME \ --source=POLICY_FILE.yaml \ --location=REGION
Crea un proxy web
Consola
En la consola de Google Cloud, ve a la página Seguridad de red.
Haz clic en Proxy web seguro.
Haz clic en Configurar un proxy web.
Ingresa un nombre para el proxy web que deseas crear, como
myswp
.Ingresa una descripción del proxy web, como
My new swp
.En la lista Regiones, selecciona la región en la que deseas crear el proxy web.
En la lista Red, selecciona la red en la que deseas crear el proxy web.
En la lista Subred, selecciona la subred en la que deseas crear el proxy web.
Ingresa la dirección IP del proxy web.
En la lista Certificado, selecciona el certificado que deseas usar para crear el proxy web.
En la lista Política, selecciona la política que creaste para asociar el proxy web.
Haz clic en Crear.
Cloud Shell
Usa tu editor de texto preferido para crear el archivo
GATEWAY_FILE
.yaml. ReemplazaGATEWAY_FILE
por el nombre de archivo que deseas para el archivo de proxy web.Agrega lo siguiente al archivo YAML que creaste:
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
Reemplaza lo siguiente:
GATEWAY_NAME
: Es el nombre de esta instancia.GATEWAY_PORT_NUMBERS
: Es una lista de números de puerto para esta puerta de enlace, como[80,443]
.CERTIFICATE_URLS
: Una lista de URLs de certificados SSLSUBNET_NAME
: Es el nombre de la subred que contieneGATEWAY_IP_ADDRESS
.GATEWAY_IP_ADDRESS
: Es una lista opcional de direcciones IP para las instancias de proxy web seguro dentro de las subredes de proxy creadas con anterioridad en los pasos de configuración iniciales.Si decides no enumerar las 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
Pruebe la conectividad
Para probar la conectividad, usa el comando curl
desde cualquier VM dentro 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 agregar una regla, complete las tareas de las siguientes secciones.
Crea y configura una lista de URLs
Consola
En la consola de Google Cloud, ve a la página Seguridad de red.
Haz clic en Proxy web seguro.
Haz clic en la pestaña Listas de URLs.
Haz clic en Crear una lista de URLs.
Ingresa un nombre para la lista de URLs que deseas crear, como
myurllist
.Ingresa una descripción de la lista de URLs, como
My new URL list
.En la lista Regiones, selecciona la región en la que deseas crear la lista de URL.
Haz clic en Subir listas para subir la lista de hosts, URL o patrones que deben coincidir. Para obtener más información, consulta la referencia de sintaxis de listas de URLs.
Haz clic en Crear.
Cloud Shell
Usa tu editor de texto preferido para crear el archivo URL_LIST_FILE
.yaml. Replace
URL_LIST_FILE` con el nombre de archivo que desees.name: projects/PROJECT_ID/locations/REGION/urlLists/URL_LIST_NAME values: URL_LIST
Reemplaza lo siguiente:
PROJECT_ID
: Es el número de tu proyecto.REGION
: Es la región a la que se aplica esta lista de URLs.URL_LIST_NAME
: Es un nombre para la lista de URLs que creas.URL_LIST
: La lista de hosts, URLs o patrones con los que coincidir
Para obtener más información, consulta la Referencia de sintaxis de listas de URLs.
El siguiente es 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 de asterisco (
*
) tiene un significado especial en YAML. Por lo tanto, debes encerrar las URLs que incluyan un carácter*
entre comillas.Agrega la lista de URL para que una regla de proxy web seguro pueda hacer referencia a ella:
gcloud network-security url-lists import URL_LIST_NAME \ --location=REGION \ --project=PROJECT_ID \ --source=URL_LIST_FILE.yaml
Agregar una regla
Consola
En la consola de Google Cloud, ve a la página Seguridad de red.
Haz clic en Proxy web seguro.
En el menú de selección de proyectos, selecciona el ID de la organización o la carpeta que contiene la política.
Haz clic en el nombre de la política.
Haz clic en Agregar regla.
Propaga los campos de la regla:
- Nombre
- Descripción
- Estado
- Prioridad: El orden de evaluación numérico de la regla. Las reglas se evalúan de mayor a menor prioridad, en la que
0
es la prioridad más alta. - En la sección Acción, especifica si las conexiones que coinciden con la regla se permiten (Permitir) o si se rechazan (Rechazar).
En la sección Coincidencia de sesión, especifica el nombre de la lista de URL que creaste antes. Por ejemplo:
sessionMatcher: "inUrlList(host(), 'projects/PROJECT_ID/locations/REGION/urlLists/URL_LIST_NAME')"
Para habilitar la inspección de TLS, selecciona Habilitar inspección de TLS.
En la sección Application Match, especifica los criterios para hacer coincidir la solicitud.
Haz clic en Crear.
Haz clic en Agregar regla para agregar otra regla.
Haz clic en Crear para crear la política.
Cloud Shell
Usa tu editor de texto preferido para crear el archivo
RULE_FILE
.yaml. ReemplazaRULE_FILE
por el nombre del 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
Reemplaza lo siguiente:
PROJECT_ID
: Es el número de tu proyecto.REGION
: Es la región a la que se aplica esta regla.POLICY_NAME
: Es el nombre de unGatewaySecurityPolicy
existente que usa tu instancia de proxy web seguro.RULE_NAME
: Es un nombre para elGatewaySecurityPolicyRule
que estás creando.PRIORITY_VALUE
: Es un valor de prioridad para esta regla. Los números más bajos corresponden a las prioridades más altas.RULE_DESCRIPTION
: Es una descripción para la política que crearás.SESSION_CEL_EXPRESSION
: Es una expresión de Common Expression Language (CEL) para la sesión.APPLICATION_CEL_EXPRESSION
: Es una expresión en CEL para la aplicación.
El siguiente es 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')"
Agrega una regla de proxy web seguro con la lista de URLs que creaste 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
Pruebe 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
Reemplaza lo siguiente:
SWP_IP_ADDRESS
: Es la dirección IP de tu proxy web.SWP_PORT_NUMBER
: Es el número de puerto de tu proxy web, como443
.HTTP_TEST_ADDRESS
: Es una dirección para probar, comohttps://www.example.com
, que coincide con un host o una entrada de URL en tuURL_LIST
.
La solicitud debería mostrar una respuesta exitosa.