Hoja de Referencia de Envii - Respaldo Cifrado de Variables de Entorno
Hoja de Referencia de Envii - Respaldo Cifrado de Variables de Entorno
Sección titulada «Hoja de Referencia de Envii - Respaldo Cifrado de Variables de Entorno»Una herramienta CLI para respaldar y restaurar de forma segura archivos .env entre máquinas. Utiliza cifrado de extremo a extremo (AES-256-GCM) con una frase de recuperación de 12 palabras — el servidor nunca ve tus secretos en texto plano.
Instalación
Sección titulada «Instalación»Desde npm (Global)
Sección titulada «Desde npm (Global)»npm install -g envii
Desde Código Fuente
Sección titulada «Desde Código Fuente»git clone https://github.com/akinloluwami/envii.git
cd envii/envii-cli
npm install
npm run build
npm link
Requiere: Node.js 18+
Comenzando
Sección titulada «Comenzando»Inicializar (Primera Vez Únicamente)
Sección titulada «Inicializar (Primera Vez Únicamente)»envii init
Esto genera una frase de recuperación de 12 palabras. Guárdala de forma segura — es la única forma de descifrar tus respaldos. No hay contraseñas, no hay correos electrónicos, no hay cuentas.
Crítico: Escribe tu frase de recuperación y guárdala en algún lugar seguro (gestor de contraseñas, respaldo físico). Si la pierdes, tus respaldos son permanentemente irrecuperables.
Comandos Principales
Sección titulada «Comandos Principales»| Comando | Descripción |
|---|---|
envii init | Inicializar envii, generar frase de recuperación |
envii backup | Escanear árbol de directorio actual y respaldar todos los archivos .env |
envii restore | Descargar y descifrar todos los archivos .env respaldados |
envii restore --force | Restaurar y sobrescribir archivos .env existentes sin preguntar |
envii list | Listar todos los proyectos con respaldos activos |
Cómo Funciona
Sección titulada «Cómo Funciona»Flujo de Respaldo
Sección titulada «Flujo de Respaldo»cd ~/projects # Navigate to your projects root
envii backup # Scans for all .env files in subdirectories
- Envii escanea el árbol de directorio actual en busca de proyectos (identificados por
.git,package.json, etc.) - Se encuentran todos los archivos
.env*(.env,.env.local,.env.production, etc.) - Cada archivo se cifra localmente usando AES-256-GCM con derivación de clave PBKDF2 (600,000 iteraciones)
- Solo se envían datos cifrados al servidor
- El proyecto se identifica por URL remota de Git, nombre de paquete o nombre de carpeta
Flujo de Restauración
Sección titulada «Flujo de Restauración»cd ~/projects # On your new machine
envii restore # Downloads and decrypts all backups
- Envii descarga tus respaldos cifrados
- Los descifra localmente usando tu frase de recuperación
- Coloca los archivos
.envde vuelta en sus rutas de proyecto originales - Pregunta antes de sobrescribir archivos existentes (usar
--forcepara omitir)
Arquitectura de Seguridad
Sección titulada «Arquitectura de Seguridad»| Característica | Detalles |
|---|---|
| Cifrado | AES-256-GCM |
| Derivación de Clave | PBKDF2 con 600,000 iteraciones |
| IVs Únicos | Cada respaldo tiene un vector de inicialización único |
| Etiquetas de Autenticación | Detección de manipulación en cada respaldo |
| Conocimiento Cero | El servidor nunca ve la frase de recuperación, texto plano o claves de cifrado |
| Recuperación | La frase de 12 palabras es el único método de autenticación |
Modo de Desarrollo
Sección titulada «Modo de Desarrollo»| Comando | Descripción |
|---|---|
envii init --dev | Inicializar contra API local (localhost:4400) |
envii backup --dev | Respaldar usando servidor API local |
envii restore --dev | Restaurar desde servidor API local |
envii list --dev | Listar respaldos desde API local |
Configuración
Sección titulada «Configuración»Envii almacena su configuración en:
| Elemento | Ubicación |
|---|---|
| Archivo de configuración | ~/.envii/config.json |
| Hash de frase de recuperación | Almacenado en configuración (nunca la frase misma) |
Flujos de Trabajo Comunes
Sección titulada «Flujos de Trabajo Comunes»# Initial setup on your main machine
envii init
# ⚠️ Save the 12-word recovery phrase!
# Back up all env files from project directory
cd ~/projects
envii backup
# Set up a new machine
envii init # Enter the SAME recovery phrase
cd ~/projects
envii restore # All .env files restored
# Check what's backed up
envii list
# Update backups after changing env vars
envii backup # Re-encrypts and uploads updated files
Qué Se Respalda
Sección titulada «Qué Se Respalda»Envii escanea todos los archivos de entorno que coincidan con patrones comunes:
.env.env.local.env.development.env.production.env.staging.env.test- Otras variantes
.env*
Los proyectos se detectan por la presencia de:
- Directorio
.git(usa URL remota como identificador) package.json(usa nombre de paquete)- Recurre al nombre de carpeta
Solución de Problemas
Sección titulada «Solución de Problemas»| Problema | Solución |
|---|---|
| ”No se encontraron proyectos” | Asegurar que estás en un directorio con proyectos (debe tener .git o package.json) |
| Fallo de restauración | Verificar que estés usando la misma frase de recuperación que el init original |
| Frase de recuperación perdida | Los respaldos son irrecuperables — re-init y re-backup |
| Permiso denegado | Asegurar que el directorio ~/.envii/ sea escribible |
| Error de red | Verificar conexión a internet; envii requiere acceso al servidor API |
Mejores Prácticas
Sección titulada «Mejores Prácticas»- Guardar tu frase de recuperación en un gestor de contraseñas (1Password, Bitwarden, etc.)
- Ejecutar
envii backupantes de cambiar de máquina o reformatear - No hacer commit de archivos
.enva Git — usar envii en su lugar - Ejecutar respaldos periódicos después de actualizar variables de entorno
- Usar
envii listpara verificar que tus respaldos estén actualizados