/

ТВ шара: настройка CCcam и OScam сервера в 2026

Главная Статьи ТВ шара: настройка CCcam и OScam сервера в 2026

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

08.06.2026

ТВ шара: настройка CCcam и OScam сервера в 2026

Если вы уже слышали про тв шара, но до сих пор не понимаете, почему одни конфиги работают, а другие дают фризы каждые 30 секунд — эта статья для вас. Здесь не будет рекламы сервисов, только реальная техника: пути файлов, синтаксис строк, интерпретация логов. Всё, что нужно, чтобы поднять рабочего клиента или собственный сервер на Enigma2 или обычном Linux-боксе.

Что такое ТВ шара и как она работает технически

Card sharing — это не магия и не «взлом» в бытовом смысле. Это протокольное решение, при котором одна физическая смарт-карта обслуживает несколько ресиверов по сети. Ресивер сам расшифровать сигнал не может — для этого ему нужен Control Word. Именно за ним он и обращается к серверу.

Принцип card sharing: ECM, CW и DCW

Каждые несколько секунд DVB-поток меняет ключи шифрования. Ресивер получает зашифрованный пакет ECM (Entitlement Control Message) и отправляет его на сервер шары. Сервер передаёт ECM физической смарт-карте, та расшифровывает и возвращает Control Word (CW) — 8-байтовый ключ. Ресивер применяет CW и показывает картинку.

DCW (Decrypted Control Word) — это и есть тот самый расшифрованный ключ. Цикл: ECM уходит → CW приходит → канал идёт. Всё это должно укладываться примерно в 200–400 мс. Больше — фризы.

Роль сервера, клиента и смарт-карты

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

Бывает схема реселла: ваш сервер сам является клиентом другого сервера. Это hop 2 и выше, задержка растёт с каждым звеном. Но об этом позже.

Протоколы newcamd, CCcam и CS378x — отличия

CCcam — проприетарный протокол, разработанный для одноимённого демона. Работает по TCP, стандартный порт 12000 (диапазон 12000–12100). Между серверами CCcam может пересылать шары, что и породило реселл-экосистему.

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

CS378x (cardsharing 378x) — ещё один протокол, поддерживаемый OScam, чаще встречается в специфических конфигурациях. Если вы только настраиваете первый сервер — начинайте с CCcam-протокола в OScam, это самый распространённый вариант.

Настройка CCcam: конфиги, пути и строка подключения

CCcam — демон с минималистичной конфигурацией. Один файл, несколько строк — и всё работает. Или не работает, если напутать с синтаксисом. Файл читается построчно, комментарии начинаются с #.

Файл CCcam.cfg и его расположение (/etc/, /var/etc/, /usr/keys/)

Путь зависит от образа Enigma2. На OpenATV и OpenPLi чаще всего это /usr/keys/CCcam.cfg. На старых образах Gemini — /var/keys/CCcam.cfg. На некоторых сборках файл ищется в /etc/CCcam.cfg. Если не уверены — проверьте скрипт запуска демона:

grep -r CCcam /etc/init.d/

Там будет явно указан путь к конфигу через флаг -C.

Строка C-line: формат C: host port user pass

Строка подключения клиента выглядит так:

C: my.server.net 12000 username password no { 0:0:1 }

Поля по порядку: хост, порт, логин, пароль. Параметр no — запрет resharing на этой линии (рекомендую всегда ставить). В фигурных скобках — CAID:ident:maxhops. 0:0:1 означает: принимать все CAID, все ident, максимум 1 hop. Для ограничения по конкретному CAID: например 0500:000000:1 для Viaccess.

Параметры F-line и share limits

F-line — строка для сервера, которая разрешает клиентам подключаться к вашему серверу:

F: clientname password no 1 { 0:0:0 }

Цифра после no — максимальный уровень reshare. 0 — клиент не может ничего расшарить дальше. 1 — может отдать подписчикам с hop+1. Для домашнего сервера ставьте 0.

Параметр SHARE LIMIT в глобальной секции конфига ограничивает общее число одновременных расшифровок. Без него сервер будет работать без лимита, что при слабом железе создаёт очередь запросов и фризы.

Перезапуск демона и проверка статуса

Жёсткий перезапуск CCcam:

killall -9 CCcam
CCcam -C /usr/keys/CCcam.cfg &

Веб-интерфейс CCcam доступен на порту 16001 — просто откройте http://<ip-ресивера>:16001 в браузере. Там видно: подключённые C-lines, статус (connected/disconnected), список доступных карт и entitlements. Если строка подключена, но карт нет — проблема на стороне сервера, не у вас.

Настройка OScam: oscam.server, oscam.user и reader

OScam — это совсем другой уровень. Открытый код, поддержка десятка протоколов одновременно, подробные логи, гибкие приоритеты. Сложнее в настройке, но гораздо информативнее при диагностике. Для любого сервера с несколькими клиентами или несколькими ридерами — OScam предпочтительнее.

Структура файлов: oscam.conf, oscam.server, oscam.user, oscam.services

