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.
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.
- 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
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.
- Cambie a su nueva cuenta de usuario con el comando:
su peertube
- 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
- Instale NodeJS en su máquina:
curl -fsSL | sudo -E bash - sudo apt update sudo apt install nodejs
- 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 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
- Agregue su usuario de Peertube a PostgreSQL ejecutando los siguientes comandos:
cd $HOME sudo usermod -aG peertube postgres sudo -u postgres createuser -P peertube
- 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
- Cree la estructura de directorios del programa en su directorio de inicio:
mkdir config storage versions chmod 750 ./config
- Descarga los archivos binarios de Peertube:
cd ./versions wget unzip peertube-v5.0.1.zip cd ./..
- 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
- Instale Peertube usando el siguiente comando Yarn:
cd ./peertube-latest yarn install --production --pure-lockfile
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
Configure su nuevo archivo de plantilla abriéndolo con un editor de texto:
sudo nano /etc/nginx/sites-available/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».
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
- 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
- Abra el archivo «production.yaml» en un editor de texto:
nano /var/www/peertube/config/production.yaml
- Cambiar el
hostname:
variable al FQDN de su máquina:
- Genere un secreto aleatorio para su instancia con el siguiente comando:
openssl rand -hex 32
Vuelva a su archivo «production.yaml» y pegue su secreto aleatorio al lado del peertube:
variable.
- Busca el
database:
bloquear. Cambiar elsuffix:
bloquear a «_run».
- Cambiar el
password:
variable a la contraseña de su cuenta de base de datos.
- Ve a la
smtp:
bloquear y encontrar elhostname:
variable. Cámbielo al nombre de host de su servidor de correo. Además, cambie tanto elusername:
ypassword:
variables a las credenciales de su cuenta de correo electrónico.
- Reemplace la
from_address:
variable con la dirección de correo electrónico de su cuenta de correo electrónico.
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.
- 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/
- Vuelva a cargar systemd para aplicar su nuevo archivo de servicio.
sudo systemctl daemon-reload sudo systemctl enable peertube sudo systemctl start peertube
Uso de PeerTube
Si todo está configurado correctamente, debería poder acceder a Peertube desde su propio nombre de dominio.
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:"
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.
Peertube lo recibirá con un breve mensaje que contiene enlaces a la documentación del programa.
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.
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.
Danos tu opinión