saltar al contenido
volver al mapa
técnica
etapa: definir
2 min de lectura

Infraestructura segura como código

Cuando la infraestructura es código, su seguridad también puede serlo: revisada en un PR, escaneada antes del apply y comparada con la realidad para detectar lo que cambió por fuera.

TerraformCheckovTrivyAnsible

Qué es

La (IaC) describe redes, identidades, bases de datos y permisos en archivos versionados, en lugar de clics en una consola. Para la seguridad esto cambia las reglas: la configuración pasa a tener historial, revisión por pares, pruebas y el mismo pipeline que el software.

La otra cara es que un error en el código se replica a escala: un módulo con un bucket público crea cien buckets públicos. Por eso el IaC debe tratarse como código sensible, con controles propios.

Escanear antes del apply

Las herramientas de análisis estático de IaC leen los archivos (o el plan de Terraform) y señalan configuraciones inseguras antes de que exista cualquier recurso: grupos de seguridad abiertos al mundo, almacenamiento sin cifrado, políticas con comodines. Es el de la infraestructura, y se aplica el mismo principio de shift-left.

main.tf - problema y correcciónhcl
# problema: SSH abierto a internet
resource "aws_security_group_rule" "ssh_bad" {
  type              = "ingress"
  from_port         = 22
  to_port           = 22
  protocol          = "tcp"
  cidr_blocks       = ["0.0.0.0/0"]   # <- el escáner lo señala
  security_group_id = aws_security_group.app.id
}

# corrección: solo la red de administración
resource "aws_security_group_rule" "ssh_ok" {
  type              = "ingress"
  from_port         = 22
  to_port           = 22
  protocol          = "tcp"
  cidr_blocks       = [var.admin_cidr]
  security_group_id = aws_security_group.app.id
}

El estado de Terraform es sensible

El archivo de estado guarda lo que Terraform creó, y eso puede incluir secretos en texto plano (contraseñas generadas, claves). No debe ir al repositorio. Usa un backend remoto cifrado, con control de acceso estricto y bloqueo de concurrencia, y dale al pipeline solo los permisos que el plan realmente necesita.

backend.tfhcl
terraform {
  backend "s3" {
    bucket         = "minha-org-tfstate"
    key            = "prod/network.tfstate"
    region         = "us-east-1"
    encrypt        = true
    dynamodb_table = "tfstate-lock"   # bloqueo contra apply simultáneo
  }
}

Drift: lo que cambió por fuera

Alguien modifica un recurso en la consola durante un incidente y olvida revertirlo. El estado real diverge del código (drift), y el código deja de ser la verdad. Ejecutar un plan periódico, o usar herramientas de detección de drift, convierte esa divergencia en una alerta, y la gestión de postura en la nube () mira el mismo problema desde el lado del entorno.

Módulos aprobados

  • Módulos internos con los estándares seguros incorporados (cifrado, logs, etiquetas de responsable): el camino seguro se vuelve el camino fácil.
  • Versiones fijadas de módulos y providers, con revisión para actualizarlas.
  • Permisos mínimos para la identidad que ejecuta el apply, separados por entorno.
  • Revisión obligatoria y el plan adjunto al PR para que quien revisa vea el efecto real.
IaCinfraestructura como códigoDescribir la infraestructura en archivos versionados (Terraform, Ansible). Aporta revisión, historial y pruebas a la configuración, pero replica errores a escala si no se escanea.ver en el glosario →SASTAnálisis estático: examina el código sin ejecutarlo. Encuentra problemas por análisis de flujo, no por adivinación.ver en el glosario →CSPMcloud security posture managementHerramienta que escanea la configuración de tu nube contra buenas prácticas y benchmarks (CIS, NIST), señalando buckets S3 públicos, IAM demasiado amplio, puertos expuestos. Hace la pregunta que los humanos olvidan: '¿qué está mal configurado AHORA?'.ver en el glosario →

conexiones en el mapa

actualizado el 14/10/2026 · fuentes para profundizar · reportar un error

en otros dominios

Estudia antes

Desbloquea

pon a prueba lo que entendiste

Cargando preguntas…