cli-tool
intermediate
utility
Vault
📋 Copy All Commands
📄 Generate PDF
Guía completa de comandos y flujos de trabajo de HashiCorp Vault para gestión de secretos, cifrado y acceso seguro a datos sensibles.
Instalación y Configuración
Comando
Descripción
vault version
Mostrar versión de Vault
vault server -dev
Iniciar servidor de desarrollo
vault server -config=config.hcl
Comienza con el archivo de configuración
vault status
Comprobar estado del servidor
## Autenticación e Inicio de Sesión
Autenticación Básica
Comando
Descripción
vault auth -method=userpass username=myuser
Iniciar sesión con nombre de usuario/contraseña
vault auth -method=ldap username=myuser
Iniciar sesión con LDAP
vault auth -method=github token=mytoken
Iniciar sesión con GitHub
vault auth -method=aws
Iniciar sesión con AWS IAM
vault auth -method=kubernetes
Login con Kubernetes
### Gestión de Tokens
Comando
Descripción
---------
-------------
vault token create
Crear nuevo token
vault token create -ttl=1h
Crear token con TTL
vault token lookup
Buscar token actual
vault token renew
Renovar token actual
vault token revoke TOKEN
Revocar token específico
## Gestión de Secretos
Secretos de Clave-Valor (v2)
Comando
Descripción
vault kv put secret/myapp username=admin password=secret
Almacenar secreto
vault kv get secret/myapp
Recuperar secreto
vault kv get -field=password secret/myapp
Obtener campo específico
vault kv delete secret/myapp
Eliminar secreto
vault kv list secret/
Listar secretos
vault kv metadata get secret/myapp
Obtener metadata
### Versiones de Secretos
Comando
Descripción
---------
-------------
vault kv put secret/myapp @data.json
Almacenar desde archivo JSON
vault kv get -version=2 secret/myapp
Obtener versión específica
vault kv rollback -version=1 secret/myapp
Rollback a la versión
vault kv destroy -versions=2,3 secret/myapp
Destruir versiones
vault kv undelete -versions=2 secret/myapp
Recuperar versiones
## Motor de Secretos de Base de Datos
Configuración de Base de Datos
Comando
Descripción
vault secrets enable database
Habilitar motor de base de datos
vault write database/config/my-mysql-database plugin_name=mysql-database-plugin connection_url="\\{\\{username\\}\\}:\\{\\{password\\}\\}@tcp(localhost:3306)/" allowed_roles="my-role" username="vaultuser" password="vaultpass"
Configurar MySQL
vault write database/roles/my-role db_name=my-mysql-database creation_statements="CREATE USER '\\{\\{name\\}\\}'@'%' IDENTIFIED BY '\\{\\{password\\}\\}';GRANT SELECT ON *.* TO '\\{\\{name\\}\\}'@'%';" default_ttl="1h" max_ttl="24h"
Crear rol
### Credenciales Dinámicas
Comando
Descripción
---------
-------------
vault read database/creds/my-role
Generar credenciales de base de datos
vault write database/rotate-root/my-mysql-database
Rotar credenciales root
## PKI (Infraestructura de Clave Pública)
Configuración de PKI
Comando
Descripción
vault secrets enable pki
Habilitar motor PKI
vault secrets tune -max-lease-ttl=87600h pki
Establecer TTL máximo
vault write pki/root/generate/internal common_name=example.com ttl=87600h
Generar CA raíz
vault write pki/config/urls issuing_certificates="http://vault.example.com:8200/v1/pki/ca" crl_distribution_points="http://vault.example.com:8200/v1/pki/crl"
Configurar URLs
### Gestión de Certificados
Comando
Descripción
---------
-------------
vault write pki/roles/example-dot-com allowed_domains=example.com allow_subdomains=true max_ttl=72h
Crear rol
vault write pki/issue/example-dot-com common_name=test.example.com
Emitir certificado
vault write pki/revoke serial_number=39:dd:2e:90:b7:23:1f:8d:d3:7d:31:c5:1b:da:84:d0:5b:65:31:58
Revocar certificado
## Motor de Secretos de AWS
Configuración de AWS
Comando
Descripción
vault secrets enable aws
Habilitar motor AWS
vault write aws/config/root access_key=AKIAI... secret_key=R4nm...
Configurar credenciales de root
vault write aws/roles/my-role credential_type=iam_user policy_document=-<<EOF \\{...\\} EOF
Crear rol IAM
### Credenciales de AWS
Comando
Descripción
---------
-------------
vault read aws/creds/my-role
Generar credenciales de AWS
vault write aws/sts/my-role ttl=15m
Generar credenciales STS
## Motor de Secretos Transit
Configuración de Cifrado
Comando
Descripción
vault secrets enable transit
Habilitar motor de tránsito
vault write transit/keys/my-key type=aes256-gcm96
Crear clave de cifrado
vault write transit/encrypt/my-key plaintext=$(base64 <<< "my secret data")
Encriptar datos
vault write transit/decrypt/my-key ciphertext=vault:v1:8SDd3WHDOjf7mq69CyCqYjBXAiQQAVZRkFM13ok481zoCmHnSeDX9vyf7w==
Descifrar datos
### Gestión de Claves
Comando
Descripción
---------
-------------
vault write transit/keys/my-key/rotate
Rotar clave de cifrado
vault read transit/keys/my-key
Leer información clave
vault write transit/rewrap/my-key ciphertext=vault:v1:...
Reenvolver con la última clave
## Políticas
Gestión de Políticas
Comando
Descripción
vault policy write my-policy policy.hcl
Crear/actualizar política
vault policy read my-policy
Leer política
vault policy list
Listar todas las políticas
vault policy delete my-policy
Eliminar política
### Ejemplo de Política
# Read operation on the k/v secrets
path "secret/data/*" \\\\ {
capabilities = [ "read" ]
\\\\ }
# Write operation on the k/v secrets
path "secret/data/myapp/*" \\\\ {
capabilities = [ "create", "update" ]
\\\\ }
# Deny all access to secret/admin
path "secret/data/admin" \\\\ {
capabilities = [ "deny" ]
\\\\ }
Métodos de Autenticación
Habilitar Métodos de Autenticación
Comando
Descripción
vault auth enable userpass
Habilitar nombre de usuario/contraseña
vault auth enable ldap
Habilitar LDAP
vault auth enable github
Habilitar GitHub
vault auth enable aws
Habilitar AWS IAM
vault auth enable kubernetes
Habilitar Kubernetes
### Configurar Métodos de Autenticación
Comando
Descripción
---------
-------------
vault write auth/userpass/users/myuser password=mypass policies=my-policy
Crear usuario
vault write auth/ldap/config url="ldap://ldap.example.com" userdn="ou=Users,dc=example,dc=com"
Configurar LDAP
vault write auth/github/config organization=myorg
Configurar GitHub
## Registro de Auditoría
Habilitar Dispositivos de Auditoría
Comando
Descripción
vault audit enable file file_path=/vault/logs/audit.log
Habilitar auditoría de archivos
vault audit enable syslog
Habilitar auditoría de syslog
vault audit list
Listar dispositivos de auditoría
vault audit disable file/
Deshabilitar dispositivo de auditoría
## Alta Disponibilidad y Clustering
Operaciones de Cluster
Would you like me to continue with the remaining translations?
| Comando | Descripción |
|---------|-------------|
| vault operator init | Inicializar clúster de Vault |
| vault operator unseal | Desbloquear Vault |
| vault operator seal | Sello Vault |
| vault operator step-down | Dimitir como líder |
| vault operator raft list-peers | Listar pares Raft |### Copia de seguridad y recuperación
Comando
Descripción
vault operator raft snapshot save backup.snap
Crear snapshot
vault operator raft snapshot restore backup.snap
Restaurar snapshot
Configuración del servidor
storage "consul" \\\\ {
address = "127.0.0.1:8500"
path = "vault/"
\\\\ }
listener "tcp" \\\\ {
address = "0.0.0.0:8200"
tls_disable = 1
\\\\ }
api_addr = "http://127.0.0.1:8200"
cluster_addr = "https://127.0.0.1:8201"
ui = true
hcl
seal "awskms" \\\\{
region = "us-east-1"
kms_key_id = "12345678-1234-1234-1234-123456789012"
\\\\}### Desactivación automática con AWS KMS
Variable
Descripción
VAULT_ADDR
Dirección del servidor Vault
VAULT_TOKEN
Token de autenticación
VAULT_NAMESPACE
Espacio de nombres de Vault (Enterprise)
VAULT_CACERT
Archivo de certificado CA
VAULT_CLIENT_CERT
Archivo de certificado de cliente
VAULT_CLIENT_KEY
Archivo de clave privada del cliente
Mejores prácticas
Seguridad