En cuanto un vídeo es público, cualquiera que pueda leer el código fuente de tu página puede copiar su dirección. A veces no pasa nada. A menudo sí: otro sitio inserta tu reproductor y consume tu tráfico, una licencia solo cubre algunos países o un bloque de direcciones no deja de extraer tu biblioteca. UFOLOAD te ofrece varios controles para ello, y funcionan en capas distintas. Este artículo explica qué hace cada uno, cómo funcionan las reglas de coincidencia y dónde termina cada uno, para que puedas combinarlos con criterio en lugar de confiar en un único interruptor.
Los controles de un vistazo
| Control | Qué limita | Dónde se configura |
|---|---|---|
| Dominios de inserción permitidos | Qué sitios pueden mostrar tu reproductor en un iframe | Estudio del reproductor, pestaña Acceso |
| Países bloqueados | Espectadores de los países de la lista | Estudio del reproductor, pestaña Acceso |
| Direcciones IP bloqueadas | Direcciones individuales y máscaras | Estudio del reproductor, pestaña Acceso |
| Dominios de descarga permitidos | Qué sitios pueden abrir la página de descarga | Estudio del reproductor, pestaña Acceso |
| Enlaces firmados con caducidad | Cuánto tiempo sigue siendo válida una dirección de reproducción y para quién | API, POST /files/{id}/links |
Todo lo de esta lista forma parte de los ajustes del reproductor y de entrega de tu cuenta y se aplica a todos tus vídeos. Las reglas están disponibles en todos los planes; solo el botón de descarga en sí se limita a los planes Pro y Max, como muestra la página de precios.
Paso 1: limita la inserción a tus dominios
El reproductor insertado se ejecuta dentro de un iframe en la página de otra persona, y el navegador le indica de qué página se trata mediante el referrer. El reproductor pasa ese host al servidor, que lo compara con tu lista. Si el host no está en la lista, el servidor responde con un 403 y el reproductor muestra un mensaje de no disponible en lugar del vídeo.
Las reglas de coincidencia son estrictas y conviene conocerlas con exactitud:
example.compermite ese host exacto y nada más. No permitewww.example.com.*.example.compermite todos los subdominios deexample.com, pero no elexample.comsin subdominio. Para cubrir un sitio y sus subdominios, añade ambas entradas.- No se distinguen mayúsculas y minúsculas, y se ignoran los puertos y el punto final, así que
Example.com:8080coincide conexample.com. - La lista admite hasta 100 entradas. Una lista vacía significa que el reproductor puede insertarse en cualquier sitio, que es la opción predeterminada.
- Escribe nombres de host simples. Si pegas una dirección completa por error, solo se conserva su host.
Añade todos los hosts en los que realmente insertas vídeos, incluidos los dominios de pruebas y de vista previa, antes de activar la lista. Un vídeo que de repente muestra un mensaje de no disponible en tu propio sitio de pruebas es la sorpresa más habitual.
Lo que no hace el bloqueo por dominio
Este control frena el hotlinking ocasional: alguien que pega tu iframe en su página. No es una barrera de seguridad, y es mejor saber por qué. La comprobación depende del referrer que envía el navegador. Si una página elimina el referrer, el reproductor no puede saber dónde está insertado y, en ese caso, no bloquea, porque de lo contrario los ajustes de privacidad y las políticas de referrer romperían inserciones legítimas. Del mismo modo, un visitante decidido que copie la dirección firmada de la lista de reproducción desde el panel de red puede reproducirla en otro lugar hasta que caduque, porque los segmentos se comprueban por la firma del enlace, no por la página que los solicita. La página pública de visualización de un vídeo tampoco está restringida por la lista de dominios: cualquiera con su enlace puede abrirla.
Así que piensa en la lista como una valla que mantiene fuera a los vecinos honrados. Para un control más fuerte sobre un stream que sirves tú mismo, usa enlaces firmados, descritos más abajo. Si necesitas lo contrario, un vídeo al que solo puedan acceder personas elegidas, ten en cuenta que UFOLOAD no tiene vídeos privados ni DRM; lee alojamiento propio frente a plataformas gratuitas frente a un hosting de vídeo antes de confiarle contenido confidencial.
Paso 2: bloquea países y direcciones IP
Las reglas por país e IP se aplican en dos lugares: cuando un espectador abre la página de visualización o de inserción, y en cada petición de la lista de reproducción y de los segmentos en la capa de entrega. Las comprobaciones de entrega se hacen en cada petición en lugar de almacenarse en caché, así que una regla que añades se aplica al siguiente segmento, y quien ya tiene un enlace no puede saltarse la regla por conservarlo.
- Los países se indican con códigos ISO 3166-1 alpha-2 de dos letras separados por comas, por ejemplo
US, CN, RU. El país del espectador se determina a partir de la dirección IP en una base de datos de geolocalización. Cada lista admite hasta 100 entradas. - Las direcciones IP pueden ser una dirección individual como
203.0.113.7o una máscara con un asterisco en el último octeto como203.0.113.*, que cubre todo el rango de 256 direcciones. Las direcciones IPv6 se pueden incluir de forma exacta.
Dos precauciones prácticas. Las máscaras son poco precisas: una máscara .* sobre una red móvil o de oficina bloquea a todas las personas legítimas que hay detrás. Y la geografía basada en IP solo es tan precisa como los datos de direcciones que la respaldan. Los visitantes que usan una VPN o un proxy aparecen donde esté el nodo de salida, así que bloquear un país es una forma de reducir el tráfico no deseado o de respetar de buena fe una licencia regional, no una garantía.
Tus propias reglas no te bloquean mientras tengas la sesión iniciada como miembro de la organización propietaria del vídeo, y tampoco a nuestro equipo de soporte. Es intencionado, para que bloquear tu propio país no te deje fuera de tu biblioteca, pero también significa que debes probar desde un navegador sin sesión iniciada o desde otra red.
Enlaces firmados para tu propio reproductor
Si reproduces el stream en tu propia página con hls.js (consulta cómo insertar un vídeo HLS), la lista de dominios no interviene, porque el reproductor nunca pide permiso a la página de UFOLOAD. El control lo da el propio enlace. POST /api/v1/files/{id}/links emite enlaces de reproducción y descarga con una vida útil de 60 segundos a 30 días. Añade bind_ip para vincular el enlace a una dirección IPv4, o bind_cookie para vincularlo a un valor de cookie que tu servidor asigna al visitante; en ese caso, la respuesta indica la cookie que debe acompañar a la petición.
curl -X POST "https://ufoload.com/api/v1/files/FILE_ID/links" \
-H "Authorization: Bearer $UFOLOAD_API_KEY" \
-H "Content-Type: application/json" \
-d '{"ttl": 600, "bind_ip": "203.0.113.7"}'Una vida útil corta combinada con la vinculación es la herramienta más potente disponible: un enlace copiado de tu página deja de servir en minutos y no sirve desde ninguna otra dirección. El precio es que debes emitir los enlaces desde tu servidor en cada visita a la página, que es el patrón que describen la guía de subida y API y la documentación de la API.
Dominios de descarga
Los reproductores de los planes Pro y Max pueden mostrar un botón de descarga. Una lista aparte, la de dominios de descarga permitidos, funciona exactamente igual que la de inserción, pero controla qué sitios pueden abrir la página de descarga en un marco. Déjala vacía para permitir todos los sitios. Los visitantes que abren la página de descarga directamente en UFOLOAD no tienen restricciones, igual que con la página de visualización.
Paso 3: guarda y prueba
- Guarda las listas en la pestaña Acceso.
- Abre una página de un dominio permitido en una ventana privada y confirma que el vídeo se reproduce. Comprueba también la variante con subdominio.
- Abre la misma inserción desde un dominio que no esté en la lista, por ejemplo una página de prueba local servida desde otro nombre de host, y confirma que el reproductor muestra el mensaje de no disponible.
- Para una regla de país o IP, prueba sin sesión iniciada, desde una red que cumpla la regla si tienes una.
- Mantén la política de referrer de tu propia página en un valor razonable como
strict-origin-when-cross-origin. Una políticano-referreroculta el host al reproductor, que entonces no puede aplicar la lista.
Usadas juntas, una lista de inserción y enlaces firmados de vida corta cubren la mayoría de los casos reales: el hotlinking ocasional se bloquea en la puerta, y quien quiera ir más allá tendrá que esforzarse por un enlace que caduca. Cuando hay anuncios disponibles y los muestras en el reproductor, la guía de monetización explica los formatos publicitarios y cómo se programan las pausas. La lista de todo lo disponible en el reproductor está en la página de funciones, y la lista de comprobación para elegir hosting de vídeo muestra qué controles de acceso exigir a cualquier proveedor.
Sube un vídeo y obtén un reproductor HLS y una clave de API en minutos. Los límites de cada plan figuran en la página de precios.