Loading...
Cómo Verificar el Estado del Servidor CCcam (En Línea y Desconectado)

Cómo Verificar el Estado del Servidor CCcam (En Línea y Fuera de Línea)

Si necesitas verificar el estado del servidor CCcam y estás mirando un canal congelado o una pantalla negra, lo peor que puedes hacer es comenzar a reiniciar servicios aleatoriamente. Hay tres capas de diagnóstico distintas por las que debes pasar — y la mayoría de las personas saltan directamente a la capa tres ignorando las dos primeras. Esta guía recorre cada método, con comandos reales y rutas de configuración reales, para que puedas identificar exactamente dónde está la falla.

Entendiendo el Estado del Servidor CCcam: Lo Que Realmente Estás Verificando

La mayoría de las guías de verificación de estado tratan "¿funciona CCcam?" como una pregunta simple de sí/no. No es así. Hay tres capas separadas, y cada una puede fallar independientemente de las otras.

Estado del Proceso vs. Estado del Puerto vs. Estado de la Tarjeta

La capa 1 es el proceso CCcam en sí — ¿el binario realmente se está ejecutando en el SO? La capa 2 es el puerto TCP — ¿algo está escuchando en el puerto 12000 y aceptando conexiones? La capa 3 es el estado de la tarjeta — ¿los recursos compartidos de la tarjeta inteligente actual están activos y devolviendo ECMs válidos?

Un servidor puede pasar la capa 1 y la capa 2 mientras falla completamente la capa 3. El proceso se ejecuta, el puerto acepta tu conexión, y el protocolo de enlace se completa — pero cada solicitud de ECM viene rechazada porque la suscripción de la tarjeta ascendente expiró hace dos días. Este es el escenario más común de "mi CCcam está activo pero nada funciona".

CCcam utiliza por defecto el puerto TCP 12000 para conexiones de cliente C-line. La interfaz web integrada se ejecuta en el puerto TCP 16001. Recuerda ambos.

Cómo Se Ve un Servidor CCcam Saludable en Cada Capa

En la capa de proceso: ps aux | grep CCcam devuelve una entrada de proceso que no es un zombie. En la capa de puerto: ss -tlnp | grep 12000 muestra el estado LISTEN. En la capa de tarjeta: la página de interfaz web /cards.html muestra tarjetas activas con respuestas ECM recientes, y tu registro muestra un flujo de entradas "ECM otorgado" en lugar de "ECM denegado".

El tiempo de respuesta de ECM es una de las mejores métricas sustitutivas para la salud del servidor. Menos de 500ms es saludable. 500–1000ms es marginal pero funcional. Más de 1500ms consistentemente significa que algo está mal — el servidor está sobrecargado, el recurso compartido de tarjeta ascendente se está muriendo, o hay un problema de enrutamiento de red entre el servidor y el cliente.

Indicadores de Estado Comunes y lo Que Significan

  • Proceso ejecutándose, puerto cerrado: CCcam se inició pero se bloqueó inmediatamente después del lanzamiento, o se está vinculando a un puerto diferente al que esperas. Verifica la configuración.
  • Puerto abierto, conexiones rechazadas: Una lista blanca de IP a través de directivas ALLOW DENY: en CCcam.cfg está bloqueando la IP de tu cliente.
  • Puerto abierto, protocolo de enlace completado, sin descifrado: Falla en la capa de tarjeta. Comienza en /tmp/CCcam.log.
  • Proceso en estado zombie (Z en ps): El proceso parece estar vivo pero no está haciendo nada. R
requiere kill -9 seguido de un reinicio limpio — un reinicio regular no eliminará un zombie.

Método 1: Verificar el Estado del Proceso y Puerto de CCcam vía Línea de Comandos

Este es tu punto de partida. Antes de tocar archivos de configuración o interfaces web, confirma qué se está ejecutando realmente a nivel del SO.

Usar ps y grep para Verificar que el Proceso de CCcam se Está Ejecutando

En un servidor Linux estándar:

ps aux | grep CCcam

Una respuesta saludable se ve así:

root 1234 0.4 1.2 45320 6140 ? Ss 08:22 0:12 /usr/local/bin/CCcam

Si solo obtienes el proceso grep en la respuesta, CCcam no se está ejecutando. En cajas Enigma2 (Dreambox, VU+, Zgemma), el ps de busybox no acepta banderas aux — solo usa:

