Een geheim uit de kluis lezen¶
Machinevertaling van het Franse origineel.
De park heeft twee kluizen, en de eerste vraag is welke je moet gebruiken. Het criterium is wie het geheim opvraagt:
| Het geheim is… | Kluis | Hulpmiddelen |
|---|---|---|
| een machinegeheim: API-sleutel, service wachtwoord, token, SSH-sleutel van de host | OpenBao, op de eigen machine (pi-bao) | bao-get · bao-put |
| een menselijk geheim: webaccount, back-up code, persoonlijke apparaat | Vaultwarden | bws |
Dit gaat terug naar 27-09-2026. Voorheen bevonden alle gegevens zich in Vaultwarden: een oudere notitie of script die daar een API-sleutel zoekt, beschrijft de situatie voorheen. Een beheerder weigert nu om een entry te maken die het uiterlijk heeft van een machinegeheim.
Machinegeheim – OpenBao¶
# noms des clés d'un chemin (jamais les valeurs)
bao-get <hôte>/<stack> --keys
# lire une valeur, et la déplacer sans jamais l'afficher
bao-get <hôte>/<stack> <CLÉ> | ssh -p <port-ssh> <user>@<hôte> 'script-qui-lit-stdin'
# écrire : la valeur arrive sur stdin, jamais en argument
printf '%s' "$VALEUR" | bao-put <hôte>/<stack> <CLÉ> --maintenant
De route machines/<hôte>/<stack> is een spiegel van het versleutelde geheugenbestand. Een synchronisator haalt het dan elke vijf minuten naar de container (--maintenant doet dit direct), en stuurt alle wijzigingen die direct in het versleutelde bestand worden aangebracht, terug naar OpenBao. Tijdens het opstarten, contacteren de hosts nooit de kluis: ze lezen hun lokale kopie, waardoor een uitgeschakelde kluis geen enkel service kan herstarten.
Er is geen menselijke interactie nodig voor een machinegeheim. Het lezen, schrijven en gebruiken van een sleutel gebeurt zonder interactie.
Menselijk geheim – Vaultwarden¶
De kluis is al geopend: een service onderhoudt de sessie in ~/.cache/bw/session.
# 1. trouver l'identifiant de l'entrée — TOUJOURS filtrer
~/bin/bws list items --search <motif> | jq -r '.[] | "\(.id) \(.name)"'
# 2. lire la valeur, par un tube
~/bin/bws get password <identifiant> | <consommateur-qui-lit-stdin>
Nooit uitvoeren bw unlock
Zonder interactieve terminal, blokkeert het commando tot het verloopt – en de kluis was al open. Dit is verspilde tijd voor een probleem dat niet bestaat.
bws list zonder filter maakt het object compleet, inclusief het wachtwoord
Daarom het jq van stap 1. Dit gaat niet om een comfortabel display: het voorkomt dat alle wachtwoorden die overeenkomen met het patroon, worden afgedrukt.
Er zijn twee fouten die als "vergrendelde kluis" worden gezien:
~/.bwsessionbestaat niet meer (verwijderd op 2026-08-20). Dit was een orpheling die vastzat aan een juni-sessie, en die verschillende sessies achter elkaar gebruikten, terwijl de service zelf in~/.cache/bw/sessionschreef.bwwordt aangeroepen zonder absolute pad, en faalt in de context van systemd: hetPATHvan een unit bevat niet~/.npm-global/bin. Hetcommand not foundwordt geconsumeerd, en de aanroepend concludeert dat er een "vergrendelde kluis" is, terwijl de kluis open staat.
Wat beide kluizen gemeen hebben¶
De waarde gaat via een pijplijn, nooit via het scherm, een commando of een weergegeven variabele: deze gaat niet door de context van de agent, de sessie-log, of de lijst met processen.
Een geheim wordt opgeslagen zodra het is geïnstalleerd, in dezelfde sessie, en niet later. Een geheim dat alleen in een .env op een host aanwezig is, is een geheim dat niemand zal terugvinden wanneer de host uitvalt.
Dernière vérification de cette page : 2026-10-06