Administracio de sistemes
SaaS Portal & WP Connector
Plataforma SaaS per gestionar centralitzament sites WordPress amb seguretat, backups, SEO, tickets i facturacio.
Context
La gestio de maintenance de WordPress per a multiples clients requeria connectar-se a cada site individualment per executar actualitzacions, fer backups, verificar seguretat i atendre tickets. Sense una eina unificada, el proces era lent, fragmentat i dificil d'escalar.
Que fa
- Auditoria de seguretat amb score 0-100, 10 categories i hardening automatic
- Backups programats amb 4 tipus (full, db, files, no-media), retencio, restauracio i cloud storage via SSH+rsync
- SEO avancat amb auditoria Lighthouse (Node.js worker), deteccio d'enllaos trencats
- Sistema de tickets amb Kanban, prioritats i sincronitzacio bidireccional Portal-Plugin WordPress
- Facturacio amb calculs automatics, generacio PDF i seguiment d'estats
- Agent IA autonom (nanobot) amb accions de maintenance, aprovacio humana via Telegram
- Audit-service per captar leads sense necessitat d'instal.lar el plugin
- Content AI per generacio de posts, alt-text i links interns
Arquitectura
Sistema de microserveis sobre Docker Compose amb 8 contenidors: FastAPI backend (20+ routers, 17 models BD, 5 background workers), PostgreSQL 15, nanobot, Lighthouse worker (Node.js), broken-links worker (Python), audit-service. El plugin WordPress connecta cada site client mitjanant 43 endpoints REST autenticats amb firma RSA SHA256.
Dificultats principals
- Error 502 en produccio causat per await fora de funcio async en FastAPI
- 14 vulnerabilitats de seguretat trobades en auditoria: SQL injection (CVSS 9.8), path traversal (CVSS 9.8), IDOR, SSRF, CSRF, cookies insegures, execucio com root en Docker
- Timeouts en event loop quan servidors WordPress (ISP/Cloudflare) no responien
- Migracio SQLite a PostgreSQL sense downtime amb scripts de migracio personalitzats
- Comunicacio criptografica PHP-Python amb firma RSA per tokens de site
Solucions
- Middleware CSRF basat en cookies, proteccio SSRF (bloqueig IPs privades i cloud metadata), rate limiting amb slowapi
- Parametritzacio de queries SQLAlchemy, sanititzacio de filenames, verificacio d'autoritzacio en tots els endpoints
- asyncio.to_thread + timeout de 20s per no bloquejar l'event loop
- Sistema de migracions per script per evolucio controlada de l'esquema BD
- Sistema de tokens RSA amb signatura i verificacio creuada PHP-Python
- Dockerfile amb usuari non-root, cookies HTTP-only amb flag secure configurable
- Proxy LiteLLM per desacoplar el proveidor d'IA del codi de negoci
Aprenentatges
- En FastAPI, mai barrejar await en funcions sync: el rastre d'error 502 es dificil de seguir
- La seguretat es dissenya des de l'inici: SQL injection, SSRF i path traversal son prevenibles amb patrons correctes
- Els background workers necessiten idempotencia i maneig d'errors per no cascarse
- Un agent IA sobre produccio requereix un sistema d'aprovacions robust per accions d'alt risc
- SQLite es excel.lent per desenvolupament pero PostgreSQL es imprescindible en produccio