Nov 13, 2025
Diego B.
15min de lectura
Configurar un servidor de streaming de vIdeo en tu propio VPS te permite transmitir contenido en directo a tu audiencia sin las limitaciones de plataformas como YouTube, tanto en políticas como en personalización.
En este tutorial aprenderás a crear paso a paso tu servidor de streaming de video en un VPS con Ubuntu, para que puedas controlar cómo se emite, quién accede y qué tecnología utilizas.
Primero verás qué necesitas para empezar y cómo preparar tu servidor. Después, configurarás NGINX con el módulo RTMP para gestionar la transmisión, añadirás una CDN para mejorar la estabilidad, conectarás tu software de streaming y probarás tu emisión.
Por último, aprenderás a habilitar otros protocolos de streaming como HLS y DASH y a hacer que tu servidor sea accesible desde navegadores web, además de aplicar medidas básicas de seguridad para proteger tu plataforma de streaming.

Un servidor de streaming de video es un sistema intermediario que le permite transmitir contenido en directo desde su sistema local a audiencias en línea.
El proceso de transmisión en directo funciona codificando el contenido de video en tiempo real, dividiéndolo en paquetes de datos más pequeños y enviándolo al cliente. La transferencia de medios es continua, lo que significa que el servidor no almacena los medios localmente.
Crear tu propio servidor de streaming te ofrece más flexibilidad y control que usar plataformas como YouTube y Twitch.
Por ejemplo, puedes elegir diferentes protocolos para codificar tu vídeo, como RTMP, HLS o DASH.
También te permite transmitir cualquier contenido o usar opciones de monetización que esas plataformas pueden restringir.
Para configurar tu propio servidor de streaming de video, necesitas un VPS que ejecute un sistema operativo Linux, como Ubuntu 24.04.
Lee el tutorial que explica qué es un VPS si necesitas más información sobre cómo funcionan los servidores privados virtuales. También debe ser compatible con el servidor web NGINX, ya que utilizaremos su módulo de transmisión de datos.
Además, tu servidor debe admitir la conexión SSH para ejecutar comandos de forma remota. Tu sistema local también debe tener instalado un cliente SSH como PuTTY para acceder al VPS. Para Linux y MacOS, utiliza el terminal integrado.
La configuración de tu propio servidor de streaming multimedia también requiere conocimientos básicos de administración de servidores Linux.
Si no estás familiarizado con ello, te recomendamos leer nuestro tutorial de comandos de Linux para obtener más información sobre las utilidades esenciales.
Ahora sí, empecemos paso a paso a configurar tu servidor de streaming.
Dado que la configuración de un servidor de streaming requiere un VPS, adquiere un plan de un proveedor de confianza si aún no lo has hecho. Para elegir el mejor alojamiento VPS para la transmisión de contenido de video, ten en cuenta los requisitos previos que hemos explicado anteriormente.
Basándonos en ellos, Hostinger es la opción ideal. Todas nuestras planes VPS cuentan con un terminal de navegador que te permite conectarte al sistema sin necesidad de un cliente SSH.
Esto ayuda a simplificar el proceso de configuración del servidor de streaming en directo, ya que puedes hacerlo directamente desde tu navegador web.
Además, Kodee, nuestro asistente de IA para VPS, te permite generar rápidamente comandos para instalar y configurar el software del servidor de streaming multimedia.
Esto permite que el plan VPS de Hostinger sea especialmente adecuado para los nuevos usuarios de VPS que no están familiarizados con la administración de sistemas Linux.
Además de ayudarte con diversas tareas de administración del sistema, puedes pedirle a Kodee que gestione directamente varios aspectos de tu servidor, como reiniciar tu VPS, restablecer los servicios a su estado predeterminado y ajustar las reglas del cortafuegos. Solo tienes que introducir un mensaje y Kodee se encargará del resto.
Al elegir un plan de alojamiento VPS, asegúrate de que también ofrezca una conexión de alta velocidad y un ancho de banda suficiente. Esto es importante, ya que la transmisión de vídeo necesita una transferencia de datos constante y continua.
El VPS de Hostinger proporciona una conexión de 1 Gb/s y hasta 32 TB de ancho de banda. Nuestra red de alto rendimiento garantiza que tu plataforma de streaming en directo transmita vídeos de forma fiable y sin buffering.
El coste de un servidor privado de streaming de vídeo varía en función de tu proveedor de alojamiento VPS. Por ejemplo, puedes configurar uno en Hostinger a partir de 4,99 € al mes.
Además, ten en cuenta los precios de otros servicios, como CDN y suscripciones de dominio.
Para elegir un VPS para streaming, asegúrate de que proporcione suficiente ancho de banda y potencia de cálculo para garantizar un rendimiento estable.
Además, debe ser compatible con NGINX para habilitar el módulo RTMP y ofrecer acceso root completo para evitar problemas de permisos al configurar el software.

