/

Шаринг карт CCcam/OScam: настройка сервера 2026

Главная Статьи Шаринг карт CCcam/OScam: настройка сервера 2026

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

07.06.2026

Шаринг карт CCcam/OScam: настройка сервера 2026

Если вы дошли до этой статьи, значит базовую теорию уже знаете и хотите конкретику. Здесь — реальные конфиги, реальные команды и разбор того, почему что-то не работает. Настройка шаринга карт через CCcam и OScam — это не сложно, но нюансов хватает, и большинство проблем возникают из-за одних и тех же мест: group, CAID, права на /dev/. Давайте по порядку.

Что такое шаринг карт и как он работает

Технология построена на принципе удалённой дешифровки. Ваш ресивер принимает зашифрованный поток, но не может его расшифровать самостоятельно — он отправляет ECM-запрос на сервер, где физически стоит смарт-карта. Сервер расшифровывает запрос через локальный ридер и возвращает контрольное слово DCW. Ресивер использует это слово для декодирования картинки. Всё это происходит за 100–400 мс — незаметно для пользователя, если сеть нормальная.

Принцип работы card sharing на уровне протокола

Архитектура клиент-сервер здесь прямолинейная. Сервер слушает входящие подключения на заданном порту, авторизует клиентов по логину/паролю и маршрутизирует ECM-запросы к нужному ридеру. Клиент — это ваш ресивер с установленным эмулятором (тот же CCcam или OScam в режиме клиента). Ридер — это физическое или виртуальное устройство, которое умеет общаться со смарт-картой.

Понятие peer — это равноправный участник обмена, который и раздаёт карты, и получает от других. Hop — количество прыжков от оригинального сервера с картой. Hop 0 — локальная карта, hop 1 — первый реселлер, и так далее. Чем больше хопов, тем выше задержка. Reshare — параметр, ограничивающий, насколько далеко клиент может раздавать полученный доступ дальше.

Роль ECM и DCW в обмене ключами

ECM (Entitlement Control Message) — это зашифрованный пакет, содержащий контрольное слово. Он передаётся в потоке DVB и меняется каждые 10 секунд (типичный crypto-period для большинства систем условного доступа). Сервер шаринга принимает этот пакет, отправляет его на карту через ридер, получает расшифрованный DCW (De-Control Word) и отдаёт клиенту.

DCW — это 8-байтный ключ, которым ресивер дешифрует видеопоток. Если DCW не пришёл до смены ключа — получаете фриз или чёрный экран. Именно поэтому время ответа ECM — главная метрика качества шаринга.

Чем отличается CCcam от OScam

CCcam — проприетарный протокол, порт по умолчанию 12000. Прост в настройке, один конфиг-файл, но исходников нет, разработка остановилась лет десять назад. OScam — открытое ПО, активно поддерживается сообществом, поддерживает одновременно несколько протоколов: cccam (порт 12000), newcamd (порт 15000), camd35, cs378x. Для сервера в 2026 году OScam — очевидный выбор.

Важный момент: OScam может эмулировать CCcam-протокол на стороне сервера. Это значит, что клиент с CCcam-прошивкой спокойно подключается к OScam-серверу — они "разговаривают" на одном языке. Обратное тоже работает.

Локальная карта, ридер и сетевой клиент

Локальная карта — физическая смарт-карта, вставленная в ридер, подключённый к серверу. Ридер может быть встроенным в ресивер или внешним USB-устройством типа Smargo или Phoenix. Сетевой клиент — любое устройство, подключающееся к серверу по протоколу шаринга, без физической карты. Вся ценность шаринга в том, что одна карта обслуживает множество клиентов.

Настройка сервера OScam: пошаговая конфигурация

OScam хранит конфиги в директории. На большинстве ресиверов с Enigma2 это /etc/tuxbox/config/oscam/ или /var/tuxbox/config/. На OpenATV и похожих прошивках — /etc/oscam/. Если не уверены — ищите файл oscam.conf через find / -name oscam.conf 2>/dev/null.

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

Три основных файла, и каждый отвечает за своё. oscam.conf — глобальные настройки и включение протоколов. oscam.server — ридеры (физические карты и сетевые источники). oscam.user — учётные записи клиентов.

Пример oscam.conf:

[global]
logfile = /tmp/oscam.log
maxlogsize = 500
usrfile = /tmp/oscamuser.log
cwlogdir = /tmp/cw
preferlocalcards = 1

[cs378x]
port = 15000

[cccam]
port = 12000
version = 2.3.0
reshare = 1
stealth = 1

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

Секция [cccam] активирует эмуляцию CCcam-протокола. Без неё CCcam-клиенты не подключатся. reshare = 1 позволяет клиентам пересылать доступ максимум на 1 уровень дальше — если не хотите разрешать реселл, ставьте 0.