ps | grep CCcam

En Enigma2, el binario a menudo se llama CCcam.out en lugar de CCcam, así que busca ambos. También vigila los procesos en estado Z — ese es un zombie. Aparece en la salida pero no está procesando nada. Mátalo con kill -9 <pid>.

Si CCcam se ejecuta vía systemd:

systemctl status CCcam

Para configuraciones init.d más antiguas:

service CCcam status

En Enigma2, el administrador de softcam generalmente maneja esto:

/etc/init.d/softcam status

Nota de Docker: Si CCcam se ejecuta dentro de un contenedor, ps aux en el host no mostrará nada. Necesitas entrar en el contenedor primero: docker exec -it <container_name> ps aux.

Usar netstat o ss para Confirmar que el Puerto 12000 Está Escuchando

ss -tlnp | grep 12000

O si tu sistema aún tiene netstat:

netstat -an | grep 12000

Salida saludable de ss:

LISTEN 0 128 0.0.0.0:12000 0.0.0.0:* users:(("CCcam",pid=1234,fd=5))

Una cosa a vigilar: si CCcam se vincula solo a 0.0.0.0 (IPv4) pero tu cliente se conecta vía IPv6, obtendrás una conexión rechazada incluso aunque el proceso se esté ejecutando y el puerto esté "abierto". Verifica si :::12000 también aparece en la salida de ss si IPv6 está en juego.

Usar Telnet para Probar la Conectividad TCP Bruta al Puerto de CCcam

telnet <server-ip> 12000

Si CCcam está activo, obtendrás una cadena de protocolo de enlace binaria bruta en un segundo o dos — no texto legible, pero la conexión se abrirá y los datos fluirán. Si obtienes "Connection refused" inmediatamente, el puerto está cerrado. Si se cuelga y se agota el tiempo de espera, algo está bloqueando la conexión en una capa de firewall o NAT.

Leer Códigos de Salida y Lo Que Indican las Conexiones Fallidas

"Connection refused" = puerto no está escuchando. "Connection timed out" = firewall descarta o problema de enrutamiento. "Connected but no data" = puerto está abierto pero CCcam puede no estar saludable, o una lista blanca de IP está descartando silenciosamente ynuestra sesión después del protocolo de enlace TCP. Cada modo de fallo apunta a una corrección diferente.

Método 2: Usar la interfaz web de CCcam para monitorear el estado en vivo

Una vez que hayas confirmado que el proceso se está ejecutando y el puerto está activo, la interfaz web es tu mejor herramienta para verificar qué está sucediendo realmente con las tarjetas y los clientes.

Habilitar y acceder a la interfaz web de CCcam (Puerto 16001)

En /etc/CCcam.cfg, asegúrate de que estas líneas estén presentes:

ALLOW WEBIF: yes
WEBIF USERNAME: admin
WEBIF PASSWORD: tucontraseña

Después de guardar, reinicia CCcam. Luego abre un navegador en:

http://<dirección-ip-del-servidor>:16001

Si el puerto 16001 no responde pero CCcam se está ejecutando, verifica nuevamente la directiva ALLOW WEBIF y confirma que nada más esté vinculado a ese puerto.

Interpretar la página de información: clientes, tarjetas, estadísticas de ECM

La página de índice te proporciona una descripción general rápida — versión de CCcam, tiempo de actividad, clientes conectados y tarjetas totales. Pero no te detengas aquí. Los datos útiles están en las subpáginas.

Ve a /cards.html para ver cada tarjeta y compartir que el servidor conoce. Cada entrada muestra el tipo de tarjeta, CAID, proveedor, recuento de saltos y estadísticas de respuesta de ECM. El recuento de saltos importa: 0 significa una tarjeta física insertada localmente, 1 significa una compartición directa de C-line, 2+ significa tarjetas compartidas desde más arriba en la cadena.

Verificar los recursos compartidos activos y los clientes C-line conectados

Ve a /clients.html para ver cada cliente C-line actualmente conectado. Verás su nombre de usuario, dirección IP, duración de la conexión y cuántas solicitudes de ECM han realizado. Un cliente que muestra 0 solicitudes de ECM después de varios minutos está inactivo o mal configurado.

