Multics или OScam: сравнение эмуляторов в 2026

Главная Статьи Multics или OScam: сравнение эмуляторов в 2026

Дата публикации

05.06.2026

Multics или OScam: сравнение эмуляторов в 2026

Если вы уже разбираетесь в cardsharing и умеете работать в терминале, вопрос выбора между Multics против OScam рано или поздно встанет перед вами. Оба решения делают одно и то же — принимают ECM-запросы, отдают CW клиентам — но делают это по-разному и с разными компромиссами. Ниже разберём всё без маркетинга: архитектуру, конфиги, производительность и поведение в реальных условиях.

Краткий ответ: чем Multics отличается от OScam

Главные различия в двух словах

OScam — это open-source эмулятор с публично доступными исходниками на Streamboard. Вы сами компилируете его под нужную платформу, включаете только те модули, которые реально нужны, и получаете полный контроль над тем, что крутится у вас на сервере. Проект живёт за счёт сообщества, коммиты идут регулярно.

Multics — закрытый бинарник. Исходников нет, аудит кода невозможен. Зато поставляется в виде готового исполняемого файла под x86, ARM и MIPS, с встроенным веб-сервером и панелью управления. Для тех, кто не хочет возиться с компиляцией — удобно. Для тех, кто хочет знать, что именно запускает на своём железе — стоит подумать дважды.

Кому подойдёт Multics, а кому OScam

Multics имеет смысл, если вам нужен быстрый старт и нет желания разбираться с Makefile и флагами компиляции. Скачал, настроил через браузер, запустил. Для небольшого домашнего сервера с минимальным числом клиентов это работает.

OScam — выбор тех, кто хочет гибкости. Нужен минимальный билд под роутер с 16 МБ flash на OpenWrt? Пожалуйста. Нужна кросс-компиляция под MIPS24kc с тулчейном из OpenWrt SDK? Это реально. Хотите точно знать, что поддерживается, а что нет — читаете исходники.

Сводная таблица сравнения

Параметр OScam Multics
Лицензия / исходники Open source, публичные исходники Закрытый бинарник, исходников нет
CCcam Да (MODULE_CCCAM) Да
newcamd Да (MODULE_NEWCAMD) Да
cs378x / camd35 Да (MODULE_CAMD35) Да
mgcamd Частично (через newcamd-совместимость) Зависит от версии
Веб-интерфейс Да (WEBIF, порт 8888 по умолчанию) Да, встроенный
Кросс-компиляция Да, через make / simplebuild Нет, только готовые бинарники
Частота обновлений Регулярно (community-driven) По усмотрению разработчика
Потребление RAM (базово) От ~4 МБ при минимальном билде Фиксировано бинарником
Аудит кода Возможен Невозможен

Архитектура и поддержка протоколов

OScam: модульность и поддерживаемые протоколы

OScam собирается через make или ./simplebuild.sh. Ключевые флаги при сборке определяют, что вообще будет в бинарнике. Минимальный набор для сервера с CCcam-клиентами выглядит примерно так:

make CONF_DIR=/usr/local/etc \
     USE_LIBSSL=1 \
     MODULE_CCCAM=1 \
     MODULE_NEWCAMD=1 \
     MODULE_CAMD35=1 \
     WEBIF=1 \
     READER_NAGRA=1 \
     READER_VIACCESS=1 \
     READER_IRDETO=1

Если добавляете только нужные READER_* — бинарник легче, меньше потребление памяти. На роутере с OpenWrt и 64 МБ RAM это ощутимо. Для кросс-компиляции под MIPS или ARM берёте тулчейн из OpenWrt SDK и указываете переменные CROSS и TARGET_CFLAGS в Makefile.

Стандартные порты: CCcam работает на 12000, cs378x и camd35 — на 34000, newcamd обычно в диапазоне 15000–15010 (зависит от вашего oscam.conf), веб-интерфейс по умолчанию на 8888. Если 8888 занят другим процессом — меняете в секции [webif] параметр httpport = 8080 или любой другой свободный.

