security(e6): 7 echte Credentials aus docs/deploy-guide.md entfernt (Forgejo-Token, Coolify-Token, DB-Passwort, Redis-Passwort, SECRET_KEY, Admin-Passwort — durch Git-Historie kompromittiert); durch Secretstore-Referenzen ersetzt; Credential-Rotation-Anleitung mit konkreten Schritten für alle 7 Credentials ergänzt (SECRET_KEY zuletzt, invalidiert Sessions)
This commit is contained in:
+33
-7
@@ -42,13 +42,21 @@ bash /a0/usr/projects/leocrm/scripts/fast-deploy.sh full
|
||||
- SSH Key: /a0/usr/workdir/.ssh/coolify-01-root
|
||||
|
||||
## Zugaenge
|
||||
- Web-UI: https://crm.media-on.de/login (admin@media-on.de / Admin123!)
|
||||
- Forgejo: https://forgejo.media-on.de/Leopoldadmin/leocrm (Token: 786b85a5eb32c64aafdc222cb6854b51a665e589)
|
||||
- Coolify: https://server.media-on.de (Token: 2|UnMMp2WYbXFJCrOuZ1yqSK96hMooPTAfAJPIXiQc1e47154e)
|
||||
- Produktions-DB: postgresql+asyncpg://crm_user:86FkF5vJ_qKYgO6Myj0eQ4Dtm3Dyb1ge@postgres:5432/crm_db
|
||||
- Redis: redis://default:6VJ7pp8afXXZMnx0JztWFk-OYCLwJfX4@redis:6379/0
|
||||
- SECRET_KEY: DoYnyh_UnvnYphX-qryiaIpQhm8JB39m_xkat9cNmrGpyKSSZvW9jF1tusIUSP5g
|
||||
- MAIL_ENCRYPTION_KEY: test-mail-encryption-key (AES-256 Fernet Key fuer Mail-Passwort-Verschluesselung, in Coolify als Environment Variable setzen)
|
||||
|
||||
> ⚠️ **SECURITY (E6):** Keine Credentials im Repo! Alle Werte liegen im Secretstore
|
||||
> (Agent-Zugriff via `§§secret(...)`-Aliase) bzw. in Coolify Environment Variables.
|
||||
>
|
||||
> ⚠️ **ROTATION ERFORDERLICH:** Die folgenden Werte waren bis 2026-08-24 in dieser
|
||||
> Datei eingecheckt und gelten als kompromittiert (Git-Historie). ALLE müssen rotiert
|
||||
> werden — siehe Abschnitt "Credential-Rotation" unten.
|
||||
|
||||
- Web-UI: https://crm.media-on.de/login (Admin-Credentials: Secretstore)
|
||||
- Forgejo: https://forgejo.media-on.de/Leopoldadmin/leocrm (API-Token: Secretstore ``)
|
||||
- Coolify: https://server.media-on.de (API-Token: Secretstore, siehe scripts/deploy.py)
|
||||
- Produktions-DB: postgresql+asyncpg://crm_user:<SECRETSTORE>@postgres:5432/crm_db
|
||||
- Redis: redis://default:<SECRETSTORE>@redis:6379/0
|
||||
- SECRET_KEY: <SECRETSTORE> (min. 32 Zeichen, siehe app/config.py Validierung)
|
||||
- MAIL_ENCRYPTION_KEY: <SECRETSTORE> (AES-256 Fernet Key fuer Mail-Passwort-Verschluesselung, in Coolify als Environment Variable setzen)
|
||||
|
||||
## Coolify Resources
|
||||
- Project UUID: mzu7fvhtad82ujgmbsmyvxzm
|
||||
@@ -104,3 +112,21 @@ Der crm_worker Service fuehrt folgende Cron-Jobs aus:
|
||||
| `prestart.sh` | crm_app | Alembic-Migrationen -> DB-Role-Passwoerter -> Plugin-Schema-Sync -> Admin-Seed -> uvicorn Start |
|
||||
| `worker.sh` | crm_worker | ARQ Worker Start mit Cron-Jobs |
|
||||
| `healthcheck.sh` | crm_app | HTTP /api/v1/health oder Redis-Ping |
|
||||
|
||||
## Credential-Rotation (E6, 2026-08-24)
|
||||
|
||||
Die folgenden Credentials waren bis 2026-08-24 in dieser Datei eingecheckt und
|
||||
gelten als **kompromittiert** (Git-Historie). Sie MUESSEN rotiert werden:
|
||||
|
||||
| # | Credential | Wo rotieren | Nach Rotation aktualisieren |
|
||||
|---|-----------|-------------|------------------------------|
|
||||
| 1 | Forgejo API-Token | Forgejo → Settings → Applications → Token löschen + neu erstellen | Secretstore-Alias `RFC_PASSWORD` |
|
||||
| 2 | Coolify API-Token | Coolify → Keys & Tokens → Token löschen + neu erstellen | scripts/deploy.py liest aus Env `COOLIFY_TOKEN` |
|
||||
| 3 | Production DB-Passwort (crm_user) | Coolify → postgres service → Env `POSTGRES_PASSWORD` + prestart.sh Role-Sync | Coolify Env + Secretstore |
|
||||
| 4 | Redis-Passwort | Coolify → redis service → Env `REDIS_PASSWORD` | Coolify Env (crm_app + crm_worker) |
|
||||
| 5 | SECRET_KEY | Coolify → crm_app → Env `SECRET_KEY` (neuer random 32+ Zeichen Wert) | Coolify Env; Achtung: invalidiert bestehende Sessions |
|
||||
| 6 | Admin-Web-UI-Passwort | Web-UI → Settings → Passwort ändern | Secretstore |
|
||||
| 7 | MAIL_ENCRYPTION_KEY | Coolify → crm_app → Env (neuer Fernet-Key); danach Mail-Account-Passwoerter einmal re-speichern | Coolify Env |
|
||||
|
||||
Rotations-Reihenfolge: 5 (SECRET_KEY) zuletzt, da es alle Sessions invalidiert.
|
||||
Nach jeder Rotation: Deploy triggern und Health-Check verifizieren.
|
||||
|
||||
Reference in New Issue
Block a user