cli-tool
intermediate
utility
Défaut
Copier toutes les commandes
Générer PDF
HashiCorp complet Commandes et workflows Vault pour la gestion des secrets, le chiffrement et l'accès sécurisé aux données sensibles.
Installation et configuration
Command
Description
vault version
Show Vault version
vault server -dev
Start development server
vault server -config=config.hcl
Start with configuration file
vault status
Check server status
Authentification & Connexion
Authentification de base
Command
Description
vault auth -method=userpass username=myuser
Login with username/password
vault auth -method=ldap username=myuser
Login with LDAP
vault auth -method=github token=mytoken
Login with GitHub
vault auth -method=aws
Login with AWS IAM
vault auth -method=kubernetes
Login with Kubernetes
Gestion des jetons
Command
Description
vault token create
Create new token
vault token create -ttl=1h
Create token with TTL
vault token lookup
Look up current token
vault token renew
Renew current token
vault token revoke TOKEN
Revoke specific token
Gestion des secrets
Secrets de valeur clé (v2)
Command
Description
vault kv put secret/myapp username=admin password=secret
Store secret
vault kv get secret/myapp
Retrieve secret
vault kv get -field=password secret/myapp
Get specific field
vault kv delete secret/myapp
Delete secret
vault kv list secret/
List secrets
vault kv metadata get secret/myapp
Get metadata
Versions secrètes
Command
Description
vault kv put secret/myapp @data.json
Store from JSON file
vault kv get -version=2 secret/myapp
Get specific version
vault kv rollback -version=1 secret/myapp
Rollback to version
vault kv destroy -versions=2,3 secret/myapp
Destroy versions
vault kv undelete -versions=2 secret/myapp
Undelete versions
Moteur des secrets de base de données
Configuration de la base de données
Command
Description
vault secrets enable database
Enable database engine
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"
Configure 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"
Create role
Pouvoirs dynamiques
Command
Description
vault read database/creds/my-role
Generate database credentials
vault write database/rotate-root/my-mysql-database
Rotate root credentials
ICP (Infrastructure à clé publique)
Configuration de l'ICP
Command
Description
vault secrets enable pki
Enable PKI engine
vault secrets tune -max-lease-ttl=87600h pki
Set max TTL
vault write pki/root/generate/internal common_name=example.com ttl=87600h
Generate root CA
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"
Configure URLs
Gestion des certificats
Command
Description
vault write pki/roles/example-dot-com allowed_domains=example.com allow_subdomains=true max_ttl=72h
Create role
vault write pki/issue/example-dot-com common_name=test.example.com
Issue certificate
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
Revoke certificate
Moteur AWS Secrets
Configuration AWS
Command
Description
vault secrets enable aws
Enable AWS engine
vault write aws/config/root access_key=AKIAI... secret_key=R4nm...
Configure root credentials
vault write aws/roles/my-role credential_type=iam_user policy_document=-<<EOF \\{...\\} EOF
Create IAM role
Pouvoirs
Command
Description
vault read aws/creds/my-role
Generate AWS credentials
vault write aws/sts/my-role ttl=15m
Generate STS credentials
Moteur des secrets de transit
Configuration du chiffrement
Command
Description
vault secrets enable transit
Enable transit engine
vault write transit/keys/my-key type=aes256-gcm96
Create encryption key
vault write transit/encrypt/my-key plaintext=$(base64 <<< "my secret data")
Encrypt data
vault write transit/decrypt/my-key ciphertext=vault:v1:8SDd3WHDOjf7mq69CyCqYjBXAiQQAVZRkFM13ok481zoCmHnSeDX9vyf7w==
Decrypt data
Gestion des clés
Command
Description
vault write transit/keys/my-key/rotate
Rotate encryption key
vault read transit/keys/my-key
Read key information
vault write transit/rewrap/my-key ciphertext=vault:v1:...
Rewrap with latest key
Politiques
Gestion des politiques
Command
Description
vault policy write my-policy policy.hcl
Create/update policy
vault policy read my-policy
Read policy
vault policy list
List all policies
vault policy delete my-policy
Delete policy
Exemple de politique
# 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éthodes
Activer les méthodes d'auth
Command
Description
vault auth enable userpass
Enable username/password
vault auth enable ldap
Enable LDAP
vault auth enable github
Enable GitHub
vault auth enable aws
Enable AWS IAM
vault auth enable kubernetes
Enable Kubernetes
Command
Description
vault write auth/userpass/users/myuser password=mypass policies=my-policy
Create user
vault write auth/ldap/config url="ldap://ldap.example.com" userdn="ou=Users,dc=example,dc=com"
Configure LDAP
vault write auth/github/config organization=myorg
Configure GitHub
Comptabilisation des audits
Activer les appareils de vérification
Command
Description
vault audit enable file file_path=/vault/logs/audit.log
Enable file audit
vault audit enable syslog
Enable syslog audit
vault audit list
List audit devices
vault audit disable file/
Disable audit device
Haute disponibilité et regroupement
Opérations des groupes thématiques
Command
Description
vault operator init
Initialize Vault cluster
vault operator unseal
Unseal Vault
vault operator seal
Seal Vault
vault operator step-down
Step down as leader
vault operator raft list-peers
List Raft peers
Sauvegarde et récupération
Command
Description
vault operator raft snapshot save backup.snap
Create snapshot
vault operator raft snapshot restore backup.snap
Restore snapshot
Exemples de configuration
Configuration du serveur
```hcl
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
```_
Auto-unseal avec AWS KMS
hcl
seal "awskms" \\\\{
region = "us-east-1"
kms_key_id = "12345678-1234-1234-1234-123456789012"
\\\\}
_
Variables d'environnement
Variable
Description
VAULT_ADDR
Vault server address
VAULT_TOKEN
Authentication token
VAULT_NAMESPACE
Vault namespace (Enterprise)
VAULT_CACERT
CA certificate file
VAULT_CLIENT_CERT
Client certificate file
VAULT_CLIENT_KEY
Client private key file
Meilleures pratiques
Sécurité
Enable TLS : toujours utiliser TLS en production
Least Privilege : accorder des autorisations minimales requises
Token TTL : Utiliser des jetons à courte durée de vie
Audit Logging : Activer l'enregistrement d'audit complet
** Seal/Unseal**: Mettre en œuvre les procédures appropriées de scellement/unseal
Opérations
Haute disponibilité : Déployer en mode HA pour la production
Stratégie de sauvegarde : Photographies et sauvegardes régulières
Surveillance : Surveiller la santé et la performance des failles
Rotation : rotation régulière des clés et des titres
Modèles d'accès : Surveiller et analyser les modèles d'accès
Développement
** Mode Dev**: Utilisez le mode dev uniquement pour le développement
Essais de politique : Les politiques d'essai
Version du SECRET : Utiliser la version secrète pour les rollbacks
Intégration : Intégration avec les pipelines CI/CD
Documentation : Documenter les voies et les politiques secrètes