61 lines
1.3 KiB
Markdown
61 lines
1.3 KiB
Markdown
# Administration (Technik)
|
|
|
|
Dieser Bereich ist für Deployment, Betrieb und technische Wartung.
|
|
|
|
## Struktur
|
|
|
|
- `Dockerfile`
|
|
- `docker-compose.yml`
|
|
- `docker-compose.traefik-routes.yml`
|
|
- `scripts/` (Server, Extraktion, Route-Generator)
|
|
- `docs/` (Planungs-/Brainstorm-Dokumente)
|
|
|
|
## Voraussetzungen
|
|
|
|
- Docker + Docker Compose
|
|
- Traefik mit externem Netzwerk `proxy`
|
|
|
|
## Lokaler Editor-Server
|
|
|
|
```bash
|
|
./administration/scripts/run_editor_server.sh
|
|
```
|
|
|
|
Aufruf: `http://127.0.0.1:4173/`
|
|
|
|
## Traefik Deploy
|
|
|
|
```bash
|
|
docker compose -f administration/docker-compose.traefik-routes.yml up -d --build
|
|
```
|
|
|
|
## Neue Route erzeugen
|
|
|
|
```bash
|
|
./administration/scripts/add-webpage.sh webpage4 mydomain.de
|
|
```
|
|
|
|
Danach:
|
|
|
|
```bash
|
|
docker compose -f administration/docker-compose.traefik-routes.yml up -d --build
|
|
```
|
|
|
|
## Security / Editor Auth
|
|
|
|
- Unclaimed by default (Viewer-Rolle)
|
|
- Claim/Login/Reset über API im `editor_server.php`
|
|
- Sensible Dateien liegen unter `website/content/` und sind via HTTP blockiert:
|
|
- `.editor-credentials.json`
|
|
- `.editor-reset.json`
|
|
- `.editor-rate-limit.json`
|
|
|
|
## Brute-Force Schutz
|
|
|
|
Buckets:
|
|
- `login_account`, `login_global`
|
|
- `reset_request_account`, `reset_request_global`
|
|
- `reset_confirm_account`, `reset_confirm_global`
|
|
|
|
Implementierung: `administration/scripts/editor_server.php`
|