Iniciar sesión en Jellyfin en la TV sin contraseña: código QR y aprobación en el móvil

Configura Quick Connect para Jellyfin y tus usuarios entrarán en la TV con un código de 6 dígitos, un QR y un toque en el móvil: sin teclear con el mando ni contraseñas en la TV.

Si gestionas Jellyfin para una casa, ya conoces la peor parte de la noche: alguien abre la app en la TV, aparece la pantalla de inicio de sesión y hay que escribir una contraseña con el mando. Flechas, teclado en pantalla, un carácter mal, vuelta a empezar. Es el motivo más habitual por el que la gente te pide que "simplemente les inicies sesión" en tu servidor.

Jellyfin ya incluye su propio Quick Connect: la app de la TV muestra un código de 6 dígitos y un usuario con sesión iniciada lo aprueba en otro sitio. Lo incómodo es dónde: encontrar esa pantalla en lo más profundo de los ajustes de Jellyfin en el móvil no es evidente para la mayoría. Quick Connect by MediaLab pone delante de ese flujo una página corta en el móvil con un código QR, además de una pantalla con código y QR para navegadores de TV. Este tutorial explica cómo instalarlo, configurarlo y ayudar a tus usuarios cuando algo no funciona.

Qué resuelve

El plugin se apoya en el Quick Connect nativo de Jellyfin y no lo sustituye. Los códigos los crea y los caduca Jellyfin; el plugin solo los aprueba. Eso tiene una consecuencia práctica que me gusta como autohospedador: si algún día quitas el plugin, ninguna cuenta se queda fuera, porque las contraseñas siguen exactamente como las gestiona Jellyfin. Deliberadamente no hay un código de un solo uso que sustituya a la contraseña (a diferencia de la versión para Emby del producto): cada inicio de sesión pasa por el Quick Connect propio de Jellyfin.

Lo que obtienes:

  • Una página en el móvil (/Connect/Page en tu dirección de Jellyfin) con un código QR que aprueba el código Quick Connect de cualquier app de Jellyfin: Android TV, Fire TV, webOS, Tizen, Roku, iOS o Jellyfin Web.
  • Una pantalla con código y QR para navegadores de TV (/Connect/Screen) que muestra el código y un QR que lleva a la página del móvil; tras la aprobación, inicia sesión en Jellyfin Web por sí misma.
  • Un panel de administración en el dashboard de Jellyfin con el estado de Quick Connect, los ajustes y las aprobaciones recientes.

Requisitos

  • Jellyfin Server 12.2 o superior (Linux, Windows o Docker).
  • Quick Connect activado en Jellyfin (Dashboard → General). La página del plugin muestra su estado y puede activarlo por ti.
  • Una cuenta de MediaLab Works con una licencia que cubra el plugin: una suscripción activa, una licencia de por vida dentro de su ventana de actualizaciones, el bundle de Jellyfin o la prueba gratuita de 30 días.

Paso 1 — Instalar el plugin

Desde tu repositorio privado (recomendado). Así Jellyfin instala y actualiza el plugin por sí mismo.

  1. En tu cuenta de MediaLab Works abre Licenses → Jellyfin plugin repository y haz clic en Create address. Cópiala: contiene un token, así que mantenla privada; puedes regenerarla o revocarla cuando quieras.
  2. En Jellyfin abre Dashboard → Plugins → Repositories, haz clic en +, ponle un nombre (por ejemplo MediaLab Works), pega la dirección y guarda.
  3. En Dashboard → Plugins → Catalog busca Quick Connect by MediaLab, haz clic en Install y reinicia Jellyfin.

Desde el catálogo público. https://medialab.works/jellyfin/manifest.json lista todos los plugins publicados de MediaLab Works con su build pública. Añádelo de la misma forma si quieres instalar antes de tener una clave; entonces el plugin pedirá la licencia, o iniciará la prueba, en su página License.

