La plataforma de edge cloud de Fastly

Volver al blog

Síguenos y suscríbete

Sólo disponible en inglés

Por el momento, esta página solo está disponible en inglés. Lamentamos las molestias. Vuelva a visitar esta página más tarde.

Implementación del WAF de última generación de Fastly con las extensiones de servicios de Google Cloud para proteger el tráfico a gran escala

Alisha Stull

Partner Engineer, Google Cloud

James Nguyen

Product Manager

Víctor Carvajal

Senior Software Engineer

Una ilustración de una mano sosteniendo un megáfono con iconos de escudo y candado a todo volumen

¿Y si tu equilibrador de carga pudiera detener los ataques antes incluso de que tu aplicación web los detecte?

Ahora, las extensiones de servicios de Google Cloud permiten inspeccionar el tráfico en tiempo real directamente dentro del flujo del equilibrador de carga y, al combinarlas con el WAF de última generación de Fastly, las organizaciones pueden conseguir una seguridad de nivel empresarial sin perder rendimiento.

En este artículo, vamos a analizar cómo funciona esta potente integración y por qué es importante para las arquitecturas modernas en la nube. Además, te guiaremos paso a paso por un despliegue práctico que puedes poner en marcha hoy mismo.

Impacto real: rendimiento y protección van de la mano

Veamos qué significa esto en la práctica con un ejemplo real:

El escenario: una plataforma de comercio electrónico que funciona en Google Kubernetes Engine (GKE) y que atiende 10 000 solicitudes por segundo en varias regiones.

El desafío: proteger contra los ataques de relleno de credenciales, la inyección SQL y el tráfico de bots, sin dejar de mantener tiempos de respuesta por debajo de los 200 ms.

La solución: desplegar el WAF de última generación como extensión del servicio, que permite:

  • Decisiones de seguridad a latencia cero a nivel del equilibrador de carga

  • Escalado automático con tu infraestructura de GKE actual 

  • Despliegue regional para un rendimiento óptimo

  • Configuración de acceso abierto en caso de error para garantizar la disponibilidad durante el mantenimiento del agente

Cómo funciona el WAF de última generación de Fastly con las extensiones de servicios de Google Cloud

Las extensiones de servicios de Google Cloud ofrecen dos formas de insertar lógica personalizada: los complementos y los textos destacados.

Los textos destacados te permiten usar Cloud Load Balancing para realizar llamadas gRPC de Envoy a los servicios de Google Cloud y a los servicios gestionados por el usuario durante el procesamiento de datos.

El WAF de última generación de Fastly puede ejecutarse como servidor gRPC de uso general en máquinas virtuales de computación gestionadas por el usuario, en pods de GKE en GKE Multi-Cloud o en entornos locales.

Análisis en profundidad de la implementación: de cero a protegida

La integración aprovecha el protocolo de procesamiento externo (ExtProc) de Envoy a través de gRPC, lo que permite al WAF inspeccionar el tráfico y actuar ante situaciones críticas:

1. REQUEST_HEADERS: analiza el encabezado de la petición entrante comparándola con la información sobre amenazas.

2. REQUEST_BODY: transmite e inspecciona los datos de la carga útil en busca de contenido malicioso. 

3. RESPONSE_HEADERS: supervisa las respuestas salientes para detectar fugas de datos.

Esta capacidad de inspección detallada permite identificar y bloquear las amenazas antes de que lleguen al backend de tu aplicación.

La implementación desde cero implica crear y configurar un equilibrador de carga de aplicaciones que admita extensiones.

Para implementar un servicio backend de texto destacado usando el agente WAF de última generación, puedes usar nuestra imagen de docker ya preparada. En los fragmentos de terminal que verás a continuación, vamos a crear una instancia de máquina virtual para alojar, configurar e implementar el agente WAF de última generación en la red de los equilibradores de carga.

Puedes encontrar información más detallada en la página de documentación de Fastly.

gcloud compute instances create callouts-vm \
 --zone=$ZONE \
 --network=lb-network \
 --subnet=backend-subnet \
 --machine-type=e2-medium \
 --image-family=cos-stable \
 --image-project=cos-cloud \
 --tags=allow-ssh,load-balanced-backend \
 --metadata-from-file=startup-script=startup-script-tls.sh
#!/bin/bash

# Create certificate directory
mkdir -p /etc/ssl/certs/sigsci

# Generate self-signed certificates for the gRPC service
openssl req -x509 -newkey rsa:4096 \
 -keyout /etc/ssl/certs/sigsci/key.pem \
 -out /etc/ssl/certs/sigsci/cert.pem \
 -days 365 -nodes \
 -subj "/C=US/ST=CA/L=SF/O=Fastly/CN=ext11.com"

# Set proper permissions for the sigsci user inside the container
chmod 644 /etc/ssl/certs/sigsci/key.pem
chmod 644 /etc/ssl/certs/sigsci/cert.pem

# Start Signal Sciences agent with TLS configuration
docker run -d \
 --name sigsci-agent \
 --restart unless-stopped \
 -p 443:443 \
 -v /etc/ssl/certs/sigsci:/etc/ssl/certs/sigsci:ro \
 -e SIGSCI_ACCESSKEYID=<YOUR ACCESS KEY> \
 -e SIGSCI_SECRETACCESSKEY=<YOUR SECRET KEY> \
 -e SIGSCI_ENVOY_GRPC_ADDRESS=0.0.0.0:443 \
 -e SIGSCI_ENVOY_EXTPROC_ENABLED=true \
 -e SIGSCI_ENVOY_GRPC_CERT=/etc/ssl/certs/sigsci/cert.pem \
 -e SIGSCI_ENVOY_GRPC_KEY=/etc/ssl/certs/sigsci/key.pem \
 -e SIGSCI_DEBUG_LOG_VERBOSITY=3 \
  signalsciences/sigsci-agent:latest

# Log startup completion
echo "Signal Sciences agent with TLS started at $(date)" >> /var/log/startup.log

¿Quieres ponerlo en marcha?

La integración del WAF de última generación de Fastly con las extensiones de servicios de Google Cloud ofrece una opción muy interesante para las empresas que se toman en serio la seguridad en la nube. La combinación de protección contra amenazas en tiempo real, implementación nativa en la nube y rendimiento a escala empresarial hace que esta arquitectura sea ideal para los entornos de producción más exigentes.

El futuro de la seguridad de las aplicaciones web ya está aquí, y está totalmente integrado en tu infraestructura en la nube. Es hora de dar el paso.

¿Quieres saber más? Echa un vistazo a nuestra guía de configuración completa para conocer los pasos detallados de implementación y los consejos para solucionar problemas.

¿Listo para empezar?

Ponte en contacto con nosotros