README: SSRF_BLOCK_PRIVATE_IPS dokumentiert (Cloud-Deploy)
Neue Section "Deployment-Modus: On-Prem vs. Cloud" im Production- Deployment-Block. Erklaert, warum On-Prem-Default private IPs erlaubt (Plesk/Dovecot lokal) und wann der Flag fuer Cloud-Deploys auf true gesetzt werden soll. Cloud-Metadata-Endpoints sind unabhaengig vom Flag immer geblockt. .env.example: SSRF_BLOCK_PRIVATE_IPS=false als Default mit Block- Kommentar. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -66,6 +66,16 @@ LISTEN_ADDR=0.0.0.0 # In Docker = 0.0.0.0, in Bare-Metal-Production = 127
|
||||
# (ERR_SSL_PROTOCOL_ERROR auf den Assets).
|
||||
HTTPS_ENABLED=false
|
||||
|
||||
# SSRF-Schutz: private IP-Ranges (127.0.0.0/8, 10.0.0.0/8, 172.16.0.0/12,
|
||||
# 192.168.0.0/16, ::1, fc00::/7, localhost) bei Provider/SMTP-Test-Connection
|
||||
# blockieren. Default `false` damit On-Prem-Setups Plesk/Dovecot/Postfix auf
|
||||
# 127.0.0.1 oder im internen Netz nutzen können. Für Cloud-Deployments
|
||||
# (öffentlich erreichbares Backend) auf `true` setzen, sonst kann ein
|
||||
# eingeloggter Admin via /email-providers/test-connection interne Services
|
||||
# anpingen. Cloud-Metadata-Endpoints (169.254.169.254 etc.) sind UNABHÄNGIG
|
||||
# vom Flag immer geblockt.
|
||||
SSRF_BLOCK_PRIVATE_IPS=false
|
||||
|
||||
# ============== ADMINER (DB-UI) ==============
|
||||
# Theme-Auswahl. Verfügbare Designs im offiziellen adminer:latest Image:
|
||||
# adminer-dark, brade, bueltge, dracula, esterka, flat, galkaev,
|
||||
|
||||
@@ -210,6 +210,25 @@ LISTEN_ADDR=127.0.0.1
|
||||
CORS_ORIGINS=https://crm.deine-domain.de
|
||||
```
|
||||
|
||||
### Deployment-Modus: On-Prem vs. Cloud
|
||||
|
||||
OpenCRM ist primär als **On-Prem-Anwendung** designed (eigener Server / VM,
|
||||
hinter Reverse-Proxy). Für **Cloud-Deployments** (öffentlich erreichbares
|
||||
Backend, Shared-Infrastructure, Hyperscaler) gibt es einen zusätzlichen
|
||||
SSRF-Schalter:
|
||||
|
||||
```env
|
||||
# Cloud-Deploy: zusätzlich alle privaten IP-Ranges für Provider-/SMTP-
|
||||
# Test-Connection blockieren (127.0.0.0/8, 10.0.0.0/8, 172.16.0.0/12,
|
||||
# 192.168.0.0/16, ::1, fc00::/7, localhost). Default false, weil
|
||||
# On-Prem-Setups oft Plesk/Dovecot auf 127.0.0.1 brauchen.
|
||||
SSRF_BLOCK_PRIVATE_IPS=true
|
||||
```
|
||||
|
||||
Cloud-Metadata-Endpoints (`169.254.169.254`, `metadata.google.internal` etc.)
|
||||
sind UNABHÄNGIG vom Flag **immer** geblockt – das ist Mindestschutz gegen
|
||||
AWS/GCP/Azure-IMDS-Diebstahl.
|
||||
|
||||
Plus:
|
||||
|
||||
- **Reverse-Proxy** (Nginx/Plesk) so konfigurieren, dass `X-Forwarded-For` hart auf
|
||||
|
||||
Reference in New Issue
Block a user