5.7 KiB
Migración de Servicios al VPS
Fecha: 29 Sep 2026
Servicios migrados:
- Telegram Watcher
- Shutdown Listener
✅ Estado Actual
En el PC Local (sobremesa)
- ❌ Recordatorios Msgbox → ELIMINADO (no se quiere más)
- ❌ Telegram Watcher → MIGRADO AL VPS
- ❌ Shutdown Listener → MIGRADO AL VPS
- ✅ OmniRoute Watchdog → MANTIENE LOCAL (necesario para OpenCode)
En el VPS (185.187.169.109)
- ✅ Telegram Watcher → Servicio systemd
- ✅ Shutdown Listener → Servicio systemd
📋 Instalación en el VPS
1. Conectarse al VPS
ssh -i C:\Users\juanm\Documents\GitHub\contabo root@185.187.169.109
2. Ejecutar script de configuración
/root/configurar_servicios.sh
Te pedirá:
- TELEGRAM_API_ID: API ID de Telegram (obtener de https://my.telegram.org)
- TELEGRAM_API_HASH: API Hash de Telegram
- TELEGRAM_BOT_TOKEN: Token del bot de Telegram (obtener de @BotFather)
- SHUTDOWN_TOKEN: Token de seguridad (presiona Enter para usar el actual)
3. Verificar que los servicios están corriendo
systemctl status telegram-watcher
systemctl status shutdown-listener
📊 Monitorización
Ver logs en tiempo real
# Telegram Watcher
journalctl -u telegram-watcher -f
# Shutdown Listener
journalctl -u shutdown-listener -f
Ver mensajes de Telegram
tail -f /var/log/telegram_watcher/mensajes.log
Reiniciar servicios
systemctl restart telegram-watcher
systemctl restart shutdown-listener
Ver estado
systemctl status telegram-watcher
systemctl status shutdown-listener
🔧 Configuración del Shutdown Listener
Requisitos previos
Para que el Shutdown Listener del VPS pueda apagar el PC:
-
SSH habilitado en el PC Windows
- Instalar OpenSSH Server (Configuración → Aplicaciones → Características opcionales → OpenSSH Server)
- Iniciar servicio:
Start-Service sshd - Habilitar al inicio:
Set-Service -Name sshd -StartupType 'Automatic'
-
Configurar clave SSH del VPS en el PC
En el VPS:
# Generar clave si no existe ssh-keygen -t rsa -b 4096 -f /root/.ssh/id_rsa -N "" # Copiar clave pública cat /root/.ssh/id_rsa.pubEn el PC Windows:
# Crear directorio SSH si no existe mkdir C:\Users\juanm\.ssh -ErrorAction SilentlyContinue # Pegar la clave pública del VPS en authorized_keys # (copiar el contenido de id_rsa.pub del VPS) Add-Content C:\Users\juanm\.ssh\authorized_keys "<PEGAR_CLAVE_PUBLICA_AQUI>" -
Verificar conectividad desde el VPS
ssh juanm@192.168.1.239 "echo 'Conexión OK'"
Usar el Shutdown Listener
Desde cualquier lugar (Home Assistant, curl, etc.):
curl -X POST http://185.187.169.109:5555/shutdown \
-H "Authorization: Bearer H7iLGJixPp3J3pthCmnR2Ibq0tvERD5THyr_foAeN_8"
🔐 Seguridad
Variables de entorno sensibles
Los servicios usan variables de entorno para credenciales:
TELEGRAM_API_IDTELEGRAM_API_HASHTELEGRAM_BOT_TOKENSHUTDOWN_TOKEN
Estas están en /etc/systemd/system/*.service (solo accesible por root).
Firewall
El Shutdown Listener escucha en el puerto 5555. Asegúrate de:
- Permitir conexiones desde tu red local
- NO exponer públicamente (solo VPN o red interna)
📂 Ubicaciones de archivos
En el VPS
| Archivo | Ubicación |
|---|---|
| Script Telegram Watcher | /opt/telegram_watcher/telegram_watcher.py |
| Script Shutdown Listener | /opt/shutdown_listener/shutdown_listener.py |
| Servicio Telegram Watcher | /etc/systemd/system/telegram-watcher.service |
| Servicio Shutdown Listener | /etc/systemd/system/shutdown-listener.service |
| Log de mensajes | /var/log/telegram_watcher/mensajes.log |
| Script de configuración | /root/configurar_servicios.sh |
🚨 Troubleshooting
El Telegram Watcher no arranca
# Ver logs
journalctl -u telegram-watcher -n 50
# Problemas comunes:
# 1. Credenciales incorrectas → verificar variables en el .service
# 2. Telethon no instalado → pip3 install telethon
# 3. Permisos del log → mkdir -p /var/log/telegram_watcher && chmod 755 /var/log/telegram_watcher
El Shutdown Listener no puede conectar al PC
# Verificar conectividad SSH
ssh -i /root/.ssh/id_rsa juanm@192.168.1.239 "echo OK"
# Si falla:
# 1. Verificar que el PC está encendido y en la red
# 2. Verificar IP del PC (puede haber cambiado)
# 3. Verificar que OpenSSH Server está corriendo en el PC
# 4. Verificar que la clave pública está en C:\Users\juanm\.ssh\authorized_keys
📝 Notas
-
Sesión de Telegram: El watcher usa el BOT_TOKEN (no sesión personal) para evitar el problema de
AuthKeyDuplicatedError. -
Logs: Los mensajes se guardan tanto en journald como en
/var/log/telegram_watcher/mensajes.log. -
Reinicio automático: Ambos servicios se reinician automáticamente si fallan (configurado en systemd).
-
IP del PC: La IP
192.168.1.239está hardcodeada. Si cambia, actualizar en/etc/systemd/system/shutdown-listener.service.
✅ Checklist de migración
- Cerrar procesos locales (Telegram Watcher, Shutdown Listener, Recordatorios Msgbox)
- Eliminar tareas programadas de Windows
- Crear scripts adaptados para VPS
- Copiar archivos al VPS
- Crear servicios systemd
- Ejecutar
/root/configurar_servicios.shen el VPS - Configurar SSH en el PC Windows
- Copiar clave pública del VPS al PC
- Probar shutdown remoto
- Verificar que los logs se generan correctamente
- Actualizar AGENTS.md con la nueva configuración
Última actualización: 29 Sep 2026