Manualmente, desde un zip. Descarga jf-quickconnect_x.y.z.zip desde Account → Licenses (el SHA-256 aparece junto al botón), extráelo en una carpeta nueva Quick Connect by MediaLab_x.y.z.0 dentro de la carpeta de plugins de Jellyfin — /var/lib/jellyfin/plugins/ en una instalación de Linux por paquete, /config/plugins/ en el volumen de configuración de la imagen oficial de Docker, %ProgramData%\Jellyfin\Server\plugins\ en Windows — y reinicia Jellyfin.

Paso 2 — Activar la licencia

  1. Abre Dashboard → Plugins → Quick Connect by MediaLab y haz clic en License.
  2. Pega tu clave de licencia y haz clic en Activate with key. El plugin contacta con el servidor de licencias, vincula la clave a este servidor y muestra la licencia como Active.
  3. ¿Aún no tienes clave? En la misma página introduce tu correo para iniciar la prueba gratuita de 30 días o compra una licencia; el plugin se activa solo cuando se completa el pago.

La licencia se comprueba una vez al día y en cada arranque de Jellyfin. Sin internet el plugin sigue funcionando 7 días después de la última comprobación correcta. Si cambias de servidor, Move license (release this server) en la misma página libera la clave.

Paso 3 — Comprobar que Quick Connect está activo

Abre Quick Connect en el menú del dashboard de Jellyfin. El primer panel indica si el Quick Connect propio de Jellyfin está habilitado. Si dice que está desactivado, haz clic en Turn on Quick Connect (o actívalo en Dashboard → General). Mientras esté desactivado, las apps de Jellyfin no pueden pedir códigos, así que es lo primero que hay que revisar cuando un usuario informa de un problema.

Paso 4 — Decidir tus ajustes

En el mismo panel:

  • Las páginas del móvil y de la pantalla están activas — tu interruptor general para las páginas propias del plugin.
  • Aprobación desde el móvil también con usuario + contraseña — útil para móviles donde Jellyfin no tiene la sesión iniciada. Desactívalo si quieres aprobaciones solo desde un móvil que ya tenga una sesión de Jellyfin.
  • Las cuentas de administrador no pueden aprobar desde la página del móvil — desactivado por defecto; conviene activarlo si quieres que las cuentas de administrador queden fuera del flujo de inicio de sesión en la TV.

En How to use encontrarás las dos direcciones de tu servidor: la página del móvil (/Connect/Page) y la pantalla (/Connect/Screen). Comparte la dirección de la página del móvil con tus usuarios o pon su código QR junto a la TV. El recorrido completo está en la guía de usuario.

Paso 5 — Explicar a tus usuarios cómo funciona

En una app de Jellyfin en la TV (Android TV, Fire TV, webOS, Tizen, Roku y las demás): elige Quick Connect en la pantalla de inicio de sesión. La app muestra un código de 6 dígitos.

En un navegador de TV: abre la pantalla. Muestra el código y un código QR que lleva a la página del móvil.

En el móvil: escanea el código QR o abre la página del móvil, escribe el código si no está ya rellenado y aprueba con un toque como el usuario de Jellyfin que ya tiene la sesión iniciada en el móvil, o con usuario y contraseña. La TV inicia sesión por sí misma.

¿Todavía no hay cuenta? Con Registration instalado, la página del móvil muestra un enlace para crear una; resulta práctico cuando alguien nuevo se une a la casa y tampoco quieres guiarle por un teclado de TV.

Notas de seguridad que conviene conocer

  • Los códigos son los propios de Jellyfin: los crea Jellyfin y caducan por sí solos. El plugin solo los aprueba.
  • 10 intentos fallidos (códigos incorrectos o contraseñas incorrectas) desde una misma dirección en 10 minutos la bloquean durante 10 minutos.
  • Las cuentas desactivadas se rechazan y, opcionalmente, las cuentas de administrador no pueden aprobar desde la página del móvil.
  • Las páginas del móvil y de la pantalla se sirven con una política de seguridad de contenido estricta y no envían referrer.
  • Cada aprobación se registra con el usuario, la dirección y cómo se aprobó; el panel lista las aprobaciones recientes.