Consulta /ecm.html para ver los tiempos de respuesta de ECM por canal. Una tarjeta listada en /cards.html con cero respuestas de ECM en una ventana de cinco minutos está efectivamente muerta aunque se muestre como conectada — la tarjeta o la compartición ascendente no está devolviendo CWs.

Lo que las páginas de versión y configuración revelan sobre tu configuración

La página /version.html muestra la compilación exacta de CCcam. La página de configuración muestra tus directivas activas sin requerir acceso SSH. Ambas son útiles para diagnósticos remotos cuando no puedes obtener acceso de shell fácilmente.

Método 3: Diagnosticar la salud del servidor mediante archivos de registro de CCcam

El archivo de registro es donde descubres por qué algo no funciona, no solo que no funciona.

Localizar y monitorear el registro de CCcam en tiempo real

En cajas Enigma2, la ruta de registro predeterminada es /tmp/CCcam.log. En instalaciones estándar de Linux puede ser /var/log/CCcam.log, pero esto es configurable en CCcam.cfg mediante la directiva LOG FILE:. Para verlo en vivo:

tail -f /tmp/CCcam.log

Añade más verbosidad configurando esto en tu configuración:

LOG WARNINGS: yes

Una trampa: en servidores de larga duración, /tmp/CCca

m.log puede llenar el sistema de archivos. Cuando eso sucede, CCcam deja de escribir silenciosamente en el registro mientras sigue procesando ECMs. Así que si tu archivo de registro no se ha actualizado en horas pero el proceso está "ejecutándose," verifica df -h /tmp antes de asumir que el registro es exacto.

Entradas de Registro Clave Que Confirman un Servidor Saludable

Busca estas:

  • ECM granted — el descifrado está funcionando
  • connected to — la C-line ascendente se conectó correctamente
  • card added — una nueva tarjeta o recurso compartido quedó disponible

Patrones de Error Que Indican Fallos en el Intercambio de Tarjetas

Estos son los que quieres detectar:

  • ECM denied — la tarjeta no tiene derechos para este canal
  • card not found — no hay tarjeta disponible para manejar la combinación CAID/SID
  • timeout waiting for ECM — el servidor ascendente es lento o está muerto
  • CW not found — la palabra de control no fue devuelta; el descifrado falló
  • connection refused — la C-line ascendente es inaccesible

Usar grep para Filtrar Negaciones de ECM, Tiempos de Espera y Reconexiones

No leas el registro completo manualmente. Usa greps dirigidos:

grep -i "ecm denied" /tmp/CCcam.log | tail -20
grep -i "timeout" /tmp/CCcam.log | tail -20
grep -i "connection refused" /tmp/CCcam.log | tail -20
grep -i "card not found" /tmp/CCcam.log | tail -20

Ejecutar los cuatro toma aproximadamente 30 segundos y te dice más que cinco minutos mirando el registro sin procesar.

Método 4: Probar la Conectividad de C-line Desde el Lado del Cliente

Probar desde el lado del cliente aísla si estás tratando con un problema del servidor o un problema del receptor local. Este paso solo ahorra mucho tiempo desperdiciado.

Enviar una C-line de Prueba vía Telnet desde un Cliente Remoto

Desde cualquier máquina Linux en la red (o externamente si el puerto está reenviado):

telnet <cccam-server-ip> 12000

Un servidor CCcam activo responde con un apretón de manos binario casi inmediatamente — dentro de 200–300ms en una LAN. Si te conectas externamente y telnet se cuelga, el problema es el reenvío de puertos o una regla de firewall, no el proceso CCcam en sí. El éxito del ping ICMP no significa nada aquí. Ping puede funcionar bien mientras que el puerto 12000 está completamente bloqueado — siempre prueba el puerto real.

Usar OScam como Cliente para Verificar la Respuesta del Servidor CCcam

Si estás ejecutando OScam como cliente apuntando a un servidor CCcam, verifica /etc/oscam/oscam.server para confirmar que el lector está configurado correctamente. La interfaz web de OScam (puerto predeterminado 8888) muestra el estado del lector, los tiempos actuales de respuesta de ECM en milisegundos, y si el lector está en estado "OK" o "ERROR".

Un lector que muestre "TIMEOUT" o "NO_CARD" en la página de estado de OScam significa que OScam está alcanzando el servidor CCcam en th

e nivel TCP pero no recibiendo respuestas de CW válidas — lo que apunta a un fallo de capa de tarjeta en el lado de CCcam.

