# 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=" >> ~/.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@:~/.password-store/bsn/ ``` Oder per rsync: ```bash rsync -avz ~/.password-store/bsn/ alicia@:~/.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 `** verwenden — GPG-verschlüsselt, persistent. - 🔑 Passphrase in `~/.hermes/profiles//.env` unter `BSN_SECRETS_PASSPHRASE`.