Configuración de alertas en AWS CloudWatch

Clase 29 de 30Curso de Ciberseguridad para Desarrollo Web

Resumen

Monitorea la seguridad con confianza: integra logs, métricas y alertas para actuar a tiempo. Aquí verás cómo configurar una alarma en AWS CloudWatch para API Gateway, hacerla accionable, y validar su envío por correo con SNS. Además, entenderás el rol de los postmortems y la causa raíz para aprender y mejorar continuamente.

¿Cómo crear alertas accionables en AWS CloudWatch?

Las alertas deben avisarte de comportamientos inesperados y permitir tomar acción. Pueden llegar por mensaje de texto, correo, apps como Opzini o a un canal de Slack. Cuando el impacto es alto o hay un outcome no esperado, se habilitan postmortems para aprender y evitar recurrencias.

¿Por qué las alertas deben ser accionables?

  • Debes poder decidir y ejecutar una acción concreta con la información recibida.
  • Sirven para detectar anomalías y responder rápido.
  • Indican fallos de seguridad o carga inusual en componentes críticos.

¿Qué son los postmortems y cómo enfocarlos?

  • Reunión para identificar causa raíz y definir acciones correctivas.
  • No buscan culpables: fomentan aprendizaje y mejora de procesos o código.
  • Ayudan a que el incidente no vuelva a ocurrir.

¿Cómo configurar una alarma en AWS CloudWatch?

Desde la consola de AWS, abre CloudWatch y entra a Alarms. Crea una nueva alarma con una métrica existente de API Gateway y define umbral, ventana y acciones de notificación con SNS.

¿Qué métrica y ventana usar en API Gateway?

  • Selecciona Across all APIs y elige la métrica count.
  • Configura el promedio en una ventana de cinco minutos.
  • Esta métrica representa el número de requests en ese periodo.

¿Qué umbral estático definir y por qué?

  • Usa un threshold estático.
  • Define: mayor a 10 000 requests en 5 minutos.
  • Si se supera, la alarma entra a estado En alarma.

¿Qué estados puede tener la alarma?

  • In alarm: condición cumplida, hay evento a atender.
  • Okay: dentro de lo normal.
  • Insufficient data: sin datos suficientes para evaluar.

¿Qué acciones notificar con SNS?

  • Crea un SNS topic (Simple Notification Service).
  • Añade tu email para recibir alertas y confirma la suscripción con Confirm Subscription.
  • También puedes disparar acciones de Lambda, autoescalamiento, acciones en EC2 (por ejemplo, terminar una instancia) o Systems Manager.

¿Cómo validar y recibir la alerta por correo?

Una vez creada, la alarma puede iniciar en Insufficient data y pasar a Okay al recibir datos. Puedes simular el estado para confirmar que la notificación funciona.

¿Cómo simular el estado con AWS CLI?

  • Abre CloudShell en AWS.
  • Ejecuta el comando para simular el estado de la alarma:
aws cloudwatch set-alarm-state \
  --alarm-name "Max API gateway hits" \
  --state-value ALARM \
  --state-reason "testing"
  • Verifica en Alarms que el estado sea In alarm.

¿Qué contiene el email de alarma?

  • Asunto con el nombre, por ejemplo: alarm max API gateway hits y región usada (Ohio).
  • Descripción configurada: “Están llegando más de diez mil requests al API Gateway”.
  • Enlace directo a la alarma en la consola.
  • Razón del estado (en el ejemplo, testing) y metadatos asociados.

¿Qué habilidades pones en práctica?

  • Definición de métricas y ventanas (5 minutos) para API Gateway.
  • Configuración de umbrales estáticos y estados de CloudWatch.
  • Uso de SNS para notificaciones por email.
  • Ejecución de AWS CLI en CloudShell para pruebas.
  • Enfoque en alertas accionables y gestión de postmortems con causa raíz.

Así podrás replicar este flujo en herramientas como New Relic o Datadog y entender, en tiempo real, lo que sucede en tu sistema. ¿Qué umbral pondrías tú para tu API? Comenta tu caso y qué acciones automatizarías en una alarma.