OpenBao
OpenBao est une plateforme libre de gestion des secrets qui stocke et contrôle l’accès aux jetons, mots de passe, certificats et clés de chiffrement de manière sécurisée. Il s’agit du fork communautaire de HashiCorp Vault maintenu par la Linux Foundation, et il reste compatible avec son API. La plupart des outils Vault fonctionnent donc sans modification. Vous l’exécutez comme un serveur, l’initialisez une seule fois, puis le descellez pour commencer à servir des secrets.
Logiciels inclus
Section intitulée « Logiciels inclus »| Composant | Version |
|---|---|
| OpenBao | 2.5.5 |
| Ubuntu | 24.04 LTS |
OpenBao s’exécute comme service systemd avec le stockage Raft intégré. Chaque machine virtuelle génère son propre certificat TLS au premier démarrage, aucune clé privée n’est donc partagée entre les déploiements.
Prérequis
Section intitulée « Prérequis »| Ressource | Minimum | Recommandé |
|---|---|---|
| vCPU | 1 | 2 |
| RAM | 1 Go | 2 Go |
| Stockage | 10 Go | 20 Go |
Variables d’environnement
Section intitulée « Variables d’environnement »Vous pouvez définir ces variables au déploiement d’OpenBao depuis la Marketplace. Laissez-les vides pour utiliser l’adresse de la machine virtuelle et recevoir les secrets générés en clair.
| Variable | Description |
|---|---|
OPENBAO_ADDR | Adresse inscrite dans le certificat TLS et dans l’adresse du cluster Raft |
OPENBAO_UNSEAL_PGP_KEYS | Clés publiques PGP séparées par des virgules. Chaque part de descellement est chiffrée |
OPENBAO_ROOT_TOKEN_PGP_KEY | Une clé publique PGP. Le jeton racine est renvoyé chiffré avec cette clé |
Chaque entrée PGP est soit keybase:<username>, soit une clé publique ASCII-armored encodée en
base64. Ces variables ne permettent pas de choisir la valeur des secrets. OpenBao génère toujours
lui-même le jeton racine et les clés de descellement. Elles déterminent uniquement à qui ces valeurs
sont chiffrées.
Démarrage
Section intitulée « Démarrage »1. Connectez-vous à votre VM
Section intitulée « 1. Connectez-vous à votre VM »ssh ubuntu@<your-vm-ip>2. Attendez la configuration au premier démarrage
Section intitulée « 2. Attendez la configuration au premier démarrage »Au premier démarrage, un script génère un certificat TLS pour cette VM, démarre OpenBao, l’initialise avec 5 parts de clé et un seuil de 3, puis le descelle. Suivez la progression:
journalctl -u openbao-first-boot.service -f3. Récupérez les clés de descellement et le jeton racine
Section intitulée « 3. Récupérez les clés de descellement et le jeton racine »Ils sont écrits dans un fichier réservé à root:
sudo cat /etc/openbao/credentials.txt4. Utilisez l’API
Section intitulée « 4. Utilisez l’API »export BAO_ADDR=https://<your-vm-ip>:8200export BAO_SKIP_VERIFY=truebao statusLe certificat est auto-signé. Faites-lui confiance ou définissez BAO_SKIP_VERIFY pendant vos
tests. Remplacez-le par votre propre certificat en production.
Gérer OpenBao
Section intitulée « Gérer OpenBao »# Vérifier l'étatsudo systemctl status openbao
# Redémarrersudo systemctl restart openbao
# Consulter les journauxsudo journalctl -u openbao -fLa configuration se trouve dans /etc/openbao, les données Raft dans /opt/openbao/data, et le
certificat propre à la VM dans /etc/openbao/tls.
Sécurité
Section intitulée « Sécurité »Le port 8200 n’est ouvert qu’après que le service a répondu à un contrôle de santé en TLS. UFW est activé et autorise ce port ainsi que SSH (port 22).
OpenBao se rescelle à chaque redémarrage du service. Descellez-le de nouveau avec trois de vos parts:
bao operator unsealPour restreindre l’accès à une adresse IP précise:
sudo ufw delete allow 8200/tcpsudo ufw allow from <trusted-ip> to any port 8200