Что программа делает для защиты установки, её зрителей и её данных в том виде, как это реализовано сегодня. Это описание функций, а не сертификация и не гарантия; серверы, на которых работает программа, защищает оператор.
Собственный хостинг по замыслу
Каждый компонент работает на серверах, которые контролирует оператор: панель, API подписчиков, worker, origin и ноды. Издатель не получает из установки ничего, кроме того, что включит оператор (проверка обновлений отправляет только версию; запрос к TMDB отправляет искомое название).
Аккаунты и доступ к панели
У аккаунтов панели есть роли и группы прав; пароли хранятся как хэши bcrypt; доступны одноразовые пароли по времени (TOTP), которые можно сделать обязательными для администраторов; вход защищён от перебора; на странице входа доступны необязательные reCAPTCHA или Turnstile; каждое изменение записывается в журнал аудита с автором и адресом.
Секреты и данные в хранилище
SSH-учётные данные серверов, API-ключи третьих сторон и подобные секреты перед сохранением запечатываются ключом, производным от секрета установки; ключи Admin API хранятся как хэши и показываются один раз. Пароли линий (зрителей) хранятся в открытом виде, потому что приложения-плееры должны их получать; защита базы данных — ответственность оператора.
Защита воспроизведения
Ссылки воспроизведения подписываются HMAC-SHA256 и истекают; их можно привязать к адресу зрителя; у каждой линии есть лимит подключений; правила по стране, по ISP или по адресу могут блокировать или разрешать зрителей; повторные неудачные входы блокируются автоматически. DRM нет.
Резервные копии и устойчивость
Плановые дампы базы данных, зашифрованные парольной фразой, которую хранит оператор, с проверкой восстановления каждого дампа и необязательной внешней копией в S3-совместимое хранилище; режим обслуживания; ноды переключаются на origin; задачи выполняются с lease и дедлайнами.
Наблюдаемость
Метрики Prometheus и эндпоинты проверки состояния для API, панели и worker; обзоры подключений и трафика; оповещения по e-mail, Telegram или подписанному webhook; журнал кластера обо всех изменениях серверов.
Сообщение об уязвимости
Напишите на [email protected] с темой «Security» и описанием, позволяющим воспроизвести проблему. Пожалуйста, оставьте время на исправление до публикации подробностей. У издателя нет программы вознаграждений за найденные ошибки.