Créer des flux RSS pour vos réseaux sociaux avec RSS-Bridge

Une photographie d'un ordinateur portable sur une table en bois.

RSS-Bridge est un puissant générateur de flux RSS auto-hébergé pour Linux. Il vous permet de créer vos flux à partir de presque n’importe quel site web moderne aujourd’hui. Cela le rend incroyablement utile pour les utilisateurs de RSS qui souhaitent combiner leurs flux médiatiques en un seul. Cet article vous montre comment installer et déployer RSS-Bridge sur Ubuntu Linux en utilisant Docker.

Table des matières

  • Pourquoi créer des flux RSS avec RSS-Bridge ?
  • Obtention des dépendances pour RSS-Bridge
  • Récupération et construction de RSS-Bridge
  • Création d’un proxy inverse SSL utilisant Nginx
  • Ajout de générateurs de flux RSS personnalisés dans RSS-Bridge

Pourquoi créer des flux RSS avec RSS-Bridge ?

L’un des plus grands atouts de RSS-Bridge est qu’il sert de proxy pour les sites web qui ne fournissent pas leurs liens de syndication. Par exemple, YouTube exige que vous utilisiez sa propre application frontend juste pour vérifier si votre créateur préféré a téléchargé une nouvelle vidéo. Avec RSS-Bridge, vous pouvez être notifié via RSS lorsqu’il y a une nouvelle vidéo.

Une capture d'écran d'une page d'abonnements YouTube exemple.

Un autre avantage de RSS-Bridge est qu’il offre un meilleur contrôle et une meilleure sécurité entre vous et le site que vous syndiquez. Cela le rend attrayant pour les utilisateurs soucieux de leur vie privée qui ne souhaitent pas dépendre de services tiers pour leurs flux RSS.

Astuce : vous pouvez également héberger votre propre application de lecteur RSS en utilisant FreshRSS.

Obtention des dépendances pour RSS-Bridge

Hypothèse : Cet article suppose que vous installez RSS-Bridge sur un serveur Ubuntu accessible sur Internet. Il suppose également que vous avez un nom de domaine actif que vous possédez actuellement.

Commencez par obtenir la clé de signature du dépôt du projet 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

Utilisez votre éditeur de texte préféré pour créer le fichier de dépôt pour Docker :

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

Écrivez la ligne suivante dans votre nouveau fichier “docker.list” :

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

Rafraîchissez les dépôts de paquets de votre système et assurez-vous que les paquets sont à jour en exécutant ce qui suit :

sudo apt update &&sudo apt upgrade

Installez les binaires Docker et Docker Compose ainsi que les dépendances pour RSS-Bridge :

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

Préparez votre système pour Certbot en installant le paquet snap “core” :

sudo snap install core

Installez le paquet Certbot de la Electronic Frontier Foundation (EFF) :

sudo snap install certbot --classic

Bon à savoir : apprenez comment vous pouvez déployer votre propre site WordPress en utilisant Docker.

Récupération et construction de RSS-Bridge

Créez un nouveau dossier dans votre répertoire personnel, puis naviguez à l’intérieur :

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

Créez le fichier “docker-compose.yml” en utilisant votre éditeur de texte préféré :

nano ./docker-compose.yml

Collez le bloc de code suivant dans votre nouveau fichier Docker Compose. C’est le “docker-compose.yml” par défaut pour RSS-Bridge que j’ai modifié pour avoir un volume mappé pour des configurations personnalisées :

version: '2'  
  
services:  
  rss-bridge:  
    image: rssbridge/rss-bridge:latest  
    volumes:  
      - /home/$USER/rss-bridge/:/config  
# Remplacez "/home/$USER/rss-bridge" par "/root/rss-bridge" si vous exécutez en tant que root.  
    ports:  
      - 127.0.0.1:3000:80  
    restart: unless-stopped

Construisez et exécutez votre conteneur Docker :

sudodocker compose up --detach

Confirmez que RSS-Bridge fonctionne correctement en listant tous les conteneurs disponibles dans le système :

dockerps

Un terminal montrant le conteneur Docker RSS-Bridge fonctionnant correctement.

Création d’un proxy inverse SSL utilisant Nginx

À ce stade, vous avez maintenant une instance fonctionnelle de RSS-Bridge sur le port 3000. Pour l’utiliser, cependant, vous devez d’abord faire passer sa connexion sortante par un proxy inverse SSL.

Créez un nouvel enregistrement DNS “A” pointant vers l’adresse IP de votre serveur RSS-Bridge. Dans mon cas, je vais définir l’enregistrement “A” pour mon instance RSS-Bridge sur le sous-domaine “rss.”

Retournez sur votre serveur, puis créez un nouveau fichier de configuration de site Nginx :

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

Collez le bloc de code suivant dans votre nouveau fichier de configuration :

server {  
  
        server_name SOUS-DOMAINE.VOTRE-DOMAINE-ROOT;  
  
        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;  
}  
}

Remplacez la valeur de la variable “server_name” par l’enregistrement DNS “A” de votre serveur.

Un terminal mettant en évidence la variable

Enregistrez votre fichier de configuration de site, puis liez-le à votre dossier “/etc/nginx/sites-enabled” :

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

Appliquez vos nouveaux paramètres en rechargeant votre démon Nginx :

sudo systemctl reload nginx.service

Demande de SSL et connexion à RSS-Bridge

Une fois cela fait, vous pouvez maintenant sécuriser votre proxy inverse en demandant un certificat SSL à Certbot. Cela garantira que toutes les connexions entre un client et votre instance sont cryptées et sécurisées.