Настройка ридера в oscam.server

Каждый физический ридер — отдельная секция [reader]:

[reader]
label = card_irdeto
protocol = internal
device = /dev/sci0
detect = cd
caid = 0604
group = 1
ident = 0604:000000
mhz = 450
cardmhz = 450
fallback = 0

Для USB-ридера (Smargo) замените protocol = internal на protocol = smargo и device = /dev/ttyUSB0. Параметр mhz — частота ридера в десятых долях МГц, 450 = 4.5 МГц. Если карта не инициализируется — попробуйте 357 (3.57 МГц). Параметр group = 1 — группа, через которую ридер связывается с пользователями.

Для внешнего USB Phoenix-ридера:

protocol = phoenix
device = /dev/ttyUSB0

Создание учётных записей клиентов в oscam.user

Каждый клиент — секция [account]:

[account]
user = client1
pwd = secretpass
group = 1
au = card_irdeto
caid = 0604
ident = 0604:000000
maxhops = 2
uniq = 1

Ключевой момент, который все упускают: group = 1 в oscam.user должен совпадать с group = 1 в oscam.server. Именно через group OScam понимает, какой ридер обслуживает какого клиента. Без совпадения — получите "no matching reader" в логе, и карта будет определяться, но каналы не откроются.

Параметр au = card_irdeto — это label ридера. Без него EMM-обновления карты работать не будут, что через время приведёт к потере доступа. uniq = 1 запрещает одновременный вход нескольких сессий с одного аккаунта.

Включение веб-интерфейса httpport и мониторинг

Веб-интерфейс OScam — реально удобный инструмент. После запуска открываете браузер на http://IP:8888 и видите всё: статус ридеров, текущие ECM-запросы, время ответа, подключённых клиентов. Вкладка Readers показывает, определилась ли карта (status: CARDOK) и какой CAID она отдаёт. Вкладка Status — потоки ECM в реальном времени с временем ответа в миллисекундах.

Если карта показывает CARDOK, но времени ответа нет — значит запросы не приходят. Скорее всего проблема на стороне клиента или в настройках group/caid в oscam.user.

Запуск и проверка через лог

Запуск OScam на большинстве ресиверов:

/usr/bin/oscam -B /tmp/oscam.pid -c /etc/tuxbox/config/oscam/

Для мониторинга лога в реальном времени:

tail -f /tmp/oscam.log | grep -E "ECM|reader|ERROR|WARN"

Чтобы видеть детальные сообщения, в oscam.conf в секции [global] добавьте debuglevel = 64 — но только на время диагностики, иначе лог будет расти гигабайтами.

Настройка CCcam-сервера и клиента

CCcam проще OScam, но менее гибкий. Конфиг обычно один файл — /var/etc/CCcam.cfg или /etc/CCcam.cfg в зависимости от прошивки. На старых прошивках типа Gemini иногда встречается /var/CCcam.cfg — если стандартный путь не работает, проверьте и там.

Файл CCcam.cfg: основные директивы

SERVER LISTEN PORT : 12000
TELNET PORT : 16001
ALLOW TELNET INFO : yes

EXTRA INFO : yes
DEBUG : no
LOG FILE : /tmp/CCcam.log
LOG LEVEL : 1

CACHE SYNC : no
MAX HOPS : 10
MINIMIZE RESSOURCES : no

SERVER LISTEN PORT : 12000 — порт, на котором демон принимает входящие CCcam-подключения. TELNET PORT : 16001 — порт для мониторинга через telnet. Подключаетесь командой telnet 127.0.0.1 16001 и видите статус карт и клиентов в текстовом виде.

Строки F: для клиентов и C: для подключения к серверу

Формат строки для создания клиентского аккаунта (F-line):

F: username password downhops uphops

Например:

F: client1 pass123 1 0

downhops — сколько хопов клиент видит вниз (обычно 1), uphops — сколько может передавать вверх (0 = не передаёт). Строка для подключения к другому серверу как клиент (C-line):

C: hostname.server.com 12000 myuser mypass

Несколько C-line — несколько источников карт. CCcam сам перебирает их при недоступности основного.

Параметры reshare, hop и кэширование

Параметр SHARE RESHARE DISTANCE ограничивает, как далеко уходят расшаренные карты. Значение 1 — клиент может поделиться с кем-то ещё только напрямую. Значение 0 — полный запрет реселла.

MAX HOPS — сколько ретрансляций карты принимается. Если ставите сервер с локальными картами, логично ставить MAX HOPS = 1. Кэширование (CACHE SYNC) позволяет серверам обмениваться уже расшифрованными DCW — снижает нагрузку на карту при популярных каналах, но создаёт сетевой трафик. Для небольшого сервера можно оставить выключенным.

Путь к конфигу и перезапуск демона

