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
Tomar safe point local y confirmar HEAD.
Tomar snapshot Hostinger y backups operativos de Docker/NPM/Portainer/compose/volumenes.
Revisar y clasificar updates pendientes.
Ejecutar updates aprobados dentro de ventana controlada.
Ejecutar reboot controlado.
Validar Docker, Portainer, NPM, SSH, fail2ban, ufw, networking y puertos.
Crear swap de 4 GiB en modo conservador.
Revalidar salud general y decidir GO/NO-GO final.
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.
Volver al principio