Создание RSS-каналов для ваших социальных медиа с помощью RSS-Bridge

RSS-Bridge — это мощный самостоятелный генератор RSS-каналов для Linux. Он позволяет вам создавать свои каналы практически с любого современного веб-сайта. Это делает его невероятно полезным для пользователей RSS, которые хотят объединить свои медиа-каналы в один. Эта статья покажет вам, как установить и развернуть RSS-Bridge на Ubuntu Linux с использованием Docker.
Содержание
- Почему стоит создавать RSS-каналы с помощью RSS-Bridge?
- Получение зависимостей для RSS-Bridge
- Получение и сборка RSS-Bridge
- Создание SSL обратного прокси с помощью Nginx
- Добавление пользовательских генераторов RSS-каналов в RSS-Bridge
Почему стоит создавать RSS-каналы с помощью RSS-Bridge?
Одним из главных преимуществ RSS-Bridge является то, что он служит прокси для веб-сайтов, которые не предоставляют свои ссылки на синдикацию. Например, YouTube требует, чтобы вы использовали его собственное приложение для фронтенда, чтобы просто проверить, загрузил ли ваш любимый создатель новое видео. С помощью RSS-Bridge вы можете получать уведомления через RSS, когда появляется новое видео.

Еще одно преимущество RSS-Bridge заключается в том, что он обеспечивает больший контроль и безопасность между вами и сайтом, с которым вы синдицируете. Это делает его привлекательным для пользователей, заботящихся о конфиденциальности, которые не хотят полагаться на сторонние сервисы для своих RSS-каналов.
Совет: вы также можете разместить свое собственное приложение для чтения RSS с помощью FreshRSS.
Получение зависимостей для RSS-Bridge
Предположение: Эта статья предполагает, что вы устанавливаете RSS-Bridge на сервер Ubuntu, доступный в интернете. Также предполагается, что у вас есть активное доменное имя, которым вы в настоящее время владеете.
Начните с получения ключа подписи репозитория проекта 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Используйте свой любимый текстовый редактор, чтобы создать файл репозитория для Docker:
sudonano/etc/apt/sources.list.d/docker.listЗапишите следующую строку в вашем новом файле “docker.list”:
deb [arch=amd64 signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu jammy stableОбновите репозитории пакетов вашей системы и убедитесь, что пакеты актуальны, выполнив следующее:
sudo apt update &&sudo apt upgradeУстановите бинарные файлы Docker и Docker Compose вместе с зависимостями для RSS-Bridge:
sudo apt install docker-ce docker-ce-cli containerd.io docker-compose-plugin docker-buildx-plugin nginx gitПодготовьте вашу систему для Certbot, установив пакет “core”:
sudo snap install coreУстановите пакет Certbot от Electronic Frontier Foundation (EFF):
sudo snap install certbot --classicПолезно знать: узнайте, как вы можете развернуть свой собственный сайт WordPress с помощью Docker.
Получение и сборка RSS-Bridge
Создайте новую папку в вашем домашнем каталоге, затем перейдите в нее:
mkdir ~/rss-bridge &&cd ~/rss-bridgeСоздайте файл “docker-compose.yml” с помощью вашего любимого текстового редактора:
nano ./docker-compose.ymlВставьте следующий блок кода в ваш новый файл Docker Compose. Это стандартный “docker-compose.yml” для RSS-Bridge, который я изменил, чтобы иметь смонтированный том для пользовательских конфигураций:
version: '2'
services:
rss-bridge:
image: rssbridge/rss-bridge:latest
volumes:
- /home/$USER/rss-bridge/:/config
# Замените "/home/$USER/rss-bridge" на "/root/rss-bridge", если вы работаете от имени root.
ports:
- 127.0.0.1:3000:80
restart: unless-stoppedСоберите и запустите ваш контейнер Docker:
sudodocker compose up --detachПодтвердите, что RSS-Bridge работает правильно, перечислив все доступные контейнеры в системе:
dockerps
Создание SSL обратного прокси с помощью Nginx
На этом этапе у вас уже есть работающий экземпляр RSS-Bridge на порту 3000. Однако, чтобы использовать его, вам нужно сначала пропустить его исходящее соединение через SSL обратный прокси.
Создайте новую запись DNS типа “A”, указывающую на IP-адрес вашего сервера RSS-Bridge. В моем случае я установлю запись “A” для моего экземпляра RSS-Bridge на поддомен “rss.”
Вернитесь на ваш сервер, затем создайте новый файл конфигурации сайта Nginx:
sudonano/etc/nginx/sites-available/rss-bridgeВставьте следующий блок кода в ваш новый файл конфигурации:
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;
}
}Замените значение переменной “server_name” на вашу запись DNS типа “A”.