Перезапуск CCcam:

killall -9 CCcam && sleep 2 && /usr/bin/CCcam &

Или через init-скрипт, если он есть:

/etc/init.d/CCcam restart

Важно: никогда не запускайте CCcam и OScam одновременно на одном порту 12000. Второй процесс просто не стартует (или стартует, но не слушает порт), и вы потратите час на диагностику того, что лежит на поверхности. Проверьте занятые порты командой netstat -tlnp | grep 12000 перед запуском.

Диагностика и устранение типичных проблем

Это самый важный раздел. Большинство гайдов дают шаблоны конфигов и оставляют вас наедине с проблемами. Разберём конкретные ситуации с конкретными решениями.

Карта определяется, но каналы не открываются

Веб-интерфейс показывает CARDOK, OScam видит карту — но на клиентском ресивере чёрный экран. Первое, что проверяете: совпадение group между oscam.server и oscam.user. Если у ридера group = 1, а у пользователя group = 2 — они никогда не встретятся.

Второе: параметр caid в oscam.user. Если он прописан и не совпадает с CAID карты — запросы будут отфильтрованы. Попробуйте временно убрать caid из секции пользователя — если заработало, значит проблема в неверном значении.

Ошибки в логе: no matching reader, ECM rejected

Сообщение no matching reader found — OScam не нашёл ридера для обработки запроса. Причины по убыванию частоты: несовпадение group, несовпадение caid/ident, ридер в статусе offline или CRNONE.

Сообщение rejected (ECM filtered) — запрос отклонён фильтром. Проверьте параметр ident в oscam.server. Формат: caid:provid, например 0604:000000. Если провайдер использует несколько provider ID, нужно перечислить все через запятую: 0604:000000,000001.

Сообщение ECM time too high — сервер отвечает слишком медленно и OScam отбрасывает ответ. По умолчанию таймаут 3500 мс. Если сеть медленная или сервер перегружен — можно поднять в oscam.conf параметром ecmcachesize и waitforcards.

Высокое время ответа ECM и фризы изображения

Норма — до 300-400 мс. При 600+ мс начинаются проблемы на каналах с коротким crypto-period (бывает 8-10 секунд). При 900+ мс — фризы гарантированы практически на всех каналах.

Источники высокой задержки: физическое расстояние до сервера (пинг 200 мс уже критично), перегруженный сервер с десятками клиентов на одной карте, дешёвый USB-ридер с высоким временем ответа самой карты. В логе OScam каждый ECM-ответ пишется с временем в мс — ищите строки типа ECM 0604/000000 answered in 280ms.

Особенно заметны фризы на каналах с частой сменой ключа — некоторые провайдеры меняют ключ каждые 8 секунд в периоды активной защиты. Если среднее время ответа 350 мс, а смена ключа каждые 8 секунд — у вас буквально секунды запаса. Малейший скачок сети — фриз.

Проблемы с правами на серийный порт и USB-ридер

USB-ридер не появляется в /dev/ttyUSB0 — сначала смотрите dmesg | grep -i usb сразу после подключения. Если устройство определяется, но прав нет — OScam не может открыть порт.

Проверьте права:

ls -la /dev/ttyUSB0

Типичный вывод: crw-rw---- 1 root dialout 188, 0 .... OScam должен запускаться пользователем из группы dialout, или нужно выдать права явно:

chmod 666 /dev/ttyUSB0

На встроенных ресиверах с Enigma2 OScam обычно запускается от root, так что проблем меньше. На Linux-серверах — добавьте пользователя в группу: usermod -a -G dialout oscamuser. После этого обязательно перезайдите в систему или перезапустите сессию.

Если устройство вообще не появляется в dmesg — проблема в драйвере. Smargo использует чип CP2102 или FTDI, оба поддерживаются ядром Linux из коробки начиная с версии 3.x. На очень старых ядрах придётся собирать модуль вручную.

Несовпадение CAID/provider id

Каждая система условного доступа имеет свой CAID. Irdeto — 0x0604, Nagravision — 0x1801/0x1830, Viaccess — 0x0500, Conax — 0x0B00. Если в oscam.server прописан неверный CAID — OScam не будет маршрутизировать запросы на этот ридер.

Как узнать правильный CAID: запустите OScam с пустыми значениями caid в oscam.server (или вообще без этого параметра) и посмотрите в веб-интерфейсе, что карта отдаёт сама. Вкладка Readers → ваш ридер → CAID. Затем пропишите это значение в конфиг.

Если у вас несколько ридеров с одинаковым CAID — OScam будет использовать первый по приоритету. Приоритет задаётся параметром priority в oscam.server. При конфликте и одинаковом приоритете OScam использует первый найденный — порядок в файле имеет значение. Для балансировки нагрузки между несколькими одинаковыми картами используйте loadbalanced = 1 в секции [global] oscam.conf.

