Установка FreshRSS на Raspberry Pi
Быстрые ссылки
Что такое FreshRSS?
Как установить FreshRSS на Raspberry Pi
Десктопные и мобильные приложения для чтения
Если вам надоело получать новости через социальные сети, вернуться к RSS — простое решение. Я использую несколько устройств и столкнулся с тем, что ленты не синхронизировались. Вместо платных облачных сервисов я поставил FreshRSS на Raspberry Pi и получил централизованный, приватный агрегатор.

Небольшой контекст о железе

CanaKit Raspberry Pi 4 Starter Kit — типичный набор для домашнего сервера. Raspberry Pi 4 достаточно мощен для FreshRSS и других сервисов: базы данных маленького размера, веб‑интерфейс и резервные копии.
Что такое FreshRSS?
FreshRSS — это само‑хостируемый агрегатор RSS и Atom. Вы запускаете сервер FreshRSS (на своём Raspberry Pi, VPS или в Docker) и подключаетесь к нему через веб‑интерфейс или сторонние клиентские приложения по API. Основные преимущества:
- Централизация лент и синхронизация между устройствами.
- Контроль данных и отсутствие рекламных ограничений.
- Совместимость со множеством свободных клиентов (через Google Reader API и другие).
Краткое определение: FreshRSS — веб‑приложение для чтения и синхронизации RSS/Atom‑лент, которое вы контролируете.
Как установить FreshRSS на Raspberry Pi
Ниже — подробный обзор вариантов установки и пошаговая инструкция для двух популярных путей: DietPi (самый простой для домашних серверов) и Docker (гибкий и переносимый).
Вариант A — DietPi (быстрая автоустановка)
DietPi — облегчённая ОС для Raspberry Pi, которая предлагает автоконфигурацию приложений, в том числе FreshRSS.
- Установите DietPi на SD‑карту и загрузите Raspberry Pi.
- Подключитесь по SSH к Raspberry Pi (обычно pi@
). Если не знаете IP, используйте сканер сети или проверьте маршрутизатор. - Запустите dietpi‑software:
- Выберите FreshRSS в списке приложений и начните установку.
- DietPi установит необходимые зависимости и настроит веб‑папки.
- После завершения откройте браузер и перейдите по адресу http://
/freshrss - Войдите под дефолтной адмнинистративной учётной записью, которую задаёт DietPi, и создайте личного пользователя через Administration > Manage Users.

Если DietPi установил FreshRSS, вы увидите экран входа по адресу /freshrss.

После входа создайте отдельного обычного пользователя (не используйте админ‑аккаунт ежедневно):

Затем включите API‑доступ (нужно для синхронизации клиентских приложений): Settings > Administration > Authentication — отметьте Allow API access и нажмите Submit.

Импорт подписок: если вы уже пользовали другой ридер, экспортируйте OPML и импортируйте в FreshRSS через Subscription Management > Import/Export.

После импорта ленты начнут появляться в веб‑интерфейсе.

