0
(0)

Peertube es una plataforma de alojamiento de videos federada y de código abierto que puede ejecutar desde su propia computadora. Te permite controlar completamente todo el contenido que alojas y compartes desde tu sitio web. Este tutorial le muestra cómo instalar y alojar Peertube en Ubuntu.

Consejo: si solo desea ver YouTube sin conexión, no es necesario instalar Peertube. Echa un vistazo a todas las formas de ver YouTube sin conexión.

Por qué hospedar y usar Peertube

Una de las características más atractivas de Peertube es su capacidad para cargar videos de otras instancias, lo que hace posible ver contenido desde fuera de su sitio web y aún así mantener el control sobre sus datos.

Una captura de pantalla de un navegador web que muestra una página de Peertube que reproduce un video remoto.

Otra ventaja de Peertube sobre Youtube es que es completamente de código abierto. (Aprenda todo sobre las licencias de código abierto aquí). Esto facilita que cualquier persona examine el código base del programa, lo que puede ser útil para los usuarios que están preocupados por la seguridad de sus datos.

Bueno saber: Obtén más información sobre cómo proteger tus datos en línea instalando extensiones de privacidad y seguridad en Chrome.

Instalación de Peertube

Antes de que pueda instalar Peertube, debe asegurarse de tener un servidor listo. Esta podría ser su PC personal o un servidor alquilado de un proveedor de alojamiento web. Este tutorial se realiza en un Ubuntu VPS de océano digital.

Una sección de una página de Digitalocean que muestra la gota de Peertube.

  1. Configure una nueva cuenta de usuario para Peertube. Esto le permitirá controlar fácilmente lo que el programa puede hacer dentro de su sistema:
sudo useradd -b /bin/bash -m -d /var/www/peertube -G sudo peertube
sudo passwd peertube

Una ventana de terminal que muestra el proceso de creación de usuarios para Peertube.

La creación de una nueva cuenta de usuario también le permite configurar la $HOME variable en «/var/www/». Esto es importante, ya que el backend web de Peertube no podrá atravesar la jerarquía «/home» predeterminada.

  1. Cambie a su nueva cuenta de usuario con el comando:
su peertube
  1. Instale las dependencias para Peertube:
sudo apt install cron wget curl unzip python3-dev python-is-python3 certbot nginx python3-certbot-nginx ffmpeg postgresql postgresql-contrib openssl g++ make redis-server git

Una ventana de terminal que muestra el proceso de instalación de las dependencias de Peertube.

  1. Instale NodeJS en su máquina:
curl -fsSL  | sudo -E bash -
sudo apt update
sudo apt install nodejs

Una ventana de terminal que muestra el proceso de instalación de NodeJS.

  1. Instalar hilo. Esta es una gestión de paquetes potente pero ligera para NodeJS:
curl -sL  | gpg --dearmor | sudo tee /usr/share/keyrings/yarnkey.gpg >/dev/null
echo "deb [signed-by=/usr/share/keyrings/yarnkey.gpg]  stable main" | sudo tee /etc/apt/sources.list.d/yarn.list
sudo apt update
sudo apt install yarn

Una ventana de terminal que muestra el proceso de instalación de Yarn.

  1. Una vez que haya instalado todas las dependencias de Peertube, configure su sistema para instalar el programa. Primero, habilite el backend de la base de datos del programa:
sudo systemctl enable postgresql
sudo systemctl start postgresql
sudo systemctl enable redis-server
sudo systemctl start redis-server

Una ventana de terminal que muestra los comandos de SystemD para habilitar PostgreSQL.

  1. Agregue su usuario de Peertube a PostgreSQL ejecutando los siguientes comandos:
cd $HOME
sudo usermod -aG peertube postgres
sudo -u postgres createuser -P peertube
  1. Cree la base de datos para el programa ejecutando los siguientes comandos:
sudo -u postgres createdb -O peertube -E UTF8 -T template0 peertube_run
sudo -u postgres psql -c "CREATE EXTENSION pg_trgm;" peertube_run
sudo -u postgres psql -c "CREATE EXTENSION unaccent;" peertube_run

Una ventana de terminal que muestra la creación de la base de datos en PostgreSQL.

  1. Cree la estructura de directorios del programa en su directorio de inicio:
mkdir config storage versions
chmod 750 ./config