Exécutez la commande suivante pour enregistrer votre nom de domaine auprès de Certbot :

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

Tapez “y”, puis appuyez sur Entrée pour recevoir les dernières mises à jour de l’EFF.

Capture d'écran

Demandez un nouveau certificat pour votre sous-domaine :

sudo certbot --nginx-d SOUS-DOMAINE.VOTRE-DOMAINE-ROOT

Testez si votre proxy inverse SSL fonctionne correctement en l’ouvrant dans votre navigateur web.

Créer des flux Rss Rss Bridge Linux 06 Test de l'application Web

FYI : apprenez-en plus sur le cryptage web en émettant vos propres certificats SSL en utilisant OpenSSL.

Ajout de générateurs de flux RSS personnalisés dans RSS-Bridge

Par défaut, RSS-Bridge n’expédie que 16 de ses générateurs de flux personnalisés. Bien que la plupart d’entre eux couvrent certains des sites populaires tels que Reddit et Twitch, le projet propose également plus de 400 générateurs de flux maintenus par les utilisateurs dans son dépôt Github.

Pour y accéder, désactivez d’abord votre conteneur Docker :

sudodocker compose down

Créez un nouveau dossier dans votre répertoire personnel, puis naviguez à l’intérieur :

mkdir ~/git&&cd ~/git

Clonez le dépôt RSS-Bridge dans votre nouveau dossier :

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

Copiez le répertoire “bridges” à l’intérieur du dépôt Git dans le dossier de votre conteneur Docker :

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

Créez un nouveau fichier texte à l’intérieur du dossier de votre conteneur Docker :

nano ~/rss-bridge/whitelist.txt

Écrivez “*” à l’intérieur de votre nouveau fichier texte, puis enregistrez-le pour activer tous les générateurs de flux pour votre instance.

Un terminal mettant en évidence l'astérisque de la liste blanche qui active tous les modules de générateur pour l'instance RSS-Bridge.

Vous pouvez également filtrer les autres générateurs de flux en utilisant ce fichier texte. Pour ce faire, exécutez ls bridge, puis trouvez le nom du générateur que vous souhaitez afficher sur votre instance.

Un terminal montrant une petite liste de générateurs personnalisés du dépôt Git.

Ouvrez le fichier texte, supprimez le “*”, puis fournissez le nom du générateur sans son extension “.php”.

Un terminal montrant les générateurs personnalisés à l'intérieur du fichier whitelist.txt.

Redémarrez votre conteneur Docker pour appliquer vos nouveaux paramètres.

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

Sécuriser RSS-Bridge avec l’authentification HTTP

En plus d’ajouter des flux personnalisés, vous pouvez également inclure un petit défi d’authentification pour votre instance. Cela est particulièrement utile pour empêcher les utilisateurs anonymes d’abuser de votre application web.

Éteignez votre conteneur Docker RSS-Bridge :

sudodocker compose down

Créez un nouveau fichier “config.ini.php” sous le répertoire de votre conteneur Docker :

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

Collez le bloc de code suivant dans votre nouveau fichier de configuration :

[authentication]  
  
enable = true  
username = "MonNomUtilisateurRSSBridge"  
password = "MonMotDePasseFort"

Remplacez la valeur des variables “username” et “password” par votre propre nom d’utilisateur et mot de passe.

Un terminal montrant un nom d'utilisateur et un mot de passe personnalisés pour l'instance.

Enregistrez votre fichier de configuration, puis redémarrez votre conteneur pour appliquer vos nouveaux paramètres :

sudodocker compose up --detach

Remarque : Cela vous obligera également à ajouter un nom d’utilisateur et un mot de passe pour vous abonner à tout flux RSS personnalisé de votre instance.

Créer votre premier flux RSS personnalisé

Pour créer votre premier flux personnalisé, faites défiler la liste des générateurs, puis recherchez un site dont vous souhaitez créer un flux.

Cliquez sur le lien Afficher plus sous l’entrée du générateur.

Une capture d'écran mettant en évidence le générateur de flux RSS personnalisé Github Issue.

Fournissez les détails pour votre flux RSS. Dans mon cas, je souhaite créer un flux répertoriant tous les problèmes actuellement ouverts sur le dépôt Git d’Urbit OS.

Cliquez sur Générer le flux pour créer le flux RSS personnalisé pour votre site web.

Une capture d'écran montrant les détails de personnalisation pour le générateur de flux Github Issue.

Copiez l’adresse entière de RSS-Bridge depuis la barre d’adresse de votre navigateur.

Une capture d'écran montrant l'adresse dans la barre d'adresse de Firefox mise en évidence et copiée.

Allez dans votre lecteur de flux RSS et créez une nouvelle entrée d’abonnement en utilisant le lien dans votre presse-papiers.

Testez votre nouveau flux RSS en répertoriant le contenu de votre nouveau flux personnalisé à l’aide de votre lecteur de flux.

Une capture d'écran montrant le flux personnalisé fonctionnant sur Newsflash, un lecteur RSS hors ligne pour Linux.

Installer RSS-Bridge pour créer et publier des flux RSS personnalisés est la première étape pour reprendre le contrôle de votre vie numérique. Apprenez-en plus sur l’auto-hébergement et comment cela peut vous protéger en ligne en créant votre propre serveur d’alias email privé en utilisant SimpleLogin.

Crédit d’image : Alejandro Escamilla via Unsplash et RSS-Bridge Github. Toutes les modifications et captures d’écran par Ramces Red.