Cambios Torquemada 2026-04-13

Documentación completa de todos los cambios realizados en servidor Torquemada durante la migración a producción con HTTPS

project Modificado: 15/4/2026 torquemada_cambios_2026-04-13.md

Torquemada — Cambios Producción 2026-04-13

Contexto

Migración completa de los portales de Asesoría Torquemada del servidor antiguo (Digital Ocean) al nuevo servidor IONOS (82.223.30.157). Pase a producción con HTTPS y dominios definitivos.


1. DNS — IONOS Panel

Todos los registros DNS de oficinatorquemada.es actualizados a IP 82.223.30.157:

  • @ → 82.223.30.157
  • proxy → 82.223.30.157
  • portalclientes → 82.223.30.157
  • portalempleados → 82.223.30.157
  • portalasesoria → 82.223.30.157
  • portalclientes.gestoriabartolome → 82.223.30.157

2. Nginx Proxy Manager — Proxy Hosts creados

ID Dominio Destino SSL
9 portalclientes.oficinatorquemada.es web-clientes:80 Let's Encrypt ✅
10 portalempleados.oficinatorquemada.es web-empleados:80 Let's Encrypt ✅
11 portalclientes.gestoriabartolome.oficinatorquemada.es web-clientes2:80 Let's Encrypt ✅
12 proxy.oficinatorquemada.es 172.18.0.1:3000 Let's Encrypt ✅
13 portalasesoria.oficinatorquemada.es 172.18.0.1:8080 Let's Encrypt ✅

Advanced config — proxy.oficinatorquemada.es (ID 12)

Incluye /apidl2/ para enrutar a apidl2 (puerto 3001):

location /apidl2/ {
    proxy_pass http://172.18.0.1:3001/;
    proxy_http_version 1.1;
    proxy_set_header Upgrade $http_upgrade;
    proxy_set_header Connection upgrade;
    proxy_set_header Host $host;
}

Advanced config — portalclientes.gestoriabartolome (ID 11)

Redirect de raíz a /clientes2/:

location = / {
    return 302 /clientes2/;
}

3. Contenedor web-clientes2 (nuevo)

Creado para servir el portal gestoriabartolome desde /var/www/html:

docker run -d --name web-clientes2 -p 8083:80 \
  -v /var/www/html:/usr/share/nginx/html:ro \
  --network sql-web-network nginx:alpine
  • IP en red sql-web-network: 172.18.0.3
  • NPM se comunica con él por nombre de contenedor (DNS Docker)

4. Ficheros Angular modificados (bypass reCAPTCHA + URLs API)

web-clientes (contenedor) — Portal Clientes

  • /usr/share/nginx/html/main-es2015.js
  • /usr/share/nginx/html/main-es5.js

Cambios:

  • this.recaptchaSuccess = falsethis.recaptchaSuccess = true (3 ocurrencias cada fichero)

  • http://82.223.30.157:3000/https://proxy.oficinatorquemada.es/ (2 ocurrencias en es2015)

  • /usr/share/nginx/html/index.html

    • Añadido antes de </body>: <style>ngx-recaptcha2{display:none!important}</style>

web-empleados (contenedor) — Portal Empleados

  • /usr/share/nginx/html/main-es2015.js
  • /usr/share/nginx/html/main-es5.js

Cambios:

  • this.recaptchaSuccess = falsethis.recaptchaSuccess = true (3 ocurrencias cada fichero)

  • https://portalasesoria.oficinadigital.eu/https://proxy.oficinatorquemada.es/ (2 ocurrencias en es2015, 2 en es5)

  • /usr/share/nginx/html/index.html

    • Añadido antes de </body>: <style>ngx-recaptcha2{display:none!important}</style>

/var/www/html/clientes2 (host) — Portal Gestoria Bartolomé

  • main-es2015.js y main-es5.js

Cambios:

  • this.recaptchaSuccess = falsethis.recaptchaSuccess = true (3 ocurrencias cada fichero)

  • http://localhost:3001/https://proxy.oficinatorquemada.es/apidl2/ (2 ocurrencias en es2015)

  • index.html

    • Añadido antes de </body>: <style>ngx-recaptcha2{display:none!important}</style>

5. PM2 — APIs Node.js

Proceso Puerto BD Directorio
apidl 3000 gestoria (MySQL) /var/www/html/apidl
apidl2 3001 gestoria2 (MySQL) /var/www/html/apidl2

Ambos arrancados con PM2 y guardados (pm2 save).

Config DB en /var/www/html/apidl/data/config.js y /var/www/html/apidl2/data/config.js:

{ host: '127.0.0.1', user: 'alfresco', password: 'alfresco', database: 'gestoria' }

6. Firewall UFW — regla añadida

ufw allow from 172.16.0.0/12 to any port 3001 comment 'Docker networks -> apidl2 Node.js'

(La regla para puerto 3000 ya existía)


7. Estado final — Portales en producción

Portal URL Estado
Clientes https://portalclientes.oficinatorquemada.es ✅ LIVE
Empleados https://portalempleados.oficinatorquemada.es ✅ LIVE
Asesoría https://portalasesoria.oficinatorquemada.es ✅ LIVE
Clientes Gestoria Bartolomé https://portalclientes.gestoriabartolome.oficinatorquemada.es ✅ LIVE
API Proxy https://proxy.oficinatorquemada.es ✅ LIVE

Notas importantes

  • El reCAPTCHA está bypasseado y oculto en todos los portales (CSS + JS). Pendiente reactivar cuando el cliente quiera configurarlo correctamente.
  • Las contraseñas de empleados en tabla empleado (gestoria DB) son texto plano o hash simple.
  • El login de Portal Empleado usa DNI del empleado como identificador, no el usuario interno.
  • Los bundles Angular son compilados (minificados) — cualquier cambio de URL hay que hacerlo con sed directamente sobre los .js.