Как выбрать поставщика доступа: технические критерии

Конфигурацию своего сервера вы уже настроили. Теперь нужен источник карт, если своих нет. Критерии оценки — чисто технические, без маркетинга.

Стабильность аптайма и время ответа ECM

Аптайм "99%" на лендинге ничего не значит. Смотрите реальное время ответа ECM через свой лог после тестового подключения. Хороший показатель — стабильные 150-300 мс без всплесков. Если видите скачки до 800 мс и обратно — сервер перегружен или у него нестабильный канал.

Запросите тестовый период — нормальные поставщики дают 24-48 часов. За это время прогоните мониторинг через OScam веб-интерфейс и посмотрите на распределение времени ответа по часам. Пиковая нагрузка вечером (20:00-23:00) должна давать такое же время ответа, что и в 3 ночи.

Поддерживаемые протоколы и количество локальных карт

Уточните, какие протоколы поддерживаются: cccam, newcamd, camd35. Если ваш клиент работает только с newcamd — CCcam-only сервер вам не подойдёт. Узнайте, сколько карт локальных (hop 0) и сколько реселл (hop 1, 2). Реселл-карты добавляют задержку — каждый прыжок это +50-150 мс к времени ответа.

Хороший сервер шаринга честно говорит, какие каналы и пакеты покрываются локальными картами, а какие через реселл. Если вся информация — "у нас всё есть, подключайтесь" — это красный флаг.

Ограничения по hop и reshare

Большинство поставщиков ставят ограничение на reshare — вы не можете передавать полученный доступ дальше. Это нормально. Но посмотрите на максимальное число hop в C-line, которую вам выдают. Hop 1 означает, что вы работаете через одного посредника. Это приемлемо. Hop 3 и выше — время ответа будет высоким по определению.

Качество технической поддержки конфигов

Проверьте: поддержка присылает готовые строки для вашего конфига (C-line для CCcam или настройки для oscam.server), или просто даёт IP/логин/пароль и говорит "разбирайтесь сами"? Готовые конфиги с правильными CAID и ident — знак того, что у людей есть реальный опыт. Если они не знают, что такое ident в oscam.server — их карты, скорее всего, тоже будут нестабильными.

Какой порт используется для шаринга по умолчанию?

CCcam-протокол работает на порту 12000. Newcamd — 15000. Веб-интерфейс OScam по умолчанию — 8888. Телнет-порт CCcam для мониторинга — 16001. Все эти значения меняются в соответствующих конфигах и ничем не фиксированы — используете порты в этих диапазонах, пока они не заняты другими сервисами.

Чем OScam лучше CCcam для сервера?

Открытый исходный код, активная разработка в 2026 году, поддержка cccam/newcamd/camd35/cs378x одновременно на разных портах, гибкая настройка ридеров с приоритетами и балансировкой нагрузки, нормальный веб-интерфейс с мониторингом в реальном времени. CCcam прост и работает, но проприетарный, не обновляется и лишён возможностей гибкой маршрутизации. Для сервера с несколькими ридерами и клиентами — однозначно OScam.

Почему карта определяется, но каналы не открываются?

В 90% случаев — несовпадение group между секцией [reader] в oscam.server и секцией [account] в oscam.user. Это самая частая ошибка. Вторая причина — неверный CAID или ident в oscam.user. Третья — клиент не привязан к ридеру через параметр au. Смотрите лог: строки "no matching reader" точно скажут, что что-то не сходится.

Какое время ответа ECM считается нормальным?

До 300-400 мс — комфортно на любых каналах. От 400 до 600 мс — риск фризов на каналах с crypto-period 8-10 секунд. Выше 600 мс — проблемы будут регулярными. Причины высокого времени: большой пинг до сервера, перегрузка карты слишком большим числом клиентов, медленный USB-ридер, много хопов в цепочке.

Можно ли подключить CCcam-клиент к OScam-серверу?

Да, и это один из главных плюсов OScam. Достаточно включить секцию [cccam] с нужным портом в oscam.conf, создать пользователя в oscam.user и отдать клиенту строку C: с IP, портом 12000, логином и паролем. OScam полностью эмулирует CCcam-протокол — клиент не видит разницы.

Где находятся конфигурационные файлы?

OScam — обычно /etc/tuxbox/config/oscam/ или /var/tuxbox/config/ (зависит от прошивки), файлы oscam.conf, oscam.server, oscam.user. На некоторых дистрибутивах — /etc/oscam/. CCcam — /var/etc/CCcam.cfg или /etc/CCcam.cfg, на старых прошивках бывает /var/CCcam.cfg. Если путь неизвестен: find / -name oscam.conf 2>/dev/null или find / -name CCcam.cfg 2>/dev/null.

О статье

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