Сохраните файл конфигурации сайта, затем свяжите его с вашей папкой “/etc/nginx/sites-enabled”:
sudoln-s/etc/nginx/sites-available/rss-bridge /etc/nginx/sites-enabledПримените ваши новые настройки, перезагрузив демон Nginx:
sudo systemctl reload nginx.serviceЗапрос SSL и подключение к RSS-Bridge
С этим завершено, вы теперь можете защитить ваш обратный прокси, запросив SSL-сертификат от Certbot. Это обеспечит шифрование и безопасность всех соединений между клиентом и вашим экземпляром.
Выполните следующую команду, чтобы зарегистрировать ваше доменное имя в Certbot:
sudo certbot register --agree-tos-m [email protected]Введите “y”, затем нажмите Enter, чтобы получать последние обновления от EFF.

Запросите новый сертификат для вашего поддомена:
sudo certbot --nginx-d SUBDOMAIN.YOUR-ROOT.DOMAINПроверьте, работает ли ваш SSL обратный прокси, открыв его в вашем веб-браузере.

К вашему сведению: узнайте больше о веб-шифровании, выпустив свои собственные SSL-сертификаты с помощью OpenSSL.
Добавление пользовательских генераторов RSS-каналов в RSS-Bridge
По умолчанию RSS-Bridge поставляется только с 16 собственными генераторами каналов. Хотя большинство из них охватывают некоторые популярные веб-сайты, такие как Reddit и Twitch, проект также предлагает более 400 генераторов каналов, поддерживаемых пользователями, в своем репозитории на Github.
Чтобы получить доступ к этому, сначала отключите ваш контейнер Docker:
sudodocker compose downСоздайте новую папку в вашем домашнем каталоге, затем перейдите в нее:
mkdir ~/git&&cd ~/gitКлонируйте репозиторий RSS-Bridge в вашу новую папку:
git clone https://github.com/RSS-Bridge/rss-bridge.gitСкопируйте директорию “bridges” из Git-репозитория в папку вашего контейнера Docker:
cp-rv ./rss-bridge/bridges ~/rss-bridge/Создайте новый текстовый файл в папке вашего контейнера Docker:
nano ~/rss-bridge/whitelist.txtНапишите “*” в вашем новом текстовом файле, затем сохраните его, чтобы включить все генераторы каналов для вашего экземпляра.

Вы также можете фильтровать другие генераторы каналов, используя этот текстовый файл. Для этого выполните ls bridge, затем найдите имя генератора, который вы хотите отобразить в вашем экземпляре.

Откройте текстовый файл, удалите “*”, затем укажите имя генератора без его расширения “.php”.

Перезапустите ваш контейнер Docker, чтобы применить ваши новые настройки.
cd ~/rss-bridge
sudodocker compose up --detachЗащита RSS-Bridge с помощью HTTP Auth
Помимо добавления пользовательских каналов, вы также можете включить небольшую аутентификацию для вашего экземпляра. Это особенно полезно для предотвращения злоупотреблений вашим веб-приложением анонимными пользователями.
Выключите ваш контейнер Docker RSS-Bridge:
sudodocker compose downСоздайте новый файл “config.ini.php” в директории вашего контейнера Docker:
nano ~/rss-bridge/config.ini.phpВставьте следующий блок кода в ваш новый файл конфигурации:
[authentication]
enable = true
username = "MyRSSBridgeUsername"
password = "MyStrongPassword"Замените значение переменных “username” и “password” на ваше собственное имя пользователя и пароль.

Сохраните ваш файл конфигурации, затем перезапустите ваш контейнер, чтобы применить ваши новые настройки:
sudodocker compose up --detachПримечание: Это также потребует от вас добавления имени пользователя и пароля для подписки на любой пользовательский RSS-канал из вашего экземпляра.
Создание вашего первого пользовательского RSS-канала
Чтобы создать ваш первый пользовательский канал, прокрутите список генераторов, затем найдите сайт, для которого вы хотите создать канал.
Нажмите на ссылку Показать больше под записью генератора.

Укажите детали для вашего RSS-канала. В моем случае я хочу создать канал, перечисляющий все открытые проблемы в репозитории Git Urbit OS.
Нажмите Сгенерировать канал, чтобы создать пользовательский RSS-канал для вашего веб-сайта.

Скопируйте весь адрес RSS-Bridge из адресной строки вашего браузера.

Перейдите в ваш RSS-ридер и создайте новую запись подписки, используя ссылку из вашего буфера обмена.
Проверьте ваш новый RSS-канал, перечислив содержимое вашего нового пользовательского канала с помощью вашего ридера.

Установка RSS-Bridge для создания и публикации пользовательских RSS-каналов — это первый шаг к восстановлению контроля над вашей цифровой жизнью. Узнайте больше о самостоятелной хостинге и о том, как это может защитить вас в интернете, создав свой собственный сервер частных адресов электронной почты с помощью SimpleLogin.
Кредит изображения: Alejandro Escamilla через Unsplash и RSS-Bridge Github. Все изменения и скриншоты сделаны Ramces Red.