Вариант B — Docker (контейнерная установка)
Docker удобен, если вы хотите переносимость и контролируемые версии. Простой docker‑compose пример:
version: "3.7"
services:
freshrss:
image: freshrss/freshrss:latest
container_name: freshrss
ports:
- "8080:80"
volumes:
- ./freshrss/data:/var/www/FreshRSS/data
environment:
- CRON_MIN="*/30"
restart: unless-stoppedРазверните командой docker compose up -d. После запуска откройте http://<хост>:8080.
Плюсы Docker: лёгкое резервное копирование данных (томы), быстрый обновлятор, изоляция. Минусы: нужна базовая компетенция Docker.
Альтернативы и когда выбрать что
- Если вы хотите максимально простой путь — DietPi.
- Если у вас уже есть Docker‑инфраструктура или вы планируете мигрировать — Docker.
- Если нужен полноценный LAMP‑стек и тонкая настройка производительности — ручная установка на Nginx/PHP‑FPM + MariaDB.
Клиентские приложения: десктоп и мобильные
FreshRSS не имеет официального централизованного нативного клиента, но поддерживает API (включая Google Reader API), которые используют многочисленные сторонние ридеры.
Основные шаги для подключения клиента:
- Включите Allow API access на сервере и установите отдельный API‑пароль (не равный паролю пользователя).
- В клиенте выберите протокол Google Reader (GReader) или соответствующий API.
- Введите URL вашего инстанса (например, https://example.com/freshrss), имя пользователя и API‑пароль.
Примеры приложений:
- Десктоп: RSS Guard (Linux, Windows) — простой и лёгкий.

- Android: Readrops — открытый клиент, который умеет подключаться к FreshRSS.


После настройки клиентов ваши прочитанные/непрочитанные записи будут синхронизированы.
Безопасный доступ извне и рекомендации по защите
Если планируете доступ к FreshRSS из интернета, примите базовые меры безопасности:
- Используйте HTTPS: настройте обратный прокси (Nginx или Caddy) с сертификатом Let’s Encrypt.
- Защитите административные страницы: ограничьте доступ по IP или включите двухфакторную аутентификацию если доступна.
- Используйте отдельный, сложный API‑пароль для клиентских приложений.
- Закройте ненужные порты в маршрутизаторе/фаерволе; лучше пробросьте только порт прокси (443).
- Рассмотрите VPN (WireGuard/OpenVPN) как более безопасную альтернативу прямому доступу извне.
- Введите политику резервного копирования: копируйте папку data и конфигурации регулярно.
В качестве примера обратного прокси для Nginx (фрагмент):
server {
listen 443 ssl;
server_name freshrss.example.com;
ssl_certificate /etc/letsencrypt/live/freshrss.example.com/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/freshrss.example.com/privkey.pem;
location /freshrss/ {
proxy_pass http://127.0.0.1:8080/freshrss/;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
}(Адаптируйте пути и порты под вашу конфигурацию.)
Мини‑методология: от установки до синхронизации (короткая)
- Выберите среду: DietPi или Docker.
- Установите FreshRSS и выполните первоначальную настройку (админ > создать пользователя).
- Включите API‑доступ и задайте API‑пароль.
- Импортируйте OPML с прежних подписок.
- Подключите клиентские приложения (выберите Google Reader API).
- Настройте HTTPS/обратный прокси или VPN.
- Настройте резервное копирование и мониторинг.
Чек‑листы по ролям
Администратор (тот, кто разворачивает сервер):
- Выбрал среду (DietPi/Docker/VPS).
- Выполнил установку и проверил доступ по /freshrss.
- Создал личную учётную запись и включил API.
- Настроил обратный прокси и HTTPS.
- Настроил резервное копирование каталога data.
Пользователь (тот, кто читает ленты):
- Экспортировал OPML из старого ридера.
- Импортировал OPML в FreshRSS.
- Установил клиент на устройство и ввёл API‑пароль.
- Проверил синхронизацию прочтённых статей между устройствами.
DevOps / продвинутый пользователь:
- Настроил Docker Compose с томами.
- Мониторит использование CPU/памяти и размер базы данных.
- Регулярные обновления образа/пакетов.
Критерии приёмки
- Сервер отвечает на http(s) запросы по /freshrss.
- Можно войти под обычным пользователем и админом отдельно.
- Импорт OPML завершился без ошибок и ленты видны.
- Клиент на другом устройстве синхронизирует прочитанное/непрочитанное.
- Резервная копия каталога data создаётся по расписанию.
Конфигурационные подсказки и сниппеты
- Быстрая команда для резервного копирования данных (на хосте Docker):
tar czvf freshrss-backup-$(date +%F).tgz ./freshrss/data- Обновление контейнера:
docker compose pull
docker compose up -d- Мини‑шпаргалка по API‑последовательности: включить API → задать API‑пароль → выбрать Google Reader API в клиенте → указать URL инстанса.
Модель принятия решения (диаграмма)
flowchart TD
A[Нужен простой путь?] -->|Да| B[DietPi — автоустановка]
A -->|Нет| C[Есть Docker?]
C -->|Да| D[Docker Compose]
C -->|Нет| E[Ручная установка на Nginx/PHP]
B --> F[Включить API, импорт OPML, подключить клиенты]
D --> F
E --> FКогда это не подходит (контрпримеры)
- Если вы хотите «умную ленту» с персональными рекомендациями и аналитикой, коммерческие сервисы могут быть удобнее.
- Если вы не готовы управлять обновлениями и бэкапами, лучше выбрать хост‑сервис.
Совместимость и миграция
- OPML — стандарт для экспорта/импорта подписок; практически любой ридер его поддерживает.
- Если вы мигрируете с Inoreader или Feedly, проверьте экспорт OPML через интерфейс сервиса.
- Docker‑тома совместимы между хостами; при переносе копируйте каталог data.
Короткое объявление (100–200 слов)
Я разместил собственный агрегатор FreshRSS на Raspberry Pi, чтобы вернуть контроль над новостными лентами и синхронизировать их между устройствами без рекламы и платных подписок. Установка заняла несколько шагов: автоустановка через DietPi или развёртывание в Docker, создание обычного пользователя, включение API‑доступа и импорт OPML из старого ридера. Клиентские приложения вроде RSS Guard (десктоп) и Readrops (Android) подключаются по Google Reader API и синхронизируют прочитанные/непрочитанные статьи. Для безопасного доступа снаружи рекомендую обратный прокси с HTTPS или VPN, отдельный API‑пароль и регулярные резервные копии. Если хотите контролировать данные и иметь локальную копию лент — FreshRSS на Raspberry Pi — простое и гибкое решение.
Глоссарий — основные термины в 1 строке
- RSS/Atom: форматы для передачи обновлений сайтов.
- OPML: формат файла для экспорта/импорта списка подписок.
- API: интерфейс для синхронизации между сервером и клиентом.
- Reverse proxy: обратный прокси (Nginx/Caddy) для HTTPS и управления трафиком.
Итог и рекомендации
FreshRSS на Raspberry Pi — хороший компромисс между простотой и контролем. Если вы хотите быстрый старт и минимум ручной настройки — используйте DietPi. Если нужен переносимый и управляемый стэк — Docker. Вне зависимости от пути обязательно включите API‑доступ, задайте отдельный API‑пароль, настроьте HTTPS для внешнего доступа и организуйте резервное копирование данных.
Важно: начните с тестовой установки в локальной сети, проверьте синхронизацию с клиентами и только потом открывайте доступ извне.
Похожие материалы
Passkeys на iPhone, iPad и Mac — настройка и инструкция
Добавить элементы Пункта управления в строку меню Mac
Живёте в минусе? План действий и инструменты
Konsole: настройка терминала KDE
Duolingo Math — обзор и руководство