Diferencia entre revisiones de «Operacion cartelia»

De VIVAitwiki
Ir a la navegaciónIr a la búsqueda
Línea 1: Línea 1:
  
== Instalación ==
+
= Instalación =
 +
[[Instalacion_cartelia | Instalacion de cartelia]]
  
Cartelia se entregará en formato de imagen virtual (.qcow) listo para su despliegue y adaptación por parte del personal de instalación.
 
El personal técnico que despliegue deberá tener nociones básicas de virtualización y administración de sistemas operativos linux
 
  
Los elementos principales de la máquina son:
+
= Diagnósticos =
  
* Sistema Operativo Debian 13 (Trixie)
+
== Comandos de diagnóstico ==
* Apache 2.4.67
 
* PHP 8.4
 
* Motor de base de datos MariaDB 11.8.6
 
* Elementos de seguridad por defecto
 
** Firewall (basado en )
 
** fail2ban
 
  
La adaptación de la máquina entregada para cada caso pasará por realizar los siguientes cambios:
+
<pre style="background-color: #f6f8fa; border: 1px solid #d1d5da; padding: 1em; border-radius: 4px; width: fit-content; margin-left: 0px; font-family: 'Ubuntu Mono', 'Consolas', monospace; white-space: pre-wrap;">
 +
# Estado general de la VM desde el host de virtualización
 +
virsh dominfo cartelia-<nombre-del-entorno>
 +
virsh domifaddr cartelia-<nombre-del-entorno>
  
* INDICAR CAMBIOS A REALIZAR (cambiar hostname, cambiar IP en no se cuantos sitios, cambiar certificados,...)
+
# Dentro de la VM — estado de servicios
 +
systemctl status apache2 mariadb
 +
systemctl status xibo-xmr.service
 +
journalctl -u apache2 -n 100 --no-pager
 +
journalctl -u xibo-xmr.service -n 100 --no-pager
 +
 
 +
# Conexión a la base de datos del CMS
 +
mysql -u <usuario-cms> -p -e "SELECT COUNT(*) FROM display;" <bbdd-cms>
 +
 
 +
# Firewall: reglas activas y contadores por regla
 +
/etc/init.d/firewall status
 +
 
 +
# Conectividad de los puertos de producto
 +
ss -tlnp | grep -E ':(80|443|9505)\b'
 +
 
 +
# Prueba del API de players (XMDS): debe responder el WSDL
 +
curl -s "http://localhost/xmds.php?wsdl" | head -5
 +
 
 +
# Comprobar identidad correcta del clon (no debe coincidir con la plantilla)
 +
cat /etc/machine-id
 +
ssh-keygen -lf /etc/ssh/ssh_host_ed25519_key.pub
 +
</pre>
 +
 
 +
== Ficheros de log ==
 +
 
 +
{| class="wikitable"
 +
! Fichero / origen !! Contenido !! Rotación
 +
|-
 +
| Portal ''Administración > Avanzado > Log'' || Log de aplicación del CMS (registro de players, errores XMDS) || Gestionada por la tarea de mantenimiento del CMS
 +
|-
 +
| <code>/var/log/apache2/cartelia_access.log</code>, <code>/var/log/apache2/cartelia_error.log</code> (y <code>cartelia_ssl_*.log</code> con el vhost HTTPS activo) || Accesos y errores del servidor web (portal y API XMDS de players) || logrotate estándar de apache2
 +
|-
 +
| <code>journalctl -u xibo-xmr.service</code> || Log del servicio XMR || journald
 +
|-
 +
| <code>journalctl -u ssh</code>, <code>/var/log/fail2ban.log</code> || Seguridad de acceso al SO || Estándar journald / logrotate
 +
|}
 +
 
 +
== Errores comunes y soluciones ==
 +
 
 +
{| class="wikitable"
 +
! Síntoma / mensaje !! Causa probable !! Solución
 +
|-
 +
| El portal no carga tras el clonado || La red de la VM no se personalizó o la interfaz cambió de nombre || Revisar <code>ip a</code>, <code>/etc/network/interfaces.d/</code>, y el bridge asignado en libvirt
 +
|-
 +
| Los players no consiguen registrarse || <code>CMS Address</code> o <code>CMS Secret Key</code> incorrectos, o 80/443 filtrados || Verificar sección 4.2 y <code>vars.sh</code> del firewall (4.4); probar <code>curl</code> al XMDS desde la red de players
 +
|-
 +
| Los players se registran pero no reciben órdenes push || Dirección pública de XMR errónea, proxy <code>/xmr</code> no operativo o <code>xibo-xmr</code> caído || Verificar <code>ws(s)://<FQDN>/xmr</code> en el portal, <code>systemctl status xibo-xmr.service</code> y el módulo <code>proxy_wstunnel</code> de Apache; reiniciar XMR
 +
|-
 +
| Aviso de certificado en el navegador || Certificado de la plantilla aún instalado || Sustituir por el certificado del FQDN del entorno
 +
|-
 +
| Dos clones aparecen como la misma máquina en DHCP/monitorización || <code>machine-id</code> no regenerado || Ejecutar <code>rm -f /etc/machine-id && systemd-machine-id-setup</code> y reiniciar
 +
|-
 +
| El CMS no conecta con la base de datos tras cambiar contraseñas || Contraseña cambiada en <code>settings.php</code> pero no en MariaDB (o viceversa) || Sincronizar ambas (ver sección 4.1)
 +
|-
 +
| Sin acceso SSH tras personalizar el firewall || <code>RED_GESTION</code> o <code>IP_LOC</code> erróneas en <code>vars.sh</code> con política final <code>drop</code> || Entrar por <code>virsh console</code>, corregir <code>vars.sh</code> y re-ejecutar <code>/etc/firewall/firewall.sh</code>
 +
|-
 +
| La hora de las programaciones no coincide || Zona horaria o NTP sin configurar || <code>timedatectl set-timezone Europe/Madrid</code> y verificar <code>timedatectl status</code>
 +
|}
 