Instalar Peertube Linux 12 Crear estructura de directorio de Peertube

  1. Descarga los archivos binarios de Peertube:
cd ./versions
wget 
unzip peertube-v5.0.1.zip
cd ./..

Una ventana de terminal que muestra el proceso de descompresión de Peertube.

  1. Cree un enlace simbólico entre su instalación y su directorio de inicio:
ln -s /var/www/peertube/versions/peertube-v5.0.1 /var/www/peertube/peertube-latest

Una ventana de terminal que muestra la creación de enlaces simbólicos para Peertube.

  1. Instale Peertube usando el siguiente comando Yarn:
cd ./peertube-latest
yarn install --production --pure-lockfile

Una ventana de terminal que muestra la instalación de Peertube a través de Yarn.

Configuración de Nginx y SSL

De forma predeterminada, Peertube abre su servicio de Internet en el puerto 9000. Si bien puede acceder al programa desde allí, es una buena práctica crear un proxy inverso entre el programa y un puerto conocido.

Los desarrolladores del programa crearon un archivo de plantilla que puede usar para crear su propio proxy inverso ejecutando el siguiente comando:

sudo cp /var/www/peertube/peertube-latest/support/nginx/peertube /etc/nginx/sites-available/peertube
sudo rm /etc/nginx/sites-enabled/default

Una ventana de terminal que muestra un comando de copia de Peertube a Nginx.

Configure su nuevo archivo de plantilla abriéndolo con un editor de texto:

sudo nano /etc/nginx/sites-available/peertube

Una ventana de terminal que muestra el archivo de plantilla para Peertube.

En el interior, cambie cada instancia de estas dos variables: ${WEBSERVER_HOST} y ${PEERTUBE_HOST}.

  • Para el ${WEBSERVER_HOST}reemplácelo con el FQDN de su máquina.
  • Mientras tanto, reemplaza ${PEERTUBE_HOST} con «127.0.0.1:9000».

Una ventana de terminal que muestra un archivo de plantilla modificado.

Presione Ctrl + O, luego Ctrl + X para guardar su archivo en el disco y salir del editor de texto.

Habilite el archivo de configuración de Peertube Nginx y reinicie Nginx.

sudo ln -s /etc/nginx/sites-available/peertube /etc/nginx/sites-enabled/
sudo systemctl reload nginx

Creación de su certificado SSL

Estamos obteniendo un nuevo certificado SSL utilizando la utilidad gratuita Certbot de Let’s Encrypt. (También puede crear un certificado SSL comodín si tiene la intención de usarlo en varios (sub)dominios).

sudo certbot

Certbot escaneará su configuración de Nginx y mostrará la lista de dominios alojados en su servidor. Introduzca el número junto al dominio para el que desea obtener un nuevo certificado SSL.

Una vez que se emite el certificado SSL, certbot actualizará automáticamente su archivo de configuración de Nginx con la entrada correcta. Solo necesita volver a cargar su configuración de Nginx para asegurarse de que todo funcione bien.

sudo systemctl reload nginx

Consejo: habilitar SSL cifrará todas las conexiones TCP a su instancia; sin embargo, es una mejor práctica asegurar su servidor Linux desde el principio.

Configuración y ejecución de Peertube

  1. Con su servidor Nginx y certificado SSL listos, ahora puede configurar su instancia de Peertube. Puede usar una plantilla que los desarrolladores han creado para agilizar este proceso. Ejecute los siguientes comandos:
cd $HOME
cp /var/www/peertube/peertube-latest/config/default.yaml /var/www/peertube/config/default.yaml
cp /var/www/peertube/peertube-latest/config/production.yaml.example /var/www/peertube/config/production.yaml

Una ventana de terminal que muestra los archivos de configuración predeterminados y de producción.

  1. Abra el archivo «production.yaml» en un editor de texto:
nano /var/www/peertube/config/production.yaml
  1. Cambiar el hostname: variable al FQDN de su máquina:

Una sección de una ventana de terminal que muestra una variable de nombre de host modificada.

  1. Genere un secreto aleatorio para su instancia con el siguiente comando:
openssl rand -hex 32

Una ventana de terminal que muestra una cadena de caracteres generada aleatoriamente.

Vuelva a su archivo «production.yaml» y pegue su secreto aleatorio al lado del peertube: variable.