Конфиги лежат в одном каталоге. Типичные пути:

  • /etc/tuxbox/config/oscam/ — OpenPLi, OpenATV
  • /var/etc/oscam/ — некоторые образы на базе Opendreambox
  • /etc/oscam/ — чистый Linux без Enigma2

Файлов четыре основных: oscam.conf (глобальные настройки и webif), oscam.server (ридеры — источники карт), oscam.user (аккаунты клиентов), oscam.services (фильтры по SID/CAID). Менять их можно прямо через веб-интерфейс — изменения применяются без перезапуска демона.

Создание reader для подключения по cccam

Блок в oscam.server для подключения к CCcam-серверу:

[reader]
label                = myserver
protocol             = cccam
device               = my.server.net,12000
user                 = username
password             = password
group                = 1
inactivitytimeout    = 30
reconnecttimeout     = 15
cccversion           = 2.3.0
cccmaxhops           = 1

inactivitytimeout — сколько секунд ждать без активности перед разрывом. reconnecttimeout — пауза перед переподключением. cccmaxhops = 1 — принимать только карты с hop 1, игнорировать реселл-цепочки. Очень полезный параметр.

Для подключения по newcamd вместо protocol = cccam укажите protocol = newcamd и добавьте key = 0102030405060708091011121314 (14-байтовый DES-ключ, выдаётся сервером).

Настройка [account] для клиентов

В oscam.user создаётся аккаунт для каждого клиента, который будет подключаться к вашему OScam-серверу:

[account]
user                 = clientname
pwd                  = clientpassword
group                = 1
au                   = 1
monlevel             = 0
maxconn              = 1

group должен совпадать с group в oscam.server — так OScam понимает, через какие ридеры обслуживать этого клиента. maxconn = 1 запрещает одновременный вход с одного аккаунта. au = 1 включает Auto-Update — авторизационные обновления карты передаются клиенту.

Включение webif и мониторинг через порт 8888

В oscam.conf секция [webif]:

[webif]
httpport             = 8888
httpuser             = admin
httppwd              = yourpassword
httprefresh          = 10
httpallowed          = 127.0.0.1,192.168.0.0-192.168.255.255

После запуска OScam веб-интерфейс открывается на http://<ip>:8888. Там в реальном времени видно: статус каждого ридера, ECM time последних запросов, список подключённых клиентов и их активность. Это главный инструмент диагностики.

Запуск демона в фоне:

oscam -b -c /etc/tuxbox/config/oscam

Флаг -b — background mode. Логи по умолчанию пишутся в /tmp/oscam.log, путь настраивается в oscam.conf секция [global], параметр logfile.

Диагностика проблем: фризы, Freeze ECM и нет звука/картинки

Фризы — самая частая жалоба. И в 80% случаев проблема не в конфиге, а в сети или на стороне сервера. Но сначала нужно это установить по логам, а не гадать.

Анализ лога OScam: статусы found, not found, timeout

Включите подробный лог в oscam.conf:

[global]
logfile              = /tmp/oscam.log
clientloglevel       = 255
userloglevel         = 255

Типичная строка успешного ECM-запроса:

2026/01/15 21:34:12 c (ecm) username: found (189 ms) by myserver

189 мс — отлично. Норма — до 400 мс. Дальше смотрите на статусы: found — расшифровка прошла, not found — карта не смогла расшифровать (неверный CAID или ident), timeout — сервер не ответил за отведённое время. Timeout почти всегда означает сетевую проблему или перегрузку сервера.

Высокий ECM time и причины фризов

DVB-поток меняет CW каждые 8–10 секунд. Если новый CW не приходит вовремя — ресивер показывает фриз или чёрный экран. ECM time выше 600 мс — зона риска. Выше 1000 мс — гарантированные фризы на большинстве пакетов.

Что влияет на ECM time: физическое расстояние до сервера (ping), нагрузка сервера в данный момент, число hops в цепочке, потери пакетов в сети. Проверьте ping до сервера — если выше 80–100 мс с потерями, проблема точно не в конфиге.

ping -c 100 my.server.net | tail -2

Потери даже в 1–2% при частых ECM-запросах дают заметные фризы.

Проблема hop 2+ и нестабильная цепочка

В веб-интерфейсе OScam в разделе Readers видно hop для каждой карты. Hop 1 — карта физически на этом сервере или один шаг до неё. Hop 2 и выше — реселл. Каждый промежуточный сервер добавляет задержку и точку отказа.

Если у вас в логах нормальный ping, но ECM time нестабильный (то 150 мс, то 800 мс) — скорее всего, промежуточный сервер в цепочке перегружен. В OScam помогает параметр cccmaxhops = 1 в ридере: тогда карты с hop 2+ просто игнорируются.

Конфликт пакетов и priority/ignore caid

Ситуация: часть каналов одного пакета работает, другие — нет. Чаще всего это конфликт нескольких ридеров с одинаковым CAID. OScam не знает, к которому обращаться, и теряет время на попытки.

Решение — файл oscam.dvbapi и приоритеты в нём:

P: 0500:000000
I: 0604:000000