Multics: встроенные сервисы и веб-панель

Multics приходит как единый исполняемый файл. На сайте разработчика обычно есть сборки под x86_64, armv7, aarch64 и mipsel. Никакой компиляции — скачал, дал права на выполнение, запустил. Встроенная веб-панель открывается сразу после старта, настройка идёт через браузер.

Из-за того, что бинарник монолитный, вы не можете отключить неиспользуемые протоколы или компоненты. Это минус на слабом железе — сервис занимает столько памяти, сколько решил разработчик, и не меньше. Зато не нужно разбираться с зависимостями libssl и прочим.

Совместимость по протоколам CCcam/newcamd/cs378x

Связать сервер Multics с OScam через CCcam — нормальная практика. Один работает как апстрим (отдаёт CW), другой как ридер (получает). Главное условие: совпадение протокола, порта и учётных данных. Если Multics поднят как CCcam-сервер на порту 12000, в OScam это описывается в oscam.server как ридер с protocol = cccam и device = ip,12000.

cs378x хорош тем, что поддерживает шифрование на уровне протокола и обходит часть проблем с plain-текстовой передачей данных в старых реализациях camd35. newcamd популярен среди старых клиентов — ресиверов на E2, IPTV-боксов с устаревшим стеком.

Настройка и конфигурационные файлы

Структура конфигов OScam (oscam.conf, oscam.server, oscam.user)

По умолчанию OScam ищет конфиги в /usr/local/etc/. Путь переопределяется ключом запуска -c /path/to/config. Основные файлы:

  • /usr/local/etc/oscam.conf — глобальные настройки, параметры веб-интерфейса, логирование
  • /usr/local/etc/oscam.server — описание ридеров (физические карты, сетевые апстримы)
  • /usr/local/etc/oscam.user — учётные записи клиентов
  • /usr/local/etc/oscam.dvbapi — настройка DVB API для локального декодирования
  • /usr/local/etc/oscam.services — фильтрация сервисов по CAID/SID

Права на файлы должны быть 600, владелец — пользователь, под которым запускается процесс. Иначе OScam может отказаться стартовать или запустится, но не сможет сохранить изменения через веб-интерфейс.

chmod 600 /usr/local/etc/oscam.*
chown oscam:oscam /usr/local/etc/oscam.*

Конфигурация и панель управления Multics

В Multics конфиги лежат в каталоге установки — обычно что-то вроде /opt/multics/ или там, куда вы его распаковали. Конкретный путь зависит от версии и платформы. Большая часть настроек делается через веб-панель и сохраняется в бинарный или проприетарный формат, который без знания структуры руками не отредактируешь. Это одновременно и удобство, и ограничение: автоматизировать деплой через Ansible или скрипты будет сложнее, чем с OScam.

При миграции с Multics на OScam основная работа — перенести учётные записи клиентов и параметры ридеров вручную. Экспорта в совместимый формат нет. Берёте список пользователей из веб-панели Multics и воссоздаёте их в oscam.user руками или скриптом.

Пример минимального рабочего конфига

Минимальный oscam.conf для сервера с CCcam-клиентами:

[global]
logfile = /var/log/oscam/oscam.log
maxlogsize = 500
loglevel = 4
usrfile = /var/log/oscam/oscamuser.log

[webif]
httpport = 8888
httpuser = admin
httppwd = yourpassword
httprefresh = 15

[cccam]
port = 12000

Секция [account] в oscam.user — один клиент:

[account]
user = client01
pwd = secretpass
group = 1
au = 1
uniq = 0
monlevel = 0

Секция [reader] в oscam.server — сетевой апстрим через CCcam:

[reader]
label = upstream_cccam
protocol = cccam
device = 192.168.1.100,12000
user = myuser
password = mypassword
group = 1
cccversion = 2.3.0
cccmaxhops = 2