Una sección de una ventana de terminal que muestra el secreto en el archivo de configuración.

  1. Busca el database: bloquear. Cambiar el suffix: bloquear a «_run».

Una sección de una ventana de terminal que muestra una variable de sufijo modificada.

  1. Cambiar el password: variable a la contraseña de su cuenta de base de datos.

Una sección de terminal que muestra una variable de contraseña modificada.

  1. Ve a la smtp: bloquear y encontrar el hostname: variable. Cámbielo al nombre de host de su servidor de correo. Además, cambie tanto el username: y password: variables a las credenciales de su cuenta de correo electrónico.

Una sección de una terminal que muestra las credenciales de mi cuenta de correo electrónico de Peertube.

  1. Reemplace la from_address: variable con la dirección de correo electrónico de su cuenta de correo electrónico.

Una sección de una ventana de terminal que muestra una dirección de remitente modificada.

Una vez que haya terminado de hacer los cambios, presione Ctrl + o para guardar el archivo y Ctrl + x para salir del archivo.

Creación de un archivo de servicio de Peertube

Para hacer que Peertube se ejecute automáticamente al inicio, estamos creando un archivo de servicio systemd para Peertube.

  1. Ejecute el siguiente comando para copiar el archivo systemd de la plantilla en el sistema:
sudo cp /var/www/peertube/peertube-latest/support/systemd/peertube.service /etc/systemd/system/

Una ventana de terminal que muestra el archivo de servicio de plantilla que se está copiando en el sistema.

  1. Vuelva a cargar systemd para aplicar su nuevo archivo de servicio.
sudo systemctl daemon-reload
sudo systemctl enable peertube
sudo systemctl start peertube

Una ventana de terminal que muestra que Peertube se está ejecutando actualmente.

Uso de PeerTube

Si todo está configurado correctamente, debería poder acceder a Peertube desde su propio nombre de dominio.

Una captura de pantalla del navegador que muestra la primera ejecución de una instancia de Peertube.

De forma predeterminada, cada nueva instancia de Peertube crea una cuenta raíz que puede usar como administrador del sitio. Para usar esto, ejecute el siguiente comando:

sudo journalctl -u peertube | grep "User password:"

Una ventana de terminal que muestra la contraseña generada aleatoriamente para esta instancia.

Vuelva a su sitio web de Peertube y presione el botón «Iniciar sesión» en la esquina superior izquierda de la página. Escriba «root» como su nombre de usuario y pegue su contraseña.

Una captura de pantalla de un navegador web que muestra la página de inicio de sesión de Peertube.

Peertube lo recibirá con un breve mensaje que contiene enlaces a la documentación del programa.

Una captura de pantalla de un navegador web que muestra el mensaje de inicio de sesión inicial para Peertube.

Una vez que haya revisado el contenido del mensaje, presione X en la esquina superior derecha de la ventana para comenzar a usar su sitio web de Peertube.

Una captura de pantalla de un navegador web que muestra el tablero de Peertube.

Preguntas frecuentes

¿Es posible usar Peertube sin un nombre de dominio?

No. Peertube requiere que tengas un certificado SSL válido en tu instancia. Si bien es posible crear su propio certificado SSL sin un nombre de dominio, hacerlo hará que su sitio sea inseguro para otros usuarios.

¿Puedo copiar el archivo default.yaml mientras configuro Peertube?

Peertube depende del archivo «default.yaml» para algunas de sus configuraciones principales. Sin el archivo «default.yaml», lo más probable es que su instancia la haga inaccesible.

¿Por qué aparece una página en blanco cuando abro mi sitio web de Peertube?

Lo más probable es que este problema se deba a un problema de permisos con su directorio raíz de peertube. De forma predeterminada, Nginx requiere que todas las carpetas web, así como su raíz, sean legibles en todo el mundo.

Puede solucionar este problema ejecutando el siguiente comando: sudo chmod 755 /var/www/peertube.

Credito de imagen: Unsplash. Todas las alteraciones y capturas de pantalla por Ramces Red.

¿Le ha parecido útil este contenido?

¡Haz clic en una estrella para puntuar!

Promedio de puntuación 0 / 5. Recuento de votos: 0

Hasta ahora, ¡no hay votos!. Sé el primero en puntuar este contenido.