Después de comprar y configurar tu VPS, debes preparar el entorno de alojamiento actualizando su repositorio e instalando el software del servidor de video.
Comienza conectándote a tu servidor a través de SSH utilizando PuTTY o el terminal del navegador. Puedes encontrar las credenciales de inicio de sesión en la sección de Vista general del VPS, en la parte inferior de hPanel. De forma predeterminada, se conectará como root.

Sin embargo, crearemos otro superusuario, ya que ejecutar comandos como root puede causar graves problemas si no se tiene cuidado. Para ello, ejecuta lo siguiente:
adduser tu-nombre-de-usuario
Introduce la información necesaria, como la contraseña, el nombre y otros datos. Pulsa Y y luego Intro para confirmar.
A continuación, concede al nuevo usuario los privilegios de superusuario para permitir la ejecución de comandos administrativos utilizando sudo. Para ello, introduce:
usermod -aG sudo tu-nombre-de-usuario
Cambia al nuevo usuario con este comando:
su tu-nombre-de-usuario
Introduce la contraseña del usuario y deberías ver los cambios en el shell de la línea de comandos. Ahora, preparemos el servidor actualizando los paquetes del sistema para asegurarnos de que obtiene las últimas versiones de software del repositorio local:
sudo apt update sudo apt upgrade
Ten en cuenta que los comandos solo funcionan para sistemas operativos basados en Debian, como Ubuntu. Para otras distribuciones, sustituye apt por el gestor de paquetes correspondiente, como dnf o yum en CentOS:
sudo yum update sudo yum upgrade
En un servidor de transmisión multimedia, NGINX recibirá las solicitudes de los clientes, las procesará y enviará el contenido solicitado a los usuarios. Para instalarlo en Ubuntu, ejecuta:
sudo apt install -y nginx
Ahora, ejecuta el siguiente comando para iniciar NGINX cuando tu VPS se reinicie automáticamente:
sudo systemctl enable nginx
Comprueba si NGINX está activo y configurado correctamente verificando su estado con este comando:
sudo systemctl status nginx
La aplicación de terminal debería mostrar NGINX como activo y en ejecución, similar a este ejemplo:

Ahora, instala el módulo del protocolo de mensajería en tiempo real (RTMP), que permite al servidor de streaming NGINX transferir contenido de vídeo a los equipos cliente con una baja latencia.
En un proceso de streaming de video en directo, este protocolo envía los paquetes de datos que codifica su software de transmisión. A continuación, el equipo del usuario recompilará los datos para mostrar el vídeo solicitado.
Para instalar el módulo RTMP de NGINX, ejecuta el siguiente comando:
sudo apt install -y libnginx-mod-rtmp
Ten en cuenta que todos los comandos de instalación anteriores recuperarán el software del repositorio del gestor de paquetes de tu sistema, lo que significa que es posible que no sean la última versión.
Si necesitas la última versión, descarga NGINX y RTMP directamente desde sus repositorios de GitHub. Antes de hacerlo, instala las siguientes dependencias para compilar el paquete:
sudo apt install build-essential git libpcre3-dev libssl-dev zlib1g-dev
Ahora, obtén ambos repositorios de software utilizando estos comandos de clonación de Git:
sudo git clone https://github.com/arut/nginx-rtmp-module.git sudo git clone https://github.com/nginx/nginx.git
Cambia al directorio NGINX y ejecuta el script del compilador. Para ello, ejecuta la siguiente serie de comandos de forma consecutiva:
cd nginx ./auto/configure --add-module=../nginx-rtmp-module make sudo make install
Una vez completada la instalación del servidor RTMP, configura NGINX para habilitar la transmisión de video en directo. Para ello, abre el archivo nginx.conf con un editor de texto como nano:
sudo nano /etc/nginx/nginx.conf
En la ventana del editor de texto, añade el bloque de configuración RTMP al final del archivo. Por ejemplo, insertaremos estos ajustes básicos:
rtmp {
server {
listen 1935;
chunk_size 4096;
application live {
live on;
record off;
}
}
}Aquí tienes un desglose de cada parámetro para ayudarte a comprender qué hace el código de configuración:
La página de GitHub de las directivas del módulo RTMP enumera otros parámetros para cambiar la configuración de RTMP.
Por ejemplo, añade lo siguiente en server{} para permitir que solo una dirección IP específica transmita en su servidor y denegar el acceso a otras:
allow publish 127.0.0.1; deny publish all;
Aunque tienes control total sobre tu propio servidor de video, utiliza estas directivas con cuidado, ya que pueden afectar al rendimiento de tu VPS. Para garantizar una transmisión fiable, establece el valor adecuado según tus necesidades y los recursos de hardware del servidor.
A continuación varios parámetros importantes de configuración de la transmisión y su impacto en el rendimiento:
Te recomendamos utilizar el valor predeterminado y ajustarlo gradualmente para ver si la nueva configuración afecta al rendimiento de tu servidor de video. Además, recuerda que la difusión de contenido en varios canales consumirá recursos adicionales.
¡Importante! Para evitar problemas, prueba los cambios en un área de pruebas antes de aplicarlos al entorno en vivo. Después de aplicar la nueva configuración, supervisa tu servidor para comprobar si hay inestabilidad.
Después de añadir el bloque RTMP al archivo de configuración de NGINX, pulsa Ctrl + X → Y → Intro para guardar los cambios. Ejecuta lo siguiente para validar su configuración y detectar errores de sintaxis:
sudo nginx -t
Los clientes de Hostinger VPS también pueden utilizar Kodee para verificar su configuración NGINX y comprobar si hay errores como este:

