mirror of
https://github.com/R0m1k3/Apiflow-gateway.git
synced 2026-10-21 22:18:14 +02:00
feat: gateway sécurisé, miroir de schéma automatique et sync incrémentale
- Schéma Hostinger recopié automatiquement depuis PG Debian (colonnes, PK, index) : plus d'init.sql maintenu à la main (corrige articles.artcentrale, mvtart.no_id et les 12 tables manquantes) - Stratégies : full transactionnel (DELETE + INSERT, garde-fou de volume) et window (signature mensuelle + 10 derniers jours) pour les grosses tables - Attente de la fin de la sync Debian (_run), pg_try_advisory_lock, cron 07:30 Europe/Paris, force honoré, alertes webhook - Dashboard : basic auth, CSP sans script inline, plus d'innerHTML, port 3002 non publié (accès via Nginx Proxy Manager) - Secrets hors du compose (.env), frps épinglé 0.71.0 avec TLS forcé, allowPorts et additionalScopes - Suppression de sync.sh, tables.js, utils.js, init.sql ; README de déploiement L'ancien mot de passe de la base `post` figure dans l'historique git : il doit être changé sur le serveur (voir README). Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
1 parent
f8575b9ff2
commit
ea084034b9
26 files changed
+2767
-922
No files matched your search
+22
-3
@@ -1,10 +1,29 @@
|
||||
# Copier en frps.toml et remplir le token
|
||||
# frps.toml est exclu du git (contient le token secret)
|
||||
# Serveur frp (Hostinger) — version frp 0.71.0 (image snowdreamtech/frps:0.71.0-alpine).
|
||||
# Copier en frps.toml et remplacer le token. frps.toml est exclu du git (contient le secret).
|
||||
#
|
||||
# Token : long et aléatoire, identique dans frpc.toml côté Debian. Générer avec :
|
||||
# openssl rand -hex 32
|
||||
|
||||
bindAddr = "0.0.0.0"
|
||||
bindPort = 7000
|
||||
|
||||
auth.method = "token"
|
||||
auth.token = "CHANGE_ME_FRP_SECRET_TOKEN"
|
||||
auth.token = "CHANGE_ME_openssl_rand_hex_32"
|
||||
# Le token authentifie aussi les heartbeats et chaque nouvelle connexion de travail
|
||||
# (doit être identique côté frpc : auth.additionalScopes = ["HeartBeats", "NewWorkConns"])
|
||||
auth.additionalScopes = ["HeartBeats", "NewWorkConns"]
|
||||
|
||||
# Refuse les connexions frpc non chiffrées (frpc a transport.tls.enable = true par défaut)
|
||||
transport.tls.force = true
|
||||
|
||||
# Seuls ports distants autorisés : API Debian (13000) et PostgreSQL Debian (15432).
|
||||
# Toute autre demande de proxy du frpc est refusée.
|
||||
allowPorts = [
|
||||
{ single = 13000 },
|
||||
{ single = 15432 },
|
||||
]
|
||||
|
||||
# Limite le nombre de proxys par client
|
||||
maxPortsPerClient = 2
|
||||
|
||||
log.level = "info"
|
||||
Reference in new issue
Block a user