systemd-юнит для автозапуска кладётся в /etc/systemd/system/oscam.service. После systemctl daemon-reload и systemctl enable oscam сервис будет стартовать при загрузке.

Производительность, стабильность и логи

Потребление CPU и RAM на слабом железе

На одноплатнике типа Raspberry Pi Zero или роутере с процессором MIPS 580 МГц — разница между «тяжёлым» и «лёгким» билдом OScam ощутима. Если собрать только MODULE_CCCAM + WEBIF + нужные READER_*, процесс в спокойном состоянии потребляет около 4–8 МБ RAM. Полный билд со всеми протоколами — 12–20 МБ.

Multics здесь менее предсказуем: вы получаете всё, что решил включить разработчик, и экономить на модулях не можете. На x86_64 это некритично, на роутере с 64 МБ flash и 64 МБ RAM — уже вопрос. Для OpenWrt есть смысл брать OScam и собирать через opkg или кросс-компилировать самостоятельно с опкг-пакетом из feeds.

Диагностика по логам и веб-мониторингу

В OScam уровень логирования управляется параметром loglevel в секции [global]. Значения от 0 (тихо) до 64 (очень подробно). Для повседневного мониторинга достаточно 4 — видно авторизации, ECM-запросы, ошибки ридеров.

Веб-интерфейс на порту 8888 показывает в реальном времени: активных клиентов, статус ридеров, время ответа на ECM (в миллисекундах), очередь запросов. Вкладка «Status» — первое место для диагностики. Если ECM-время растёт выше 800–1000 мс — либо апстрим тормозит, либо что-то с ридером.

Ротация логов настраивается параметром maxlogsize (в КБ) — когда файл достигает лимита, OScam начинает новый. Либо интегрируете с logrotate системы, добавив конфиг в /etc/logrotate.d/oscam.

Поведение при большом числе подключений

Freeze обычно случается не из-за выбора между Multics и OScam, а из-за кривой конфигурации. Типичные причины: перегрузка ECM-очереди (много клиентов, мало апстримов), утечки на нестабильных ридерах, неверные параметры ecmwhitelist или lb_mode.

В OScam параметр lb_mode в секции [global] управляет load balancing между несколькими ридерами. lb_mode = 1 — балансировка по времени ответа. Если один ридер начинает отвечать медленно, нагрузка перераспределяется. Без этого при падении основного апстрима все клиенты сразу почувствуют проблему.

Смотреть нагрузку на сам процесс — htop, отфильтровать по имени процесса. Если CPU oscam держится выше 50% на слабом железе при небольшом числе клиентов — ищите reader с постоянными retry и ошибками в логе.

Как выбрать решение под свою задачу

Критерии выбора эмулятора

Первое — открытость кода. Если вы запускаете сервер, к которому подключаются реальные люди и через который проходит трафик, закрытый бинарник — это риск. Вы не знаете, что там внутри. OScam в этом плане прозрачен: исходники читаемы, баги репортятся, фиксы видны в коммитах.

Второе — поддерживаемые протоколы и архитектура. Проверьте заранее: поддерживает ли выбранное решение нужный вам протокол и есть ли сборка под вашу платформу. Для нестандартного железа OScam выигрывает за счёт кросс-компиляции.

Третье — сообщество и документация. У OScam есть форум, вики, активные треды с разбором конфигов. У Multics картина скромнее — поддержка зависит от активности разработчика.

Четвёртое — частота обновлений. При смене алгоритма шифрования на стороне вещателя (такое бывает при смене ключей Nagra, Viaccess, Irdeto) нужно обновление с поддержкой нового EMM/ECM. OScam обновляется быстрее, потому что патч может написать любой участник сообщества.

На что смотреть при подключении внешних линий

Когда берёте внешнюю линию (апстрим), критерии простые и технические. Линия должна отвечать стабильно — ECM-время ниже 500 мс в штатном режиме. Лимиты на ECM-запросы должны быть разумными и явно прописанными в условиях. Протокол должен соответствовать тому, что вы настроили у себя.