Verificar los Tiempos de Respuesta de ECM como Métrica de Salud del Servidor

Los tiempos de respuesta de ECM son el indicador de salud en tiempo real más claro:

Tiempo de Respuesta de ECM Estado
Menos de 500ms Saludable — operación normal
500ms – 1000ms Marginal — monitorear de cerca
1000ms – 1500ms Degradado — probable problemas ascendentes
Más de 1500ms Problemático — espera congelación

Lo que la Alta Latencia de ECM (>1000ms) te Dice Sobre el Servidor

La latencia de ECM consistentemente alta apunta a una de tres cosas: el compartir de tarjeta ascendente en el que depende el servidor está sobrecargado, la ruta de red entre tu cliente y servidor tiene problemas de enrutamiento (ejecuta un traceroute para verificar), o el servidor CCcam en sí está sobrecargado con demasiadas conexiones de cliente concurrentes por tarjeta. Verifica el contador de saltos en /cards.html — si estás en el salto 3 o superior, cada salto adicional agrega latencia e inestabilidad.

Solución de Problemas: El Servidor Aparece en Línea pero los Canales Aún se Congelan

Este es el escenario que casi todas las demás guías ignoran. El servidor pasa todas las verificaciones básicas — el proceso se está ejecutando, el puerto 12000 está escuchando, incluso puedes conectarte — pero los canales aún se congelan o la STB muestra "sin señal" o "sin CA encontrado".

Tarjeta Presente pero Fallos de ECM — Posibles Causas

La tarjeta aparece en /cards.html pero el canal no se descifrará. Primera verificación: ¿estás solicitando un SID para el cual la tarjeta realmente tiene derecho? Una tarjeta puede estar completamente funcional mientras tiene cero derechos para un canal específico o nivel de paquete. La página /cards.html muestra los SID autorizados — si el SID del canal no está en la lista, la tarjeta literalmente no puede descifrarlo sin importar cuán saludable sea el servidor.

Verificar Derechos de Tarjeta y Validez de Suscripción

Los derechos de tarjeta están vinculados a la suscripción física, no al software CCcam. Si la suscripción de una tarjeta expiró, CCcam seguirá mostrando la tarjeta como "presente" — pero cada ECM para un canal premium será denegado. El registro mostrará ECM denied para esos canales. No hay solución de software para una suscripción expirada.

Servidor Sobrecargado: Demasiados Clientes por Tarjeta

CCcam tiene una directiva SHARE LIMIT: en CCcam.cfg que limita solicitudes de ECM simultáneas. Si tienes 50 clientes bombardeando una tarjeta, las solicitudes se ponen en cola y muchas se descartan o agotan el tiempo. Verifica /clients.html para las conexiones activas totales y compara con tu límite de compartir configurado. Reduce clientes conectados o agrega otro compartir ascendente.

Problemas de Ruta de Red Entre Servidor y Cliente

Doble

-NAT es un culpable común que es fácil de pasar por alto. Las conexiones TCP se establecen bien pero los paquetes keepalive se pierden en algún lugar del camino, causando que el servidor muestre un cliente como conectado mientras no fluyen datos reales. Ejecuta traceroute desde el cliente al servidor y busca rutas asimétricas o middleboxes que puedan estar realizando inspección stateful en puertos no estándar.

También ten cuidado con los fallos de sincronización NTP. El handshake criptográfico de CCcam es sensible al tiempo — si el reloj del servidor está desfasado más de unos minutos, las conexiones del cliente se rechazarán aunque todo lo demás parezca correcto. Ejecuta date en el servidor y el cliente para comparar las marcas de tiempo.

Firewall y NAT Bloqueando Tráfico de CCcam

Algunos ISP ejecutan inspección profunda de paquetes y específicamente marcan o limitan el patrón del handshake del protocolo CCcam en el puerto 12000. Si todo funciona en tu LAN pero los clientes externos no pueden conectarse a pesar del port forwarding correcto, esta es probablemente la causa. La solución es cambiar el puerto de escucha de CCcam en CCcam.cfg:

PORT: 443

Los puertos 443 u 8080 típicamente evitan las reglas DPI ya que se tratan como tráfico web estándar. Actualiza la regla de port forwarding de tu router y actualiza todas las C-lines del cliente para reflejar el nuevo puerto. Ten en cuenta que el puerto 443 puede entrar en conflicto con un servicio HTTPS existente — verifica primero con ss -tlnp | grep 443.

