Crea feeds RSS para tus redes sociales con RSS-Bridge

Una fotografía de un portátil sobre una mesa de madera.

RSS-Bridge es un potente generador de feeds RSS autohospedado para Linux. Te permite crear tus feeds desde casi cualquier sitio web moderno hoy en día. Esto lo hace increíblemente útil para los usuarios de RSS que desean combinar sus feeds de medios en uno solo. Este artículo te muestra cómo instalar y desplegar RSS-Bridge en Ubuntu Linux usando Docker.

Tabla de Contenidos

  • ¿Por qué crear feeds RSS con RSS-Bridge?
  • Obtención de las dependencias para RSS-Bridge
  • Recuperando y construyendo RSS-Bridge
  • Creando un proxy inverso SSL usando Nginx
  • Agregando generadores de feeds RSS personalizados en RSS-Bridge

¿Por qué crear feeds RSS con RSS-Bridge?

Uno de los mayores puntos de venta de RSS-Bridge es que actúa como un proxy para sitios web que no proporcionan sus enlaces de sindicación. Por ejemplo, YouTube requiere que uses su propia aplicación frontend solo para verificar si tu creador favorito ha subido un nuevo video. Con RSS-Bridge, puedes recibir notificaciones a través de RSS cuando hay un nuevo video.

Una captura de pantalla de un ejemplo de página de suscripciones de YouTube.

Otra ventaja de RSS-Bridge es que proporciona un mayor control y seguridad entre tú y el sitio que estás sindicando. Esto lo hace atractivo para los usuarios conscientes de la privacidad que no quieren depender de servicios de terceros para sus feeds RSS.

Consejo: también puedes alojar tu propia aplicación de lector RSS usando FreshRSS.

Obtención de las dependencias para RSS-Bridge

Suposición: Este artículo asume que estás instalando RSS-Bridge en un servidor Ubuntu que es accesible en internet. También asume que tienes un nombre de dominio activo que actualmente posees.

Comienza por obtener la clave de firma del repositorio del proyecto Docker:

curl -fsSL https://download.docker.com/linux/ubuntu/gpg |sudo gpg --dearmor-o/etc/apt/keyrings/docker.gpg  
sudochmod a+r /etc/apt/keyrings/docker.gpg

Usa tu editor de texto favorito para crear el archivo del repositorio para Docker:

sudonano/etc/apt/sources.list.d/docker.list

Escribe la siguiente línea en tu nuevo archivo “docker.list”:

deb [arch=amd64 signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu jammy stable

Actualiza los repositorios de paquetes de tu sistema y asegúrate de que los paquetes estén actualizados ejecutando lo siguiente:

sudo apt update &&sudo apt upgrade

Instala los binarios de Docker y Docker Compose junto con las dependencias para RSS-Bridge:

sudo apt install docker-ce docker-ce-cli containerd.io docker-compose-plugin docker-buildx-plugin nginx git

Prepara tu sistema para Certbot instalando el paquete snap “core”:

sudo snap install core

Instala el paquete Certbot de la Electronic Frontier Foundation (EFF):

sudo snap install certbot --classic

Bueno saber: aprende cómo puedes desplegar tu propio sitio de WordPress usando Docker.

Recuperando y construyendo RSS-Bridge

Crea una nueva carpeta dentro de tu directorio personal, luego navega dentro de ella:

mkdir ~/rss-bridge &&cd ~/rss-bridge

Crea el archivo “docker-compose.yml” usando tu editor de texto favorito:

nano ./docker-compose.yml

Pega el siguiente bloque de código dentro de tu nuevo archivo Docker Compose. Este es el “docker-compose.yml” predeterminado para RSS-Bridge que modifiqué para tener un volumen mapeado para configuraciones personalizadas:

version: '2'  
  
services:  
  rss-bridge:  
    image: rssbridge/rss-bridge:latest  
    volumes:  
      - /home/$USER/rss-bridge/:/config  
# Reemplaza "/home/$USER/rss-bridge" con "/root/rss-bridge" si estás ejecutando como root.  
    ports:  
      - 127.0.0.1:3000:80  
    restart: unless-stopped

Construye y ejecuta tu contenedor Docker:

sudodocker compose up --detach

Confirma que RSS-Bridge está funcionando correctamente listando todos los contenedores disponibles en el sistema:

dockerps

Una terminal mostrando el contenedor Docker de RSS-Bridge funcionando correctamente.

Creando un proxy inverso SSL usando Nginx

En este punto, ahora tienes una instancia en funcionamiento de RSS-Bridge en el puerto 3000. Sin embargo, para usarlo, primero necesitas pasar su conexión saliente a través de un proxy inverso SSL.

Crea un nuevo registro DNS “A” apuntando a la dirección IP de tu servidor RSS-Bridge. En mi caso, estableceré el registro “A” para mi instancia de RSS-Bridge al subdominio “rss.”

Regresa a tu servidor, luego crea un nuevo archivo de configuración de sitio Nginx:

sudonano/etc/nginx/sites-available/rss-bridge

Pega el siguiente bloque de código dentro de tu nuevo archivo de configuración:

server {  
  
        server_name SUBDOMAIN.YOUR-ROOT.DOMAIN;  
  
        location /{  
                proxy_pass http://127.0.0.1:3000;  
                proxy_http_version 1.1;  
                proxy_set_header Upgrade $http_upgrade;  
                proxy_set_header Connection "upgrade";  
                proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;  
                proxy_set_header Host $host;  
}  
}

Reemplaza el valor de la variable “server_name” con el registro DNS “A” de tu servidor.

Una terminal destacando la variable

Guarda tu archivo de configuración del sitio, luego enlázalo a tu carpeta “/etc/nginx/sites-enabled”:

sudoln-s/etc/nginx/sites-available/rss-bridge /etc/nginx/sites-enabled

Aplica tus nuevos ajustes recargando tu demonio Nginx:

sudo systemctl reload nginx.service

Solicitando SSL y conectando a RSS-Bridge

Con eso hecho, ahora puedes asegurar tu proxy inverso solicitando un certificado SSL de Certbot. Hacer esto asegurará que todas las conexiones entre un cliente y tu instancia estén encriptadas y sean seguras.

Ejecuta el siguiente comando para registrar tu nombre de dominio en Certbot:

sudo certbot register --agree-tos-m [email protected]

Escribe “y,” luego presiona Enter para recibir las últimas actualizaciones de la EFF.

Captura de pantalla

Solicita un nuevo certificado para tu subdominio:

sudo certbot --nginx-d SUBDOMAIN.YOUR-ROOT.DOMAIN

Prueba si tu proxy inverso SSL está funcionando correctamente abriéndolo en tu navegador web.

Crear feeds Rss Rss Bridge Linux 06 Prueba de aplicación web

FYI: aprende más sobre la encriptación web emitiendo tus propios certificados SSL usando OpenSSL.

Agregando generadores de feeds RSS personalizados en RSS-Bridge

Por defecto, RSS-Bridge solo incluye 16 de sus generadores de feeds personalizados. Si bien la mayoría de ellos cubre algunos de los sitios web populares como Reddit y Twitch, el proyecto también ofrece más de 400 generadores de feeds mantenidos por usuarios en su repositorio de Github.

Para acceder a esto, primero desactiva tu contenedor Docker:

sudodocker compose down

Crea una nueva carpeta en tu directorio personal, luego navega dentro de ella:

mkdir ~/git&&cd ~/git

Clona el repositorio de RSS-Bridge en tu nueva carpeta:

git clone https://github.com/RSS-Bridge/rss-bridge.git

Copia el directorio “bridges” dentro del repositorio de Git a la carpeta de tu contenedor Docker:

cp-rv ./rss-bridge/bridges ~/rss-bridge/

Crea un nuevo archivo de texto dentro de la carpeta de tu contenedor Docker:

nano ~/rss-bridge/whitelist.txt

Escribe “*” dentro de tu nuevo archivo de texto, luego guárdalo para habilitar todos los generadores de feeds para tu instancia.

Una terminal destacando el asterisco de la lista blanca que habilita todos los módulos generadores para la instancia de RSS-Bridge.

También puedes filtrar los otros generadores de feeds usando este archivo de texto. Para hacer esto, ejecuta ls bridge, luego encuentra el nombre del generador que deseas que aparezca en tu instancia.

Una terminal mostrando una pequeña lista de generadores personalizados del repositorio de Git.

Abre el archivo de texto, elimina el “*”, luego proporciona el nombre del generador sin su extensión “.php”.

Una terminal mostrando los generadores personalizados dentro del archivo whitelist.txt.

Reinicia tu contenedor Docker para aplicar tus nuevos ajustes.

cd ~/rss-bridge  
sudodocker compose up --detach

Asegurando RSS-Bridge con autenticación HTTP

Además de agregar feeds personalizados, también puedes incluir un pequeño desafío de autenticación para tu instancia. Esto es especialmente útil para prevenir que usuarios anónimos abusen de tu aplicación web.

Apaga tu contenedor Docker de RSS-Bridge:

sudodocker compose down

Crea un nuevo archivo “config.ini.php” en el directorio de tu contenedor Docker:

nano ~/rss-bridge/config.ini.php

Pega el siguiente bloque de código dentro de tu nuevo archivo de configuración:

[authentication]  
  
enable = true  
username = "MyRSSBridgeUsername"  
password = "MyStrongPassword"

Reemplaza el valor de las variables “username” y “password” con tu propio nombre de usuario y contraseña.

Una terminal mostrando un nombre de usuario y contraseña personalizados para la instancia.

Guarda tu archivo de configuración, luego reinicia tu contenedor para aplicar tus nuevos ajustes:

sudodocker compose up --detach

Nota: Hacer esto también requerirá que agregues un nombre de usuario y contraseña para suscribirte a cualquier feed RSS personalizado de tu instancia.

Creando tu primer feed RSS personalizado

Para crear tu primer feed personalizado, desplázate por la lista de generadores, luego busca un sitio del cual quieras crear un feed.

Haz clic en el enlace Mostrar más debajo de la entrada del generador.

Una captura de pantalla destacando el generador de feed RSS personalizado de Github Issue.

Proporciona los detalles para tu feed RSS. En mi caso, quiero crear un feed que liste todos los problemas actualmente abiertos en el repositorio Git de Urbit OS.

Haz clic en Generar Feed para crear el feed RSS personalizado para tu sitio web.

Una captura de pantalla mostrando los detalles de personalización para el generador de feed de Github Issue.

Copia la dirección completa de RSS-Bridge de la barra de direcciones de tu navegador.

Una captura de pantalla mostrando la dirección en la barra de direcciones de Firefox destacada y copiada.

Ve a tu lector de feeds RSS y crea una nueva entrada de suscripción usando el enlace en tu portapapeles.

Prueba tu nuevo feed RSS listando el contenido de tu nuevo feed personalizado usando tu lector de feeds.

Una captura de pantalla mostrando el feed personalizado funcionando en Newsflash, un lector RSS offline para Linux.

Instalar RSS-Bridge para crear y publicar feeds RSS personalizados es el primer paso para recuperar el control sobre tu vida digital. Aprende más sobre el autohospedaje y cómo puede protegerte en línea creando tu propio servidor de alias de correo electrónico privado usando SimpleLogin.

Crédito de la imagen: Alejandro Escamilla a través de Unsplash y RSS-Bridge Github. Todas las alteraciones y capturas de pantalla por Ramces Red.