Обязательно уточните: есть ли у провайдера тестовый период? Как ведёт себя линия при пиковой нагрузке — есть ли ограничение по числу одновременных ECM? На каком протоколе работает апстрим — CCcam, cs378x или newcamd? Всё это должно быть явным, а не угадываться в процессе.

Работа за NAT — отдельный момент. Если ваш сервер за двойным NAT, клиенты снаружи не достучатся без проброса портов. В роутере настраиваете port forwarding для 12000 (CCcam), 8888 (если нужен внешний доступ к WEBIF — лучше не надо), и нужных newcamd-портов. В oscam.conf указываете serverip — внешний IP, а не локальный.

Чек-лист перед запуском в продакшн

  • Бэкап конфигов: tar czf oscam-backup-$(date +%Y%m%d).tar.gz /usr/local/etc/oscam.*
  • Файрвол: открыты только нужные порты (12000, 34000, выбранные newcamd-порты), WEBIF — только с доверенных IP
  • Ограничение по IP для клиентов через параметр hostname в секции [account] — если клиенты с фиксированными адресами
  • Тестовый период с апстримом перед оплатой на длительный срок
  • Мониторинг logfile — настроена ротация, место на диске не кончится
  • systemd-юнит с Restart=on-failure и RestartSec=10 — процесс поднимется сам при краше
  • Проверка прав: chmod 600 /usr/local/etc/oscam.* перед первым стартом

Что стабильнее работает на слабом железе — Multics или OScam?

Оба запускаются на ARM и MIPS без принципиальных проблем. OScam можно собрать с минимальным набором модулей — только нужные протоколы и ридеры — и тогда он потребляет 4–8 МБ RAM. Multics поставляется с фиксированным набором сервисов, урезать нельзя. На практике стабильность определяет не выбор между Multics против OScam, а правильно написанный конфиг и качество апстрима.

Можно ли связать сервер Multics с сервером OScam?

Да, через общие протоколы — CCcam (порт 12000), newcamd или cs378x (34000). Multics выступает, например, апстримом, OScam подключается к нему как reader с protocol = cccam в oscam.server. Главное — совпадение протокола, порта и учётных данных. Разные реализации CCcam в целом совместимы между собой на уровне протокола.

Где лежат конфигурационные файлы OScam?

По умолчанию в /usr/local/etc/: oscam.conf, oscam.server, oscam.user, oscam.dvbapi, oscam.services. Путь можно изменить ключом запуска -c /другой/путь. Права на файлы — 600, иначе при записи через веб-интерфейс будут ошибки.

Открыты ли исходники Multics, как у OScam?

Нет. OScam распространяется с открытыми исходниками — можно читать код, собирать самостоятельно, форкать. Multics — закрытый бинарник без публичных исходников. Это означает: нет возможности аудита, нет кастомизации под специфические нужды, зависимость от того, выпустит ли разработчик обновление при смене алгоритма вещателя.

Какие порты нужно открыть в файрволе для cardsharing-сервера?

Зависит от протоколов: CCcam — 12000, cs378x/camd35 — 34000, newcamd — по вашей настройке, часто в диапазоне 15000–15010, веб-интерфейс OScam — 8888 (или что указали в httpport). Открывайте только то, что реально используете, и по возможности ограничивайте источники по IP через iptables или firewalld.

Почему сервер периодически freeze'ит при большом числе клиентов?

Чаще всего причина — перегрузка ECM-очереди при недостаточном числе апстримов, неверные лимиты в reader (параметры maxqlen, cccmaxhops), или нестабильный апстрим с постоянными retry. Диагностика: смотрите ECM-время в веб-мониторинге OScam, включайте loglevel = 8 временно и ищите строки с ошибками ридера. На слабом CPU проблему усугубляет слишком низкий приоритет процесса — попробуйте nice -n -5 при запуске.

О статье

  • Практические советы и инструкции
  • Материалы по спутниковому ТВ
  • Поддержка и помощь 24/7