También verifica tus directivas ALLOW DENY: en CCcam.cfg. Una whitelist de IP mal configurada puede causar que el puerto 12000 acepte la conexión TCP y luego la cierre inmediatamente, lo cual parece desde el exterior como un problema de conexión intermitente.

Automatizando Verificaciones de Estado de CCcam con Scripts y Monitoreo

Verificar manualmente el estado de CCcam funciona para solución de problemas inmediata, pero para un servidor desatendido necesitas automatización. Un trabajo cron de cinco minutos que verifique tanto la salud del proceso como del puerto atrapará las interrupciones antes de que los usuarios comiencen a quejarse.

Escribir un Script Bash para Verificar la Salud del Proceso y Puerto de CCcam

#!/bin/bash
LOGFILE="/var/log/cccam_monitor.log"
TIMESTAMP=$(date '+%Y-%m-%d %H:%M:%S')
HOST="localhost"
PORT="12000"
EMAIL="[email protected]"
# Verificar proceso
if ! ps aux | grep -v grep | grep -q "CCcam"; then echo "$TIMESTAMP - ALERT: Proceso CCcam no encontrado" >> "$LOGFILE" echo "Proceso CCcam inactivo a las $TIMESTAMP" | mail -s "CCcam INACTIVO" "$EMAIL" exit 1
fi
# Verificar puerto
if ! nc -z -w3 "$HOST" "$PORT"; then echo "$TIMESTAMP - ALERT: Puerto $PORT no responde" >> "$LOGFILE" echo "Puerto CCcam $PORT inaccesible a las $TIMESTAMP" | mail -s "Puerto CCcam Inactivo" "$EMAIL" exit 1
fi
echo "$TIMESTAMP - OK: Proceso CCcam ejecutándose, puerto $PORT aceptando conexiones" >> "$LOGFILE"

Guarda esto como /usr/local/bin/check_cccam.sh y hazlo ejecutable: chmod +x /usr/local/bin/check_cccam.sh.

Configurar un Trabajo Cron para Verificaciones de Estado Periódicas

Añade esto a tu crontab (crontab -e):

*/5 * * * * /usr/local/bin/check_cccam.sh >> /var/log/cccam_monitor.log 2>&1

Esto se ejecuta cada 5 minutos. Ajusta el intervalo según la rapidez con que necesites detectar interrupciones. Si prefieres alertas webhook en lugar de correo electrónico (para algo como notificaciones de Slack o Telegram), reemplaza el comando mail con:

curl -s -X POST "https://your-webhook-url" -d "payload=CCcam is down"

Usar nc (netcat) como comprobador de puertos ligero

nc -z -w3 localhost 12000 es más limpio que telnet para comprobaciones con scripts. El indicador -z se ejecuta en modo cero-I/O (solo prueba la conectividad sin enviar datos), y -w3 establece un tiempo de espera de 3 segundos. Se cierra con código 0 en caso de éxito y 1 en caso de error, que es exactamente lo que necesitas para la lógica condicional en un script bash.

Alertas por correo electrónico o webhook cuando CCcam se desconecta

En cajas Enigma2 con herramientas shell limitadas, el comando mail y nc pueden no estar disponibles. Usa wget como comprobación de disponibilidad en su lugar:

wget -q --spider http://localhost:16001
if [ $? -ne 0 ]; then echo "CCcam web interface down" >> /tmp/cccam_monitor.log
fi

Esto no comprueba la capa de tarjeta, pero es una comprobación de disponibilidad razonable cuando tu conjunto de herramientas se limita a lo disponible en el entorno busybox de Enigma2.

Entre la comprobación de procesos, la comprobación de puertos, la comprobación de interfaz web y la supervisión de registros, ahora tienes todo lo que necesitas para verificar el estado del servidor CCcam en cada capa — desde si el binario está ejecutándose hasta si las tarjetas individuales devuelven CW válidos. Sin conjeturas, sin "reiniciar y esperar".

¿Qué puerto usa CCcam por defecto y cómo verifico si está abierto?

CCcam utiliza por defecto el puerto TCP 12000 para conexiones de cliente C-line y el puerto TCP 16001 para la interfaz web. Para confirmar que el puerto está abierto localmente, ejecuta ss -tlnp | grep 12000 o netstat -an | grep LISTEN. Desde una máquina remota, usa telnet <ip> 12000 o nc -zv <ip> 12000 para probar la accesibilidad externa.

