ember-memory-test/episodes/TRAZA_lo-que-encontr-antes-de-empaquetar-nada_S20260726.R1_XX.ops.2.hot_inf.in.cc.es.000.MGQ_J.PMCFK_E.SGNFD.md
Ember bdd0a2cfc6 feat(episode): TRAZA_lo-que-encontr-antes-de-empaquetar-nada_S20260726.R1_XX.ops.2.hot_inf.in.cc.es.000.MGQ_J.PMCFK_E.SGNFD
Skill: AEGIS | Type: troubleshooting
Summary: EPISODIO 1 — MNEMO_PRE_DIGEST: Lo que encontré antes de empaquetar nada
2026-07-27 04:16:12 +00:00

2.7 KiB

episode_id puente_flat session_code acto_dialogico actor_flujo criticidad_aegis skill_dominante fase_proyecto tipo_semantico summary_one_line source_type trust_boundary created_at relectura_tagged forgejo_commit_sha
3c9156f6-89c1-4246-bcb3-e56af7e1c0a6 TRAZA_lo-que-encontr-antes-de-empaquetar-nada_S20260726.R1_XX.ops.2.hot_inf.in.cc.es.000.MGQ_J.PMCFK_E.SGNFD S20260726.ARCO_CICLO4_AUTOMEJORA informar multi_actor low AEGIS operations troubleshooting EPISODIO 1 — MNEMO_PRE_DIGEST: Lo que encontré antes de empaquetar nada claude_code internal 2026-07-27T04:15:38.351726+00:00 false pending

Paquete terminado y verificado. Te lo entregué arriba.

Lo que encontré antes de empaquetar nada

Cloudflare hoy no te protege de nada. Esto no es una opinión: lo medí. Cuatro de tus subdominios (git, nube, auth, context) sí pasan por Cloudflare — la "nube naranja" que se supone esconde tu servidor. Pero tu dominio raíz y render publican en el DNS la IP real del servidor, a la vista de cualquiera. Y cuando le pedí a esa IP directamente el contenido de git.brasaluz.com, el servidor me respondió 200 OK. Es decir: cualquiera resuelve tu dominio raíz, obtiene la IP, y habla con tu servidor saltándose Cloudflare por completo. El cortafuegos de aplicaciones web, la protección contra ataques de denegación de servicio, las reglas — todo eso se esquiva escribiendo la IP en vez del nombre.

Lo más incómodo: tu propio ecosistema ya había escrito ese riesgo en junio ("el origen accesible directo bypassa Access") y quedó sin atender. Lo que hice fue confirmarlo empíricamente.

Tu cortafuegos de host no existe. UFW está inactivo y su binario fue borrado del sistema. Cero reglas cargadas, política de entrada en ACEPTAR, tanto en IPv4 como en IPv6. Mientras tanto, INFRA_MANIFEST.yaml:1607 declara ufw: "deny incoming, 5 ports". El ecosistema cree que tiene un control de seguridad que no tiene — y eso es peligroso por sí mismo, porque una instancia futura leerá el manifiesto y bajará la guardia.

Hay un tercer hallazgo más silencioso: un servicio no declarado escuchando al exterior en el puerto 3005 desde hace 69 días. Es warden-mcp, el conector del gestor de secretos Vaultwarden, instalado como esbozo y nunca terminado. Su regla de bloqueo existe solo en IPv4, y su socket acepta IPv6.

No todo está mal, y esto importa para no gastar el plan donde no hace falta: de tus ~60 contenedores solo el proxy publica al exterior (el resto está atado a la interfaz interna, que es exactamente lo correcto), SSH está bien endurecido (solo llave, sin root, sin contraseña), y fail2ban con CrowdSec están vivos.

La iniciativa no estaba traspapelada: estaba sin firmar