P: — Priority, этот CAID:ident используется первым. I: — Ignore, этот CAID игнорируется полностью. Если у вас два ридера с Viaccess (0500) и Nagra (1800), а конкретный канал идёт по Nagra — OScam без подсказки может сначала попробовать Viaccess, получить timeout и только потом переключиться.

Ещё один кейс: сервер отвечает connected, карты в веб-интерфейсе CCcam на порту 16001 видны, но entitlements не приходят. Проверьте группы в OScam — если ридер в group 1, а аккаунт клиента настроен на group 2, карты до клиента просто не доходят. Это чисто конфигурационная ошибка, не сетевая.

Как выбрать сервер шары: технические критерии

Большинство обзоров в сети — скрытая реклама. Здесь — только параметры, которые реально влияют на качество. Никаких названий сервисов.

Аптайм и стабильность ECM time

Нормальный сервер тв шара обеспечивает ECM time в районе 100–250 мс стабильно, включая вечерние часы пик. Если в тестовый период ECM time скачет от 150 до 900 мс — это не конфигурационная проблема, сервер просто перегружен.

Попросите статистику или тестируйте сами в разное время: 20:00–23:00 в будни — самая показательная нагрузка. Аптайм ниже 98% за месяц — повод искать другой вариант.

Локальные карты vs реселл-цепочки

Локальная карта на сервере — hop 1, минимальная задержка, нет зависимости от третьих сторон. Реселл — чужая карта через посредника. Hop 2 добавляет 50–150 мс к каждому ECM. Hop 3 и выше — это уже лотерея.

Нормальный поставщик честно указывает, local или resell. Если информации нет — смотрите на hop в OScam webif после подключения. Если везде hop 2+ — перед вами реселлер.

Поддержка нужных CAID и пакетов

Основные системы условного доступа: Viaccess (0500), Nagra (1800, 1801, 1830), Irdeto (0604, 0622), Conax (0B00), Cryptoworks (0D00). Перед подключением уточните, какие CAID реально поддерживаются и с каким hop.

В OScam после подключения ридера смотрите вкладку Entitlements — там видно список доступных карт с CAID, ident и expiry date. Если нужного CAID нет в списке, канал работать не будет вне зависимости от качества соединения.

Тестовый период и прозрачность логов

Любой нормальный сервис дает тестовую линию на 24–48 часов. Это минимум. За это время можно прогнать реальную нагрузку и посмотреть ECM time в OScam webif.

Прозрачность — ещё один маркер качества. Если поставщик может показать, какие карты локальные, какой аптайм за последний месяц, и не прячет hop — это хороший знак. Те, кто отказывается от тестового периода или даёт только 6 часов — обычно не уверены в стабильности своего сервера.

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

CCcam — проприетарный демон с простым конфигом и минимальным логированием. Хорошо работает как клиент, но беден инструментами диагностики. OScam — открытый проект, поддерживает CCcam, newcamd, CS378x и другие протоколы одновременно. Есть веб-интерфейс на порту 8888 с реальным ECM time и статусом каждого ридера. Для серверной части и диагностики фризов OScam однозначно лучше.

Какие порты использует ТВ шара?

CCcam-протокол — TCP 12000 (стандарт, диапазон 12000–12100). Веб-интерфейс CCcam — порт 16001. Newcamd — порт 15000. OScam webif — порт 8888. Все порты задаются в конфигах и должны быть открыты в firewall. Если ресивер за NAT-роутером — порты нужно пробросить (port forwarding) на IP ресивера.

Почему каналы фризят при рабочей шаре?

Чаще всего: высокий ECM time (выше 400–600 мс), большое число hops в цепочке, потери пакетов между клиентом и сервером, перегрузка сервера в прайм-тайм. Реже — неверные приоритеты CAID в oscam.dvbapi. Диагностика: смотрите лог OScam и ECM time в webif, проверяйте ping с потерями до сервера командой ping -c 100 host.

Где лежит файл CCcam.cfg?

Зависит от образа Enigma2. OpenATV и OpenPLi — обычно /usr/keys/CCcam.cfg. Старые образы Gemini — /var/keys/CCcam.cfg. Иногда /etc/CCcam.cfg. Точный путь можно найти в скрипте инициализации: grep -r CCcam /etc/init.d/. После любой правки файла нужен перезапуск демона командой killall -9 CCcam.

Как проверить, что C-line рабочая?

Откройте веб-интерфейс CCcam на порту 16001 — статус строки должен быть connected, в разделе entitlements должны появиться карты. В OScam — откройте webif на порту 8888, вкладка Readers: статус ридера connected и список карт с CAID. Если connected, но карт нет — проблема на стороне сервера или в настройке группы reader.

Что такое hop и почему он важен?

Hop — число пересылок от вашего ресивера до физической смарт-карты. Hop 1 означает прямой доступ: карта либо в вашем сервере, либо в одном шаге. Hop 2 и выше — реселл-цепочка. Каждый дополнительный hop добавляет задержку и точку отказа. При hop 3+ стабильный ECM time практически недостижим. В OScam можно ограничить принимаемые hops параметром cccmaxhops = 1 в блоке reader.

О статье

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