Saltar al contenido
OPS // KITitspentest.sh

E-ETC

etcdutl

Utilidad de mantenimiento offline de etcd para inspeccionar y restaurar snapshots de clúster sin un servidor etcd en ejecución.

Sitio oficialVolver al catálogo

RESUMEN

etcdutl (github.com/etcd-io/etcd) es la herramienta de mantenimiento offline complementaria de etcdctl: en vez de hablar con un clúster etcd en vivo por red, opera directamente sobre un archivo de base de datos o snapshot — verificando su integridad, listando su contenido o restaurándolo en un directorio de datos nuevo que una instancia local de etcd puede luego servir.

Eso la convierte en la herramienta adecuada para un patrón de hallazgo específico: un archivo snapshot o backup de etcd (a menudo llamado snapshot.db o member/snap/db) descubierto donde no debería estar — un bucket de backups sin proteger, un file share mal configurado, el disco de un host comprometido — ya que contiene el mismo estado crudo del clúster (incluidos los Secrets) que expondría un clúster en vivo.

CASOS DE USO

Casos de uso en un engagement

  • 01

    Restaurar un archivo snapshot de etcd descubierto en un directorio de datos local para inspeccionar su contenido sin conexión.

  • 02

    Verificar la integridad y el hash de un archivo de backup de etcd encontrado durante una revisión del sistema de archivos.

  • 03

    Demostrar que un snapshot filtrado expone los mismos Secrets/ConfigMaps que expondría comprometer un clúster en vivo.

  • 04

    Recuperar el estado del clúster a partir de un snapshot obtenido durante la post-explotación en un host etcd comprometido.

PRIMEROS PASOS

Cuando aparece un archivo de snapshot o backup (db, snapshot.db) de un clúster etcd durante un engagement — en un share de backups, un repo, un host comprometido — y necesitas leer su contenido sin levantar un servidor.

  1. Confirma que el manejo del snapshot/backup descubierto está dentro del alcance autorizado y las reglas de manejo de datos.
  2. Instala etcdutl (incluido en los binarios de release de etcd).
  3. Verifica el estado/integridad del snapshot antes de restaurarlo.
  4. Restaura el snapshot en un directorio de datos local aislado — nunca en infraestructura compartida o de producción.
  5. Apunta una instancia local y aislada de etcdctl/etcd al directorio restaurado para leer su contenido.
etcdutl snapshot restore snapshot.db --data-dir ./restored-etcd

ANTES DE USARLA

Qué revisar antes de lanzarla

Un archivo snapshot es una copia completa del estado del clúster, incluidos los Secrets — manéjalo bajo las mismas reglas de confidencialidad que las credenciales de producción, y destruye cualquier copia restaurada en cuanto el hallazgo esté documentado.

Restaura siempre en un directorio local aislado, nunca en una ruta que pueda ser recogida por una instancia real de etcd/Kubernetes en ejecución — una restauración mal hecha puede corromper un clúster en vivo.

El formato de snapshot de etcdutl está ligado a la versión de etcd que lo produjo — restaurar con una versión de etcdutl distinta puede fallar o comportarse de forma inesperada.

SIGUE EXPLORANDO

Ver toda la fase →