Ahora, recarga la configuración del servidor web NGINX para aplicar la configuración utilizando este comando:
sudo nginx -s reload
Una red de distribución de contenidos (CDN) es una red de servidores que almacena temporalmente su contenido alojado en múltiples ubicaciones geográficas. Permite a los usuarios recuperar los datos solicitados más cercanos a ellos, lo que reduce la latencia y la velocidad de carga.
Dado que los usuarios se conectan al servidor de almacenamiento en caché, la CDN reduce la carga en tu VPS. Un servidor de transmisión de video requiere esta función, ya que la distribución continua del flujo de datos a múltiples dispositivos puede causar inestabilidad.
En un entorno de streaming, este software de almacenamiento en caché almacena segmentos del vídeo emitido en tiempo real. A continuación, servirá a los clientes el contenido de los datos temporales almacenados en la red CDN en lugar del servidor host.
La forma más sencilla de configurar una CDN es utilizando un proveedor de servicios como Cloudflare. Antes de hacerlo, asegúrate de haber apuntado un nombre de dominio a su VPS, ya que lo utilizaremos para la configuración.
A continuación, sigue estos pasos:
No cierres el panel de control, ya que lo utilizaremos para comprobar la configuración más adelante. Ahora, vamos a dirigir tu dominio a los nuevos servidores de nombres.
A continuación te indicamos cómo hacerlo en Hostinger:

Vuelve al panel de control de Cloudflare y haz clic en Comprobar servidores de nombres ahora. Si aparece un mensaje con tu nombre de dominio, haz clic en Continuar. Se te mostrará una guía de inicio rápido, pero seleccionaremos Finalizar más tarde.
¡Eso es todo! Tu transmisión de vídeo ahora se sirve a través de Cloudflare CDN.
Una vez que el servidor de transmisión esté listo, configura el software de transmisión de video en tu equipo local para transmitir el contenido. Dado que hay varias opciones, te proporcionaremos varias herramientas de transmisión populares para ayudarte a elegir:
Para elegir el mejor software de streaming, ten en cuenta el sistema operativo de tu ordenador, la capacidad del hardware y los requisitos de la herramienta. Para este tutorial, utilizaremos OBS, ya que es gratuito, ligero y fácil de configurar.
Descarga OBS Studio desde la página oficial y abre el paquete de instalación. Sigue las instrucciones del asistente de instalación para completar el proceso de configuración. Una vez completado, abre la aplicación obs64.exe.
Ahora, conecta OBS con tu servidor RTMP navegando a Configuración → Transmisión. En el menú desplegable Servicio, selecciona Personalizado. En el campo Servidor, introduce la siguiente dirección:
rtmp://tu-ip-del-servidor/live
Reemplaza tu-ip-del-servidor por la dirección IP real de tu VPS. Además, cambia /live si modificas la ruta de la aplicación en el bloque RTMP.
La clave de transmisión va al final de la URL de transmisión RTMP. Por ejemplo, si utiliza test, se conectará al servidor utilizando esta dirección:
rtmp://tu-ip-del-servidor/live/test
También desmarcaremos la opción Usar autenticación. Después de introducir toda la información necesaria, haz clic en Aplicar y Aceptar.

