Saltar a contenido

VPS Baseline Hardening + Preparacion Operativa

Estado del documento

  • Documento de planificacion.
  • No ejecutar cambios reales desde este documento.
  • No modifica el VPS.
  • Cierre documental actualizado tras la ejecucion real del 2026-05-28.
  • No aprueba todavia el deploy del compose real de OpenClaw.
  • El runbook operativo vigente de esta etapa es docs/VPS-HARDENING-EXECUTION-PLAN.md.

Evidencia inicial 2026-05-28

  • Relevamiento ejecutado en modo solo lectura desde C:\APV\openclawai.
  • Safe point local relevado en 9e94ba01bc517b75f4bd22265fcfd89c866cfa3d.
  • Host confirmado: srv977009.
  • Uptime observado: 118 days, 5:13.
  • Updates pendientes: si; se relevaron paquetes base del sistema, containerd, docker-buildx-plugin, docker-compose-plugin, initramfs-tools, systemd, runc y otros.
  • Estado de reboot: *** System restart required ***.
  • Paquetes asociados a reboot observado: libc6 y multiples linux-image-*, incluido linux-image-6.8.0-117-generic.
  • Memoria observada: 7.8 GiB total, 699 MiB usada, 4.1 GiB libre, 7.1 GiB available.
  • Swap observada: 0 B.
  • Disco observado: /dev/sda1 con 96G totales, 5.4G usados, 91G libres (6%).
  • Docker observado estable con dos contenedores en ejecucion: portainer y nginx-proxy-manager.
  • Redes Docker observadas: bridge, host, none, nginx-proxy-manager_default, portainer2_default y proxy-network.
  • Volumenes Docker observados: portainer_data y portainer_data_new.
  • docker system df: 2 imagenes activas, 2 contenedores activos y uso total de imagenes de 1.283 GB.
  • ufw observado activo con deny incoming por defecto y ALLOW IN visibles para 22/tcp, 80/tcp, 443/tcp y 9443/tcp.
  • fail2ban observado activo con un jail: sshd.
  • Puertos en escucha observados: 22, 80, 81, 443, 8000 y 9443.
  • Desalineacion observada: 81/tcp y 8000/tcp escuchan via docker-proxy, pero no aparecen en las reglas visibles de ufw.

Resultado final de etapa 2026-05-28

  • Decision final: baseline hardening FINALIZADO.
  • Estado operativo del VPS: GO para OpenClaw.
  • Estado del compose OpenClaw: NO desplegado y aun pendiente de diseno conservador.
  • Estado de NPM y Portainer: activos y estables tras updates, swap y reboot.

Registro de cierre

  • Snapshot utilizado: pre-openclaw-hardening-srv977009-2026-05-28
  • Updates ejecutados: apt update, apt upgrade -y, apt autoremove -y
  • Reboot ejecutado: si
  • Swap activa: si, 4 GiB, persistente
  • Docker validado post-reboot: si
  • NPM validado post-reboot: si
  • Portainer validado post-reboot: si
  • Networking validado post-reboot: si
  • Listeners esperados validados: 22, 80, 81, 443, 8000, 9443
  • SSH, fail2ban y ufw operativos: si
  • Rollback disponible: si, via snapshot y respaldos previos
  • Riesgos remanentes:
  • warnings de apt por mirrors duplicados
  • warning no bloqueante de fail2ban sobre allowipv6

Objetivo de esta etapa

  • Sanear la base operativa del VPS antes de agregar un tercer stack.
  • Reducir riesgo de impacto sobre portainer y nginx-proxy-manager.
  • Cerrar una validacion GO/NO-GO real antes de redactar o ejecutar el compose de OpenClaw.

Bloqueantes resueltos

  • Snapshot/backup previo evidenciado.
  • Updates pendientes resueltos durante ventana controlada.
  • Reboot ejecutado y validado.
  • Swap implementada y persistente.
  • Exposicion y listeners revalidados sin cambios inesperados.
  • Rollback formal disponible.

Secuencia ejecutada

  1. Tomar safe point local y confirmar HEAD.
  2. Tomar snapshot Hostinger y backups operativos de Docker/NPM/Portainer/compose/volumenes.
  3. Revisar y clasificar updates pendientes.
  4. Ejecutar updates aprobados dentro de ventana controlada.
  5. Ejecutar reboot controlado.
  6. Validar Docker, Portainer, NPM, SSH, fail2ban, ufw, networking y puertos.
  7. Crear swap de 4 GiB en modo conservador.
  8. Revalidar salud general y decidir GO/NO-GO final.
  9. Cerrar etapa en GO y pasar a compose conservador de OpenClaw.

Regla de despliegue

  • Baseline hardening completado y host en GO.
  • Compose real de OpenClaw sigue bloqueado hasta redactar y aprobar el compose conservador.
  • No crear todavia docker-compose.yml real, .env real, stack Portainer, redes Docker reales ni volumenes reales para OpenClaw.
  • La siguiente salida aprobable despues de cerrar esta etapa es una preparacion de compose conservador con revalidacion previa del host.