Files
BSN-Chatsystem/docs/bsn-secrets-installation-alicia.md
T
Hermes Agent 72803b9aa5
Quality Gate / 🛡️ Lint + Type Check + Tests (push) Failing after 5s
docs: Installationsanleitung bsn-secrets für Alicia-Rechner
2026-06-22 18:17:33 +02:00

102 lines
2.9 KiB
Markdown

# BSN Secrets Manager — Installation für Alicia-Rechner
> **Ziel:** `bsn-secrets` auf dem Alicia-Rechner installieren, sodass Alicia Gitea-API-Token, Joomla-Token etc. per `bsn-secrets get` abrufen kann.
## Voraussetzungen
- Python 3.8+
- GPG (`gpg`) — installiert via `sudo apt install gnupg`
- `gpg` ist auf dem aktuellen Server bereits installiert, auf dem Zielrechner prüfen mit `which gpg`
## 1. Tool installieren
```bash
# Tool von Gitea laden (oder manuell kopieren)
wget -O ~/bin/bsn-secrets https://git.datenhimmel.work/danielkrause/BSN-Chatsystem/raw/branch/main/tools/bsn-secrets
chmod +x ~/bin/bsn-secrets
mkdir -p ~/bin # falls nicht vorhanden
```
**Alternativ (wenn wget nicht geht):** Tool von diesem Rechner kopieren:
```bash
scp hermes@185.162.249.159:/home/hermes/bin/bsn-secrets ~/bin/
chmod +x ~/bin/bsn-secrets
```
## 2. Passphrase setzen
Die Passphrase muss in **Alicias `.env`** eingetragen werden. Sie ist auf dem Haupt-Server in `~/.hermes/profiles/cody/.env` und `~/.hermes/profiles/alicia/.env` hinterlegt.
**Auf dem Zielrechner (Alicia):**
```bash
# Passphrase in Alicias .env eintragen
echo "BSN_SECRETS_PASSPHRASE=<PASSPHRASE_VON_DANIEL>" >> ~/.hermes/profiles/alicia/.env
```
> ⚠️ Daniel hat die Passphrase. Auf dem Haupt-Server abrufbar via:
> ```bash
> grep BSN_SECRETS_PASSPHRASE ~/.hermes/profiles/cody/.env | cut -d= -f2-
> ```
## 3. Verifizieren
```bash
# Tool testen (sollte Hilfe ausgeben)
~/bin/bsn-secrets
# Passphrase-Prüfung
grep BSN_SECRETS_PASSPHRASE ~/.hermes/profiles/alicia/.env | wc -l
# Sollte 1 ausgeben (eine Zeile)
# Liste der Secrets abrufen (falls schon welche da sind)
~/bin/bsn-secrets list
```
## 4. Secrets synchronisieren
Die Secrets selbst (`.gpg`-Dateien) liegen unter `~/.password-store/bsn/`. Von Haupt-Server kopieren:
```bash
# Auf dem Haupt-Server:
scp -r ~/.password-store/bsn/ alicia@<ALICIA_IP>:~/.password-store/bsn/
```
Oder per rsync:
```bash
rsync -avz ~/.password-store/bsn/ alicia@<ALICIA_IP>:~/.password-store/bsn/
```
## 5. Gitea-Token testen
```bash
TOKEN=*** get bsn/gitea-token)
echo "Token-Länge: ${#TOKEN} Zeichen (sollte 40 sein)"
```
## 6. Neue Secrets anlegen (bei Bedarf)
```bash
echo "joomla-api-token-hier" | ~/bin/bsn-secrets set bsn/joomla-token
```
---
## Übersicht aller Secrets
| Secret-Name | Beschreibung |
|---|---|
| `bsn/gitea-token` | Gitea API-Token (read:repo + write:issue) |
| `bsn/joomla-token` | Joomla API-Token (für Article-Server) |
| `bsn/meta-token` | Meta WhatsApp Business API Token |
| `bsn/whatsapp-verify-token` | WhatsApp Webhook Verify Token |
| `bsn/artikel-server-key` | Article Server Access Key |
| `bsn/telegram-token` | Telegram Bot Token |
---
## Wichtig
-**NIE Tokens in `/tmp` ablegen!** `/tmp` ist ein tmpfs und wird bei Reboots gelöscht.
-**Immer `bsn-secrets get <name>`** verwenden — GPG-verschlüsselt, persistent.
- 🔑 Passphrase in `~/.hermes/profiles/<profil>/.env` unter `BSN_SECRETS_PASSPHRASE`.