A continuación, configura las escenas, las fuentes y los ajustes de audio de tu transmisión. Haz clic en Iniciar transmisión para emitir tu video.
También puede transmitir contenido de video bajo demanda. Sin embargo, debe colocar el archivo de vídeo dentro del servidor de transmisión en directo.
Comprueba si tu video se transmite correctamente al servidor. Puedes hacerlo accediendo a la URL a través de un reproductor multimedia como VLC. Estos son los pasos:

Puedes utilizar otro reproductor multimedia para comprobar si la URL funciona, siempre y cuando sea compatible con RTMP. Si se produce un error, asegúrate de que la URL es correcta, especialmente si cambias la ruta de la aplicación en la configuración de NGINX y utilizas una clave de transmisión específica.
Además, comprueba si tu archivo de configuración contiene ajustes que permitan o bloqueen las transmisiones desde una dirección IP específica. Si es así, cerciórate de que tu VPS y el sistema que transmite el vídeo estén incluidos en la lista de permitidos.
Comprueba también que la dirección es correcta utilizando una herramienta en línea como whatismyipaddress y comprueba si el valor coincide. Después de cambiar el archivo de configuración, recuerda recargar siempre NGINX para aplicar los cambios.
Además, asegúrate de que tu firewall permite la conexión NGINX a través de los puertos 1935, 80 y 443. Puedes utilizar las herramientas integradas de Linux, como iptables o Uncomplicated Firewall. También puedes usar la función de configuración del firewall de hPanel siguiendo estos pasos:

