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