Sobre los datos: los códigos QR se generan en el servidor y las páginas de pantalla y móvil cargan solo los archivos del plugin. Los códigos pendientes viven en memoria; state/approvals.json guarda las últimas 500 aprobaciones (hora, usuario, dispositivo, app, IP, método). Las contraseñas y los tokens nunca se envían a terceros. Tras el inicio de sesión, la TV o el navegador se redirigen a la dirección que fije el administrador (por defecto, la interfaz web del servidor), y el token de sesión se escribe en el almacenamiento del navegador antes de la redirección, nunca en la URL. Las direcciones locales y externas son solo HTTPS.

Consejos y solución de problemas

"Quick Connect no está disponible en este servidor". Activa Quick Connect en Jellyfin (el panel tiene un botón para ello) y comprueba que la licencia del plugin está activa.

"El código no es válido o ha caducado". Revisa los dígitos en la TV; los códigos de Jellyfin caducan al cabo de un rato. Pide a la app uno nuevo.

"Demasiados intentos". Espera 10 minutos. El bloqueo es por dirección, así que un NAT compartido puede afectar a varios usuarios a la vez; si ocurre a menudo, comprueba si alguien está introduciendo el código mal repetidamente en lugar de dar por hecho que el plugin falla.

Una licencia de por vida y las actualizaciones automáticas. El catálogo público ofrece siempre la versión más reciente. Cuando ha terminado la ventana de actualizaciones de una licencia de por vida, las versiones publicadas después no están licenciadas: si las actualizaciones automáticas de plugins de Jellyfin instalan una, el plugin se detiene con "version not licensed" hasta que uses Roll back to x.y.z en su página License o compres un pase de actualización. Para evitarlo, usa tu repositorio privado, que solo ofrece las versiones que permite tu licencia, o elimina los disparadores de la tarea programada Update Plugins en Dashboard → Scheduled Tasks (esto detiene las actualizaciones automáticas de todos los plugins).

Algo se rompió tras una actualización. En la página License, Roll back to x.y.z instala la versión anterior; reinicia Jellyfin después. Esto desactiva la actualización automática de Jellyfin para el plugin hasta el siguiente Install update, así la tarea diaria no vuelve a traer la versión más reciente.

Cobertura de clientes. El flujo de pantalla y móvil se emuló en Chrome con un User-Agent de Philips NETTV (25/25), pero no se probó en TVs físicas. La aprobación de códigos desde apps con Quick Connect nativo se simuló vía API con el cliente "Jellyfin Android TV"; no se probaron Android TV real, Swiftfin, Findroid, Kodi/JellyCon, Infuse ni Streamyfin. Si un cliente concreto se comporta mal, es un comentario útil: cuéntanoslo.

Conclusión

Escribir una contraseña con el mando es una fricción que puedes eliminar sin debilitar nada: los códigos siguen siendo de Jellyfin, las contraseñas siguen siendo de Jellyfin y el plugin solo hace evidente el paso de aprobación. Instálalo desde tu repositorio privado, activa Quick Connect en el dashboard, decide si las aprobaciones desde el móvil pueden usar usuario + contraseña y pon la dirección de la página del móvil donde tus usuarios puedan encontrarla. Más detalles en la página del producto, el changelog para las notas de versión y código fuente, y nuestra base de conocimiento y FAQ para el resto del stack.

Esta publicación se redactó con ayuda de IA a partir de la documentación de nuestros productos o de las fuentes indicadas y se revisó automáticamente antes de publicarse.

Sigue leyendo

¿Usas Emby, Jellyfin o Nextcloud?

Nuestros plugins y apps añaden TV en directo, subtítulos, registro de usuarios y seguridad a tu propio servidor, con prueba gratuita.