Files
OpenBAO/systemd/openbao-auto-unseal.service
lutz 14275a5627 Auto-Unseal beim Boot und internes Zertifikat fuer gitea.famfi.home
Beim ersten Neustart seit 106 Tagen (2026-09-20) zeigte sich: der Unsealer kommt
versiegelt hoch, die Hauptinstanz startet daraufhin endlos neu und nichts kann mehr
Secrets lesen - Backups, Traefik-Zertifikate, Skripte. Bisher musste das jemand
von Hand entsiegeln.

- scripts/unseal-unsealer.sh + systemd/openbao-auto-unseal.service: entsiegelt die
  Sidecar nach docker.service, startet die Hauptinstanz nach und schreibt die Metrik
  openbao_unsealer_unsealed (cp1 alarmiert darauf). Idempotent.
  Zwei Fallstricke, die das Skript umgeht: `bao operator unseal -` (Schluessel ueber
  stdin) wird abgelehnt, und `bao status` liefert Exit 2 bei versiegelt - was trotzdem
  heisst, dass der Container antwortet.
  Der Schluessel liegt in /etc/openbao-unsealer.key (root, 0400), nicht im Repo.
- scripts/renew-gitea-cert.sh + systemd/gitea-cert-renew.*: gitea.famfi.home bekommt
  ein Zertifikat aus der eigenen PKI (90 Tage, Erneuerung ab 21 Tagen Restlaufzeit),
  Aufbau wie bei renew-openbao-cert.sh.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-09-26 09:25:44 +02:00

20 lines
545 B
Desktop File

[Unit]
Description=Entsiegelt die openbao-unsealer-Sidecar nach dem Start (sonst startet OpenBAO endlos neu)
Documentation=file:///home/lutz/Projects/OpenBAO/README.md
After=docker.service network-online.target
Wants=docker.service
Requires=docker.service
[Service]
Type=oneshot
RemainAfterExit=yes
ExecStart=/usr/local/sbin/openbao-unseal-unsealer.sh
TimeoutStartSec=420
# Ein fehlgeschlagener Versuch soll sichtbar sein, aber den Boot nicht blockieren.
Restart=on-failure
RestartSec=30
StartLimitBurst=3
[Install]
WantedBy=multi-user.target