En el artículo anterior vimos cómo instalar Hermes en una máquina virtual con Ubuntu Server dentro de Proxmox y cómo conectarlo a Telegram para poder interactuar con él de una forma cómoda. Pero la instalación inicial es solo el primer paso. Lo realmente interesante empieza cuando dejamos de usar Hermes únicamente como un chatbot y empezamos a tratarlo como un agente capaz de ayudarnos a administrar el propio servidor donde se ejecuta.
En esta segunda parte vamos a mejorar nuestro entorno de Hermes paso a paso. La idea es pedirle, directamente desde Telegram, que realice tareas reales de administración: restringir el acceso del bot solo a nuestra cuenta, configurar una carpeta compartida con Samba para intercambiar archivos desde Windows, activar un firewall UFW prudente, preparar backups automáticos, revisar el estado del gateway y reforzar el sistema de aprobaciones para comandos sensibles. Todo ello con una filosofía clara: Hermes puede hacer mucho trabajo por nosotros, pero nosotros seguimos manteniendo el control revisando y autorizando cada acción importante.
El objetivo no es convertir Hermes en un administrador sin supervisión, sino en un ayudante técnico que nos ahorre tiempo, reduzca errores y nos permita gestionar un homelab de forma más sencilla. Al finalizar, tendremos un Hermes más seguro, más útil y más preparado para trabajar con archivos, proteger su configuración y avisarnos si algo empieza a fallar.
Lo primero que vamos a hacer es ver si hay una actualización disponible. Para ello ejecutamos:
- hermes --version
Me ha devuelto lo siguiente:
Hermes Agent v0.14.0 (2026.5.16)
Project: /home/madiazg/.hermes/hermes-agent
Python: 3.11.15
OpenAI SDK: 2.24.0
Update available: 164 commits behind — run 'hermes update'
Por tanto, actualizamos hermes con el comando
- hermes update
Ahora debemos reiniciar el gateway ejecutando el comando:
- hermes gateway restart
Verificamos:
- hermes doctor
- hermes status --all
- hermes pairing list
Por último, lo probamos desde Telegram.
Recomendación: no actualizaría “a ciegas” si el bot te está funcionando bien. Primero backup, luego update.
Dashboard
- hermes dashboard --host 0.0.0.0 --insecure
Dicho esto, no te la recomiendo, salvo una prueba muy puntual en una red totalmente controlada, porque el dashboard puede exponer claves API y configuración sensible.
Para acceder desde un navegador desde otro pc dentro de la misma red:
- http://[direccion IP]:9119
Como gestionamos hermes y el servidor donde se aloja
Lo que me explota la cabeza de estos agentes de IA es que, como hemos visto en el artículo de instalación, podemos comunicarnos con hermes a través de Telegram así que podemos chatear con la IA y pedirle cosas.
Pero lo realmente sorprendente es que Hermes no se limita a responder preguntas. Al tener acceso a distintas skills, también puede interactuar con el sistema donde está instalado y con su propia configuración. Esto significa que, en lugar de abrir la consola y empezar a escribir comandos manualmente, podemos pedirle directamente desde Telegram que realice determinadas tareas por nosotros.
Hermes analizará la situación, propondrá los cambios necesarios y, cuando tenga que ejecutar acciones delicadas, nos pedirá aprobación antes de continuar. De esta forma, seguimos manteniendo el control, pero dejamos que él se encargue de buena parte del trabajo técnico.
A partir de aquí, vamos a pedirle a Hermes que realice algunas mejoras en nuestro entorno.
Seguridad: mantener Telegram bloqueado solo para tiPara bloquear Hermes solo para un usuario de Telegram, le indicamos:
Configura Hermes para que solo pueda ser accedido desde esta cuenta de Telegram
Hermes realizó los siguientes pasos:
- Cargó la información de su propia configuración,
- Revisó el gateway y localizó cómo aplicar la restricción,
- Detectó ni Telegram user ID
- Después se configuró para permitir solo ese ID.
- Por último reinició/verificó el gateway y comprobó que;
- Yo seguías autorizado
- Otros usuarios simulados quedaban bloqueados
- No había otros usuarios aprobados.
Como pueden comprobar, hermes lo hizo el solito, sin que yo haya escrito ningún comando. Alucinante el tiempo que nos ahorra.
Activar Samba
Samba es un software para compartir archivos e impresoras en red entre Linux y Windows usando el protocolo SMB/CIFS (el mismo que usa Windows para las carpetas compartidas).
Dicho de forma simple: permite que un servidor Linux se comporte como un servidor de archivos “tipo Windows”, de forma que desde otros equipos puedas acceder a carpetas compartidas.
Es una forma de pasarle ficheros a hermes para, por ejemplo, para que los analice.
Para configurarlo tan solo le dije a hermes a través de Telegram una serie de comandos.
Crea una carpeta en la VM denominada Hermes. Es una carpeta que utilizaré para intercambiar ficheros con mi ordenador w10.
Hermes creó la carpeta y la verificó:
/home/xxxxx/Hermes
¿Ya está instalado samba?
Hemes comprobó paquetes, comandos, servicios y puertos y me respondió:
No, parece que Samba no está instalado actualmente. Puedo instalarlo u compartir /home/madiazg/Hermes
Ok
Hermes realizó las siguientes tareas:
- Instaló Samba y utilidades SMB.
- Configuró el recurso compartido /home/xxxx/Hermes.
- Creó y actualizó el usuario Samba xxxxx.
- Verificó servicios, configuración y acceso local.
Después de tener Samba configurado, le indiqué:
Realiza la configuración necesario para que mi windows reconozca esta unidad de red
Hermes realizó las siguientes acciones:
- Comprobó servicios y puertos Samba.
- Instaló/configuró WS-Discovery.
- Ajustó la compatibilidad de Samba con Windows.
- Reinició servicios.
- Verificó puertos adicionales.
Activar firewall UFW
Vamos a decirle a hermes que active y configure el firewall de una forma estandar (prudente) pero solo lo necesario:
- SSH
- Samba solo en tu red local.
- Lo que Hermes necesite localmente.
Algo que no he comentado es que para que hermes ejecute ciertos comandos necesita la clave sudo así que me fio de hermes y se la indico.
Eso significa que Hermes quiere ejecutar un comando en Linux, pero te está pidiendo permiso antes por seguridad.
- Allow Once: Permitir solo esta vez. Hermes ejecuta únicamente este comando concreto y la próxima vez volverá a preguntarte. Es la opción más segura y la que suele merecer la pena usar.
- Session: Permitir durante esta sesión. Hermes podrá ejecutar comandos similares mientras dure la sesión actual, sin volver a preguntarte. Útil cuando estás haciendo una tarea larga de administración del servidor.
- Always: Permitir siempre ese tipo de acción. Hermes recordará el permiso y ya no volverá a pedir autorización para comandos de esa categoría. Yo esto solo lo usaría para acciones muy inocuas y cuando ya confíes bastante en el agente.
- Deny: Denegar. No ejecuta el comando. La tarea probablemente falle, quede incompleta o Hermes intente otra estrategia.
Yo, por defecto, uso Allow Once.
Hermes realizó los siguientes pasos:
- Comprobó el estado inicial
- Verificó los puertos usados
- Creó una copia de seguridad de la configuración UFW
- Reseteó las reglas anteriores de UFW
- Configuró las políticas por defecto
- Permitió el tráfico local interno de la VM
- Permitió SSH solo desde la red local
- Permitió Samba solo desde la red local
- Permitió la detección de red para Windows solo desde la red local
- Activó UFW
- Verificó el estado final
- Comprobó la conectividad local
- Eliminó los scripts temporales usados para la configuración
- Guardó el nuevo estado estable en memoria
Backups automáticos
Configurar backups automáticos es importante porque reduce mucho el riesgo de perder la configuración de Hermes y de la VM por un fallo, una actualización problemática o un error humano.
En este caso concreto, sirve para proteger:
- La configuración de Hermes.
- El acceso por Telegram.
- La memoria y sesiones.
- Las skills personalizadas.
- La carpeta compartida Samba.
- Archivos que uses para tu blog o pruebas.
- Configuraciones delicadas como firewall, Samba, .env, etc.
Resumiendo, los backups automáticos son importantes porque hacen que tu VM sea recuperable. Sin ellos, un fallo puede obligarte a reconstruir Hermes, Telegram, Samba, firewall y archivos a mano. Con ellos, puedes restaurar rápidamente y seguir trabajando.
En este caso, al ser un entorno de pruebas, solo voy a indicarle que los configure una vez por semana:
Hermes, configura backups automáticos semanales y almacena dichos backups en la carpeta compartida Hermes para yo poder descargarlos directamente en mi PC. Los backups de mas de 2 meses los elimina.
Después de unos 10 minutos hermes me indica que ha configurado backups automáticos semanales en la VM. El destino de los bakups es
/home/madiazg/Hermes/Backup
y que podré acceder desde windows:
\\192.168.1.22\Hermes\Backup
Los pasos que siguió fueron los siguientes:
- Inspeccionó la carpeta compartida y el espacio disponible.
- Revisó la configuración existente de Hermes, Samba, UFW y systemd.
- Creó la carpeta Hermes/Backup.
- Preparó un script de backup semanal.
- Excluyó la propia carpeta de backups para evitar copias recursivas.
- Incluyó los archivos principales de Hermes y configuraciones del sistema.
- Añadió generación de checksum, manifiesto y log.
- Configuró la retención automática de backups antiguos.
- Creó el servicio hermes-weekly-backup.service.
- Creó el temporizador hermes-weekly-backup.timer.
- Activó el temporizador para que se ejecute automáticamente.
- Ejecutó un primer backup manual de prueba.
- Verificó la integridad del archivo generado.
- Comprobó que el temporizador quedó activo y habilitado al arranque.
- Informó de la ubicación, frecuencia, retención y archivos generados.
Monitoreo básico del gateway
Es importante hacer un monitoreo básico del gateway de Hermes porque el gateway es una de las piezas centrales que permite que Hermes se comunique con el exterior: Telegram, dashboard, agentes, herramientas, APIs, archivos, etc.
Dicho de forma sencilla: si el gateway falla, Hermes puede parecer “vivo”, pero no funcionar correctamente.
Un monitoreo básico sirve para comprobar cosas como:
- Que el servicio está levantado y activo.
- Que responde en el puerto esperado.
- Que no se ha quedado bloqueado.
- Que no consume demasiada CPU o RAM.
- Que los logs no muestran errores repetidos.
- Que Telegram, dashboard o los agentes siguen comunicándose bien.
- Que no hay problemas de permisos, red o autenticación.
Después de unos minutos hermes ha configurado un monitoreo básico con una frecuencia de 5 minutos y compueba que el servicio de usuario hermes-gateway está activo y, si existe un endpoint HTTP configurado para el gateway/API server, comprueba su /health.
Los pasos que siguió hermes fueron los siguientes:
- Cargó la skill de Hermes Agent.
- Cargó la skill de administración Linux.
- Inspeccionó el estado de hermes-gateway.
- Revisó la configuración del gateway.
- Revisó los puertos activos.
- Comprobó la configuración de Telegram.
- Revisó los logs del gateway.
- Identificó el puerto HTTP esperado.
- Creó el script de monitoreo.
- Creó el servicio systemd de usuario.
- Creó el timer systemd de usuario.
- Activó el timer.
- Ejecutó el monitor manualmente.
- Verificó el estado del servicio de monitoreo.
- Verificó el estado del timer.
- Comprobó la disponibilidad de Telegram.
- Probó el registro de fallos.
- Ajustó permisos del archivo de estado.
- Guardó la configuración relevante en memoria.
- Informó del resultado final.
Revisar comandos peligrosos / approvals y limpieza final
Recomiendo mantener aprobación manual o smart para comandos peligrosos. Como es un simple comando voy a realizarlo desde la consola:
hermes config set approvals.mode manual
Además, vamos a hacer limpieza:
Revisa el sistema y haz limpieza de configuraciones antiguas que no estén ya en uso.
y como siempre, hermes realizó su trabajo, en este caso, la limpieza del sistema siguiendo estos casos:
- Inspeccionó configuraciones, servicios, timers, backups temporales y archivos obsoletos candidatos.
- Clasificó qué estaba en uso y qué era seguro limpiar.
- Creó un respaldo previo de los candidatos antes de limpiar.
- Eliminó configuraciones antiguas no usadas.
- Verificó servicios, timers, Hermes, Samba, UFW y ausencia de errores tras la limpieza.
- Informó los elementos limpiados y conservados.
Resumen
En este artículo hemos dado un paso más en la configuración de Hermes dentro de nuestra VM en Proxmox. Después de tenerlo instalado y conectado a Telegram, hemos empezado a utilizarlo como un verdadero asistente de administración del sistema. Le hemos pedido que revisara su propia configuración, restringiera el acceso de Telegram solo a nuestro usuario, instalara y configurara Samba para compartir archivos con Windows, activara UFW con reglas prudentes, preparara backups automáticos semanales, configurara un monitoreo básico del gateway y revisara el sistema de aprobaciones para comandos delicados.
El resultado es un entorno mucho más seguro, cómodo y preparado para trabajar a diario. Ahora Hermes no solo responde preguntas, sino que también puede ayudarnos a mantener el servidor, proteger el acceso, facilitar el intercambio de archivos, conservar copias de seguridad y avisarnos si algo empieza a fallar. Lo más interesante es que todo este proceso lo hemos gestionado conversando con él desde Telegram, revisando sus propuestas y autorizando las acciones importantes, manteniendo siempre el control pero dejando que Hermes se encargue de buena parte del trabajo técnico.




No hay comentarios:
Publicar un comentario
Nota: solo los miembros de este blog pueden publicar comentarios.