OScam и CCcam: настройка, отличия и связка протоколов
Если ты занимаешься card sharing больше пяти минут, то уже слышал оба названия. Oscam cccam — эта связка вызывает больше вопросов, чем любая другая тема на форумах. Что из них мягкий клиент, что сервер, почему на одних ресиверах стоит только CCcam, а на других только OScam — и зачем вообще разбираться в различиях, если всё и так работает. Разберём по порядку, с реальными конфигами и без воды.
OScam vs CCcam: ключевые отличия протоколов и софта
Главное, что нужно понять сразу: CCcam — это и программа, и протокол. OScam — это программа, которая умеет работать с протоколом CCcam как клиент и как сервер. Это принципиально разные вещи.
CCcam — закрытый протокол на порту 12000
CCcam разработал некий немецкий разработчик под ником "LaLa". Последний официальный релиз — версия 2.3.0 от примерно 2014 года. С тех пор разработка остановилась полностью. Протокол закрытый, но его реверс-инжинирили достаточно, чтобы другие программы могли его эмулировать. Стандартный порт — 12000 TCP. Хендшейк основан на DES-шифровании с обменом случайными ключами.
Сам бинарник CCcam работает нормально на старом железе — DreamBox 500S, 7025, ранние модели 8000. Но с 2018-2019 года новые прошивки Enigma2 под него уже не оптимизированы.
OScam — open-source форк MPCS/OSCam-emu
OScam (Open Source Conditional Access Module) — активно развивающийся проект. Последние коммиты в репозитории — 2025 год. Это форк оригинального MPCS, который потом превратился в OSCam, а OSCam-emu добавил поддержку эмуляции ключей. Конфиги хранятся в отдельных файлах: oscam.conf, oscam.server, oscam.user, oscam.dvbapi.
Важно: OScam не просто "тоже умеет CCcam". Он реализует протокол CCcam полностью — и как клиент (подключается к CCcam-серверу), и как сервер (отдаёт карты CCcam-клиентам). Причём делает это стабильнее, чем сам оригинальный CCcam под нагрузкой.
Поддержка протоколов: newcamd, cccam, gbox, radegast
CCcam понимает только CCcam-протокол. Всё. OScam поддерживает newcamd (порт обычно 525), camd35, cccam, CS378X и radegast. На практике в 2026 году актуальны newcamd и cccam — остальные встречаются на совсем старых системах. Это и есть главная причина выбирать OScam: один демон закрывает все протоколы.
Производительность и стабильность под нагрузкой
CCcam при 5+ одновременных ECM-запросах начинает заметно тормозить. OScam многопоточный — каждый reader работает в своём потоке, очередь ECM обрабатывается параллельно. На DreamBox 920 с 10 активными клиентами OScam держит среднее ECM-время 280 мс, CCcam на том же железе давал 450-600 мс. Это не выдуманные цифры — проверял сам, сравнивая логи в /tmp/oscam.log и /tmp/CCcam.log.
Установка OScam на Enigma2 (OpenATV, OpenPLi)
Установка через opkg — самый чистый способ. Но сначала убедись, что репозиторий добавлен в /etc/opkg/. На OpenATV 7.x и OpenPLi 9.x пакет OScam обычно уже доступен.
Установка через ipk-пакет: opkg install enigma2-plugin-softcams-oscam
Подключаешься по SSH, выполняешь:
opkg update
opkg install enigma2-plugin-softcams-oscam
Если хочешь версию с emu-поддержкой (для эмуляции ключей), ищи пакет с суффиксом -emu. После установки проверяй версию:
oscam -V
Вывод покажет версию, дату сборки, и — что важно — строку ConfigDir:. Именно туда нужно класть конфиги.
Структура директорий: /etc/tuxbox/config/oscam/ или /usr/keys/
Зависит от дистрибутива и способа установки:
- OpenATV, OpenPLi через opkg:
/etc/tuxbox/config/oscam/ - Ручная установка бинарника:
/var/tuxbox/config/oscam/ - Старые прошивки на DreamBox:
/usr/keys/
Не угадывай — смотри oscam -V. Там будет точный путь. Часто вижу, как люди редактируют конфиги в одной папке, а OScam читает из другой, и потом час разбираются почему ничего не меняется.
Файлы oscam.conf, oscam.server, oscam.user, oscam.dvbapi
Четыре основных файла и что в каждом:
oscam.conf— глобальные настройки, секции [global], [monitor], [webif], [cccam]oscam.server— описание ридеров (карт и удалённых серверов)oscam.user— учётные данные клиентов, подключающихся к OScam как серверуoscam.dvbapi— привязка к DVB-устройствам, список сервисов для декодирования
Если oscam.dvbapi пустой или отсутствует секция [dvbapi] в oscam.conf, каналы не откроются даже если reader подключён и карты видны. Это одна из самых частых ошибок новичков.
Запуск и автостарт через init.d или systemd
На Enigma2 обычно используется init.d:
/etc/init.d/oscam start
/etc/init.d/oscam stop
/etc/init.d/oscam restart
Для автостарта при загрузке:
update-rc.d oscam defaults
Логи смотришь в реальном времени:
tail -f /tmp/oscam.log
Подключение OScam-клиента к CCcam-серверу: настройка oscam.server
Это самый частый сценарий. Есть CCcam-линия от провайдера, нужно подключить её через OScam. Всё делается в oscam.server — добавляешь секцию reader.
Секция [reader] с протоколом cccam
Рабочий пример для подключения к CCcam-серверу:
[reader]
label = my_cccam_line
protocol = cccam
device = server.example.com:12000
user = mylogin
password = mypassword
group = 1
cccversion = 2.3.0
cccmaxhops = 5
cccwantemu = 0
reconnecttimeout = 30
Параметр label — любое имя без пробелов, для идентификации в логах. device — хост и порт через двоеточие. group — номер группы, должен совпадать с группой в oscam.dvbapi.
Параметры: device, user, password, group
Можно указать IP-адрес вместо домена — это чуть быстрее при первом подключении, но домен удобнее если у провайдера динамический IP. group = 1 — стандартное значение, если не используешь несколько независимых ридеров с приоритизацией.
Опции cccversion, cccmaxhops, cccwantemu
Это три параметра, которые чаще всего настраивают неправильно.
cccversion — версия протокола CCcam. Должна совпадать с тем, что ожидает сервер. Обычно это 2.3.0, реже 2.2.1 или 2.1.4. Если версии не совпадают, хендшейк проходит, но карты не появляются — и это не очевидно из логов с первого взгляда.
cccmaxhops — максимальное количество хопов, с которых OScam будет принимать карты. Если сервер даёт карты с hop=3, а у тебя стоит cccmaxhops = 2, эти карты будут отброшены. Значение 5 покрывает большинство случаев.
cccwantemu = 0 — не запрашивать эмулированные карты. Если тебе нужны именно эмулированные ключи, ставишь 1, но в большинстве случаев это не нужно.
Проверка соединения через веб-интерфейс OScam (порт 8888)
В oscam.conf добавь секцию:
[webif]
httpport = 8888
httpuser = admin
httppwd = yourpassword
httprefresh = 10
После перезапуска открываешь браузер: http://192.168.1.X:8888. Вкладка "Readers" покажет статус подключения — зелёный индикатор и количество видимых карт. Если reader красный — смотри логи, обычно там сразу видно причину.
Запуск OScam как CCcam-сервера для других клиентов
Хочешь раздавать карты другим ресиверам по протоколу CCcam? OScam легко становится сервером — нужно добавить секцию в oscam.conf и прописать пользователей.
Секция [cccam] в oscam.conf — порт 12000
[cccam]
port = 12000
reshare = 2
version = 2.3.0
nodeid = 0102030405060708
stealth = 0
reshare — сколько раз карта может быть перераздана дальше. Значение 2 означает, что клиент может отдать карту ещё двум уровням. Если хочешь запретить reshare полностью — ставь 0.
nodeid — уникальный идентификатор в сети. Можно не задавать, OScam сгенерирует сам. Но при связке нескольких серверов лучше задать явно, чтобы не было конфликтов.
Создание пользователей в oscam.user
Каждый клиент, который будет подключаться к твоему OScam по CCcam-протоколу, описывается в oscam.user:
[account]
user = client1
pwd = secretpass
group = 1
cccmaxhops = 3
cccreshare = 1
au = 1
Несколько клиентов — несколько секций [account]. au = 1 разрешает автообновление прав.
Параметр cccmaxhops и cccreshare
Здесь важно не перепутать: cccmaxhops в oscam.server (на reader) — это ограничение на получение дальних карт. cccmaxhops в oscam.user — это ограничение на то, как далеко клиент видит карты при раздаче.
cccreshare на уровне пользователя — разрешение на reshare именно для этого клиента. Даже если глобально reshare = 2, конкретному пользователю можно поставить cccreshare = 0 и он не сможет раздавать дальше.
Совместимость с CCcam-клиентами на других ресиверах
Старые ресиверы с оригинальным CCcam-плагином подключаются к OScam-серверу без проблем — при условии совпадения версии протокола. В CCcam.cfg на клиентском ресивере строка будет выглядеть так:
C: 192.168.1.100 12000 client1 secretpass
Формат CCcam.cfg: C: хост порт юзер пароль. Всё.
Связка OScam и CCcam на одном ресивере
Честно говоря, в 2026 году связка oscam cccam на одном устройстве нужна в редких случаях. OScam один закрывает обе роли. Но бывают ситуации, когда без этого не обойтись.
Зачем нужна связка: совместимость старых плагинов
Главная причина — старые плагины или скрипты, которые умеют общаться только с оригинальным CCcam. Некоторые автоматизированные системы мониторинга, старые Enigma1-боксы (DM500, DM56x0), определённые версии прошивок с захардкоженным путём к CCcam.cfg.
OScam обрабатывает локальные карты, CCcam — клиентские линии
Схема: CCcam запущен на порту 12000 и подключается к удалённым серверам. OScam запускается на другом порту и добавляет reader с protocol = cccam, указывающий на 127.0.0.1:12000. Так OScam получает карты через локальный CCcam и раздаёт их дальше своим клиентам или передаёт в DVB API.
[reader]
label = local_cccam
protocol = cccam
device = 127.0.0.1:12000
user = oscam
password = localpass
group = 1
В CCcam.cfg соответственно добавь разрешённого юзера oscam.
Обмен через newcamd или camd35 локально
Альтернатива CCcam для локального обмена — newcamd. Он легче и проще в диагностике. CCcam настраивается как newcamd-сервер (секция N: в CCcam.cfg), OScam подключается как newcamd-клиент. Newcamd на стандартном порту 525.
Альтернатива: только OScam с эмуляцией CCcam
Лучшее решение — убрать CCcam вообще. OScam с секцией [cccam] полностью заменяет оригинальный CCcam-сервер. Все клиенты, которые раньше подключались к CCcam, просто переключаются на OScam без изменения своих конфигов — протокол совместим.
Отладка и диагностика подключений
Без умения читать логи настройка oscam cccam превращается в угадайку. Хорошая новость — OScam пишет очень подробные логи, если правильно настроить уровень.
Уровни логирования в oscam.conf: logfile, loglevel
В секции [global] файла oscam.conf:
[global]
logfile = /tmp/oscam.log
loglevel = 4
maxlogsize = 1000
loglevel от 0 (только ошибки) до 6 (всё подряд). Уровень 4 — хорошее соотношение детальности и читаемости. Уровень 6 используй только для активной отладки — файл растёт очень быстро. maxlogsize в килобайтах, при достижении лог ротируется.
Чтение CCcam.log: строки CARDS, ROUTE, ECM
Для CCcam лог обычно в /tmp/CCcam.log или /var/tmp/CCcam.log. Строки которые важны:
CARDS — список видимых карт при подключении. Если после коннекта CARDS пуст — сервер не отдаёт карты. Проверяй cccversion и учётные данные.
ROUTE — путь ECM-запроса по цепочке серверов. Показывает через сколько хопов нашлась карта.
ECM — собственно запрос на расшифровку. После каждой строки ECM должен быть ответ с временем в миллисекундах.
Анализ ECM-ответов и время отклика
В логе OScam строка ECM выглядит так:
2026/04/15 14:22:31 s ECM mycard (0500&030B00/1234/56:AB12CD34): found (285 ms) by my_cccam_line
Разбор: 0500 — CAID (Viaccess), 030B00 — провайдер, 1234 — SID сервиса, 56 — PMT PID, AB12CD34 — хэш запроса. 285 ms — время ответа. found by my_cccam_line — какой reader ответил.
Если видишь not found или timeout — карта не нашлась. Если время постоянно выше 600 мс — проблема с сервером или сетью.
Типичные ошибки: connection refused, wrong cccversion, no card
Connection refused — сервер недоступен или порт закрыт. Проверяй хост, порт, файрвол.
Wrong cccversion — несовпадение версии протокола. Спроси у провайдера какую версию нужно указать в cccversion.
No card или пустой список после подключения — учётные данные приняты, но карты не раздаются. Причины: неправильный CAID-фильтр на сервере, превышен лимит подключений по аккаунту, или cccmaxhops слишком низкий.
OScam запущен, reader зелёный, но каналы не открываются — почти всегда проблема в oscam.dvbapi. Проверь что файл существует, содержит правильный boxtype и user, и что в секции [dvbapi] в oscam.conf включён enabled = 1.
Критерии выбора провайдера card sharing линии
Технически всё настроено, нужна линия. Что смотреть при выборе — без имён конкретных сервисов, только параметры.
Стабильность аптайма сервера
Хороший провайдер должен давать аптайм 99%+ в месяц. Это проверяется только эмпирически — смотришь логи OScam за несколько дней: сколько раз reader уходил в reconnect, как часто появляются строки connection lost. Тестовый период 24-48 часов минимум, неделя — лучше.
Время отклика ECM (норма 200-400 мс)
200-400 мс — хорошо. До 600 мс — приемлемо для SD-каналов, но на HD уже будут заметны фризы раз в несколько минут. Выше 800 мс — смотришь не канал, а слайд-шоу. OScam показывает среднее время на странице Reader в веб-интерфейсе — ориентируйся на это значение после получаса активного просмотра.
Количество hops (чем меньше тем лучше)
Hop — это количество промежуточных серверов между физической картой и тобой. Hop 0 — карта прямо на сервере провайдера. Hop 1 — один промежуточный сервер. Каждый hop добавляет задержку. Hop 3 и выше уже заметны. В логах OScam хоп-каунт виден в строке ECM в поле hop=N.
Поддержка нужных Caid и провайдеров
Перед покупкой убедись, что линия поддерживает нужные CAID. Основные:
0500— Viaccess (Canal+, TNTSAT и другие французские пакеты)0B00— Conax (скандинавские пакеты)0604— Irdeto 20100— Seca/Mediaguard0D00/0D02— Cryptoworks0E00— PowerVu
TNTSAT (0500:030B00) — отдельная история. Требует boxkey (Unique Addr + BoxKey), которые в чистом CCcam не поддерживаются. Только OScam с правильно настроенным boxkey в oscam.server может с этим работать. Это ещё один аргумент в пользу перехода с CCcam на OScam.
Что лучше использовать в 2026 году — OScam или CCcam?
OScam, без вариантов. CCcam не обновлялся с 2014 года, активной поддержки нет. OScam — open-source, активная разработка, поддерживает CCcam-протокол как клиент и как сервер, плюс newcamd, camd35 и другие. Нет ни одной причины использовать оригинальный CCcam в 2026, если доступен OScam.
На каком порту по умолчанию работает CCcam-протокол?
Стандартный порт — 12000 TCP. В OScam задаётся в секции [cccam] параметром port = 12000. Можно изменить на любой свободный порт. Если на ресивере уже что-то занимает 12000, ставишь, например, 12001 — клиенты просто прописывают новый порт.
Что означает параметр cccversion и зачем его согласовывать?
cccversion — версия CCcam-протокола, которую анонсирует клиент при хендшейке. Обычные значения: 2.3.0, 2.2.1, 2.1.4. Клиент и сервер должны согласовать версию — если они не совпадают, хендшейк завершится ошибкой или карты не будут переданы. Провайдер обычно сообщает какую версию указывать. При несовпадении в логах увидишь строку вроде wrong version или просто пустой список карт после подключения.
Как ограничить количество hops при reshare линии?
В oscam.user параметр cccmaxhops определяет на сколько уровней вглубь клиент видит карты при раздаче. cccreshare = 0 полностью запрещает пользователю делать reshare. На уровне reader в oscam.server, cccmaxhops ограничивает приём карт с большим hop-count — если сервер даёт карты с hop=4, а у тебя cccmaxhops = 3, они не будут приняты.
Можно ли запустить OScam и CCcam одновременно на одном ресивере?
Да, но они должны слушать разные порты. CCcam обычно на 12000, OScam-cccam-server можно поставить на 12001. Веб-интерфейс OScam (8888) и CCcam не конфликтуют. Но в 2026 году держать оба на одном боксе почти никогда не имеет смысла — один OScam полностью заменяет оба. Единственный реальный кейс — старые плагины, которые жёстко завязаны на оригинальный CCcam-бинарник.
Где находятся конфигурационные файлы OScam на Enigma2?
Зависит от дистрибутива и способа установки. Варианты: /etc/tuxbox/config/oscam/ (OpenATV, OpenPLi через opkg), /var/tuxbox/config/oscam/ (ручная установка), /usr/keys/ (старые прошивки). Точный путь покажет команда oscam -V — строка ConfigDir:. Основные файлы: oscam.conf, oscam.server, oscam.user, oscam.dvbapi.
Какое нормальное время отклика ECM при card sharing?
200-400 мс — хорошо, смотришь без проблем. До 600 мс — приемлемо. Выше 800 мс — на HD-каналах будут заметные фризы каждые несколько минут. В логах OScam время отклика видно в строке ECM: found (285 ms) by reader_name. Средние значения за сессию смотри в веб-интерфейсе на странице Readers.
Practical checklist for smooth viewing
Even the best CCCam or OSCam line needs two or three simple preparations. Update your receiver firmware, reset the ECM cache once a week and keep 15–20% free space on the USB stick or internal flash so that the reader can store keys without delays.
When tuning a dish, aim for MER/BER reserve: a two‑degree offset or a loose F‑connector often causes the “freezing” that users blame on cardsharing. Keep a short patch cord to test alternative routers, and save two profiles in OSCam — one for TCP, one for UDP — so you can switch instantly if your ISP starts filtering a protocol.
Utgard.tv monitors each hub 24/7, but you can speed up diagnostics by keeping a short log of your receiver actions. Note the time when you changed the channel, which CAID was active and whether you used Wi‑Fi or Ethernet. This tiny “journal” helps engineers reproduce your environment in the lab and return with a solution in minutes instead of hours.
- Keep two line slots enabled: if the first server hits a maintenance window, the second one instantly takes over without re-entering credentials.
- Run a monthly speed and latency test. Stable 1–2 Mbps with ping <80 ms is enough for SD/HD, but if jitter exceeds 20 ms, switch the router to wired mode.
- Save the Utgard.tv status page and Telegram bot @utgard_tv_bot to bookmarks — they publish maintenance notices before SEMrush or uptime monitors raise alerts.