Ahora, vuelve a VLC e intenta transmitir el vídeo para comprobar si el problema se ha resuelto.
Una vez que los usuarios en línea puedan acceder a tu servidor de transmisión, aplica las prácticas de seguridad recomendadas para permitir una transmisión de datos segura y minimizar los posibles puntos de entrada para los ciberdelincuentes.
Utiliza credenciales seguras para todos los usuarios, incluidas las cuentas root y de alojamiento. Además, instale un certificado SSL (Secure Sockets Layer) para cifrar la conexión entre tu servidor y los clientes, lo que permitirá una transmisión de video segura.
SSL enmascara los datos transmitidos en caracteres indescifrables, lo que impide que los ciberdelincuentes obtengan información personal sin procesar, como la dirección IP del usuario.
Los pasos para configurar SSL en tu VPS varían en función del emisor del certificado.
Para este tutorial, configuraremos un plan gratuito de Certbot, que ofrece el mismo nivel de seguridad que los de pago.
Estos son los pasos:
sudo apt install python3 python3-venv libaugeas0
sudo python3 -m venv /opt/certbot/ sudo /opt/certbot/bin/pip install --upgrade pip
sudo /opt/certbot/bin/pip install certbot certbot-nginx
sudo ln -s /opt/certbot/bin/certbot /usr/bin/certbot
sudo certbot --nginx
¡Enhorabuena, tu plataforma de streaming en directo ya está protegida! Recuerda actualizar el certificado SSL cada 90 días o habilitar la renovación automática con el siguiente comando:
echo "0 0,12 * * * root /opt/certbot/bin/python -c 'import random; import time; time.sleep(random.random() * 3600)' && sudo certbot renew -q" | sudo tee -a /etc/crontab > /dev/null
Además de SSL, asegúrate de añadir las directivas de denegación a tu archivo nginx.conf para evitar que otros usuarios transmitan a tu VPS. De lo contrario, los hackers podrían utilizar la conexión no autorizada para encontrar vulnerabilidades de seguridad.
Del mismo modo, configura correctamente las reglas del firewall en tu VPS para que solo escuche los puertos necesarios y cierre los demás. Dejar todos abiertos expondrá tu servidor a puntos de entrada adicionales que los hackers podrán explotar.
El servidor web NGINX ofrece dos protocolos de streaming de video adicionales, además de RTMP, que puedes habilitar a través del archivo nginx.conf.
Por ejemplo, el protocolo HTTP Live Streaming (HLS) es ideal para la transmisión multiplataforma debido a su compatibilidad con cualquier navegador web y reproductor de vídeo HTML5. Sin embargo, no es adecuado para juegos o transmisiones interactivas debido a su alta latencia.
Para habilitar HLS, añade las siguientes directivas a application live {} en el archivo de configuración de tu servidor de streaming de vídeo:
hls on; hls_path /var/www/html/stream/hls; hls_fragment 15;
La configuración hls on habilita el protocolo para la transmisión, mientras que hls_path define el directorio para almacenar los fragmentos de vídeo transmitidos. El directorio hls_fragment establece la duración de cada sección de video enviada a los usuarios.
Otro protocolo es Dynamic Adaptive Streaming over HTTP (DASH), que es de código abierto y personalizable. Te permite habilitar la transmisión con velocidad de bits adaptativa para mantener una calidad de vídeo óptima en una red inestable.
Sin embargo, DASH no es compatible con algunos reproductores y navegadores web. Además, es un protocolo obsoleto que puede resultar poco fiable para un uso a largo plazo. Al igual que HLS, habilita DASH añadiendo las siguientes configuraciones:
dash on; dash_path /var/www/html/tmp/dash; dash_fragment 15;
Puedes habilitar ambos protocolos, que el cliente elegirá automáticamente en función de la compatibilidad de tu reproductor multimedia o los requisitos del encabezado de la solicitud. Para ello, simplemente añade ambas directivas en tu archivo de configuración.
Dado que es más probable que los usuarios vean vídeos en streaming sin un reproductor multimedia específico como VLC, haz que tus archivos multimedia sean accesibles a través de navegadores web.
Antes de hacerlo, habilita los protocolos HLS y DASH, ya que el uso exclusivo de RTMP podría causar problemas de compatibilidad.
Puedes añadir la configuración a nginx.conf, pero utiliza un archivo independiente dentro de /sites-available para organizar el código y simplificar el mantenimiento. También puedes aplicar la configuración solo a un sitio específico para aislarlo.
Para crear el archivo de configuración, ejecuta el siguiente comando. Ten en cuenta que puede que no tenga extensión:
sudo nano /etc/nginx/sites-available/rtmp
En el editor de texto nano, añade la siguiente configuración:
server {
listen 9000;
location / {
add_header Access-Control-Allow-Origin *;
root /var/www/html/stream;
}
}
types {
application/dash+xml mpd;
Guarda los cambios y cierra nano. Ahora, accede al menú Configuración del cortafuegos de hPanel y permite que cualquier fuente se conecte al puerto 9000, que utilizaremos para servir el vídeo.
Puedes utilizar cualquier puerto excepto los que ya están reservados para otras aplicaciones, como el 80 y el 443 de NGINX.
Además, cambia la ruta raíz según las directivas de ruta de tu protocolo. Si no has creado la carpeta, hazlo con el comando mkdir de la siguiente manera:
sudo mkdir /var/www/html/stream
Reinicia NGINX y deberías poder acceder a la transmisión a través de un navegador web utilizando tu URL. Ten en cuenta que, dependiendo del protocolo, la dirección es diferente.
Accede a la transmisión HLS a través de http://tu_dominio:9000/hls/stream.m3u8. Mientras tanto, utiliza http://tu_dominio:9000/dash/stream.mdp para ver la transmisión DASH. Recuerda que es posible que tengas que insertar la URL en HTML para que los navegadores web puedan mostrarlas.
Consulta nuestra práctica guía sobre cómo ganar dinero con el streaming para obtener todos los detalles.
Crear tu propio servidor de streaming abre la puerta a una plataforma mucho más flexible que cualquier servicio externo.
Ahora que tienes la base configurada, puedes avanzar hacia funciones más completas: añadir transcodificación para adaptar la calidad del vídeo, integrar reproductores HTML5 para mejorar la experiencia en navegadores o automatizar tareas de administración desde tu VPS.
También es un buen momento para optimizar la seguridad, explorar modelos de monetización y preparar tu infraestructura para audiencias más grandes.
Si estás trabajando en más proyectos con VPS o quieres profundizar en protocolos como HLS o DASH, puedes seguir desarrollando tu entorno con configuraciones avanzadas.
Este tipo de mejoras te permitirá ofrecer transmisiones más estables, escalables y compatibles con cualquier dispositivo.
Todo el contenido de los tutoriales en este sitio web está sujeto a los rigurosos estándares y valores editoriales de Hostinger.