El proceso de CCcam se está ejecutando pero ningún canal se está descifrando — ¿qué debo verificar?

Comienza con grep -i "ecm denied" /tmp/CCcam.log | tail -20 y grep -i "card not found" /tmp/CCcam.log | tail -20. Luego abre la interfaz web en el puerto 16001 y comprueba /cards.html — confirma que las tarjetas están listadas con SIDs activos. Verifica que las credenciales de C-line ascendentes sean correctas en CCcam.cfg. Si las credenciales se ven correctas, comprueba si la suscripción de la tarjeta sigue siendo válida y si el SID del canal se encuentra dentro de los derechos de la tarjeta.

¿Cómo verifico el estado de CCcam en un receptor Enigma2 (Dreambox, VU+, etc.)?

SSH en el receptor: ssh root@<receiver-ip>. Ejecuta ps | grep CCcam — busybox ps no acepta las banderas aux. Verifica el registro con tail -f /tmp/CCcam.log. La interfaz web está típicamente en http://<receiver-ip>:16001. CCcam en Enigma2 puede ejecutarse como CCcam.out o ser gestionado mediante /etc/init.d/softcam. También verifica: si tienes tanto CCcam como OScam instalados y ambos están configurados para iniciarse automáticamente, entrarán en conflicto en el puerto 12000 — solo uno puede ganar.

¿Qué significa 'ECM timeout' en el registro de CCcam y cómo lo arreglo?

ECM timeout significa que se envió una solicitud de descifrado aguas arriba pero no se recibió una CW (palabra de control) válida dentro de la ventana de tiempo de espera. Las causas incluyen: el recurso compartido aguas arriba está sobrecargado, la latencia de la red es demasiado alta, o el servidor aguas arriba está caído. Verifica los tiempos de respuesta de ECM en la interfaz web en /ecm.html. Si los valores están consistentemente por encima de 1000ms, el recurso compartido de tarjeta aguas arriba puede estar saturado. Puedes ajustar la directiva ECM LIMIT: en CCcam.cfg para reducir solicitudes de ECM concurrentes por tarjeta, o probar una C-line aguas arriba diferente.

¿Cómo reinicio CCcam y verifico que se reinició correctamente?

En Enigma2: /etc/init.d/softcam restart o /etc/init.d/CCcam restart. En un servidor Linux con systemd: systemctl restart CCcam. Sin systemd: killall CCcam && CCcam &. Después de reiniciar, espera 10–15 segundos y luego ejecuta: ps aux | grep CCcam para confirmar el proceso, ss -tlnp | grep 12000 para confirmar que el puerto está escuchando, y tail /tmp/CCcam.log | grep "card added" para confirmar que las tarjetas se inicializaron correctamente.

¿Puedo verificar el estado de mi servidor CCcam desde fuera de mi red local?

Sí. Desde un host externo: telnet <public-ip> 12000 o nc -zv <public-ip> 12000. Si esto falla pero las comprobaciones locales funcionan, el problema es el reenvío de puertos o una regla de firewall en tu router — no el proceso de CCcam. Confirma que el puerto TCP 12000 se reenvía a la IP interna del servidor de CCcam. Si tu ISP bloquea puertos no estándar, cambia el puerto de escucha de CCcam en CCcam.cfg usando la directiva PORT: y actualiza la regla de reenvío de puertos de tu router para que coincida.

¿Cuál es la diferencia entre el estado del servidor CCcam y el estado de la tarjeta?

El estado del servidor significa que el proceso de CCcam se está ejecutando y aceptando conexiones TCP en su puerto configurado. El estado de la tarjeta significa que la sma ```

Los lectores de tarjetas smartcard o los recursos compartidos C-line ascendentes están activos y devolviendo ECMs válidos. Un servidor puede estar completamente "activo" a nivel de proceso y puerto mientras todas las tarjetas están sin conexión o devolviendo denegaciones de ECM. Siempre comprueba ambas cosas: usa ss -tlnp | grep 12000 o telnet para el estado del servidor, y usa la página de interfaz web /cards.html o comandos grep de registro para el estado de las tarjetas. Confundir los dos es donde la mayoría de las personas pierden una hora depurando.