<br>
 
<br>
  

Revisión del 12:02 13 jul 2026

1 Instalación

Instalacion de cartelia


2 Diagnósticos

2.1 Comandos de diagnóstico

# Estado general de la VM desde el host de virtualización
virsh dominfo cartelia-<nombre-del-entorno>
virsh domifaddr cartelia-<nombre-del-entorno>

# Dentro de la VM — estado de servicios
systemctl status apache2 mariadb
systemctl status xibo-xmr.service
journalctl -u apache2 -n 100 --no-pager
journalctl -u xibo-xmr.service -n 100 --no-pager

# Conexión a la base de datos del CMS
mysql -u <usuario-cms> -p -e "SELECT COUNT(*) FROM display;" <bbdd-cms>

# Firewall: reglas activas y contadores por regla
/etc/init.d/firewall status

# Conectividad de los puertos de producto
ss -tlnp | grep -E ':(80|443|9505)\b'

# Prueba del API de players (XMDS): debe responder el WSDL
curl -s "http://localhost/xmds.php?wsdl" | head -5

# Comprobar identidad correcta del clon (no debe coincidir con la plantilla)
cat /etc/machine-id
ssh-keygen -lf /etc/ssh/ssh_host_ed25519_key.pub

2.2 Ficheros de log

Fichero / origen Contenido Rotación
Portal Administración > Avanzado > Log Log de aplicación del CMS (registro de players, errores XMDS) Gestionada por la tarea de mantenimiento del CMS
/var/log/apache2/cartelia_access.log, /var/log/apache2/cartelia_error.log (y cartelia_ssl_*.log con el vhost HTTPS activo) Accesos y errores del servidor web (portal y API XMDS de players) logrotate estándar de apache2
journalctl -u xibo-xmr.service Log del servicio XMR journald
journalctl -u ssh, /var/log/fail2ban.log Seguridad de acceso al SO Estándar journald / logrotate

2.3 Errores comunes y soluciones

Síntoma / mensaje Causa probable Solución
El portal no carga tras el clonado La red de la VM no se personalizó o la interfaz cambió de nombre Revisar ip a, /etc/network/interfaces.d/, y el bridge asignado en libvirt
Los players no consiguen registrarse CMS Address o CMS Secret Key incorrectos, o 80/443 filtrados Verificar sección 4.2 y vars.sh del firewall (4.4); probar curl al XMDS desde la red de players
Los players se registran pero no reciben órdenes push Dirección pública de XMR errónea, proxy /xmr no operativo o xibo-xmr caído Verificar ws(s)://<FQDN>/xmr en el portal, systemctl status xibo-xmr.service y el módulo proxy_wstunnel de Apache; reiniciar XMR
Aviso de certificado en el navegador Certificado de la plantilla aún instalado Sustituir por el certificado del FQDN del entorno
Dos clones aparecen como la misma máquina en DHCP/monitorización machine-id no regenerado Ejecutar rm -f /etc/machine-id && systemd-machine-id-setup y reiniciar
El CMS no conecta con la base de datos tras cambiar contraseñas Contraseña cambiada en settings.php pero no en MariaDB (o viceversa) Sincronizar ambas (ver sección 4.1)
Sin acceso SSH tras personalizar el firewall RED_GESTION o IP_LOC erróneas en vars.sh con política final drop Entrar por virsh console, corregir vars.sh y re-ejecutar /etc/firewall/firewall.sh
La hora de las programaciones no coincide Zona horaria o NTP sin configurar timedatectl set-timezone Europe/Madrid y verificar timedatectl status


2.4 Procedimientos básicos

2.4.1 Modificar textos idioma

Herramientas necesarias:

  • poedit (https://poedit.com/); nos permitirá:
    • Descompilar fichero ".mo" (el que entiende cartelia) existente a ".po" para modificar textos de idioma
      • Se hace con la herramienta C:\Program Files\Poedit\GettextTools\bin\msgunfmt.exe
      • Ejemplo invocación: msgunfmt.exe "C:\cartelia\locale\es.mo" -o "C:\cartelia\locale\es.po" (las carpetas cambiarán en cada caso)
  • Ver las traducciones para un fichero ".po"
  • Modificar y "compilar" a fichero ".mo"

La herramienta poedit es de uso sencillo y no requiere de instrucciones específicas para personal técnico de mdtel


Instrucciones para cambiar mensajes

ejemplo para idioma español
entre paréntesis perfil que puede realizar la tarea con seguridad
  1. .- (SAT) Obtener el fichero ".mo" original de /var/www/html/cartelia/locale/es.mo; este es un fichero "compilado"
  2. .- (PU) Descompilar el fichero con la herramienta msgunfmt
  3. .- (PU) Modificar mensajes con "poedit" y compilar
  4. .- (SAT) Subir el fichero modificado a /var/www/html/cartelia/locale/es.mo