/

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

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

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

08.06.2026

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

Если вы занялись настройкой тв шара самостоятельно — правильно делаете. Большинство инструкций в сети дают готовую строку и говорят «вставь и смотри». Но когда что-то идёт не так (а оно обязательно пойдёт), разобраться без понимания структуры невозможно. Здесь я разберу всё по-настоящему: синтаксис конфигов, порты, логи, диагностику — без воды и без рекламы провайдеров.

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

Схема простая. Есть сервер с физической смарт-картой. Эта карта умеет расшифровывать сигнал конкретного спутникового провайдера. Когда зашифрованный канал меняет ключ шифрования (а это происходит каждые несколько секунд), ресивер посылает на сервер ECM-запрос (Entitlement Control Message). Сервер прогоняет его через карту и возвращает DCW — Descrambling Control Word, то есть текущий ключ расшифровки.

Ресивер применяет этот ключ и выдаёт чистое изображение. Вся цепочка должна уложиться в 200–400 миллисекунд — иначе пойдут фризы. EMM-запросы (Entitlement Management Message) — это отдельная история, они управляют правами карты, и их тоже нужно правильно пробрасывать.

Принцип работы протокола CCcam

CCcam — это проприетарный протокол, изначально написанный для ресиверов с Enigma2. Он работает на TCP, по умолчанию на порту 12000. Клиент подключается к серверу, авторизуется парой логин/пароль и начинает слать ECM-запросы. Сервер отвечает DCW.

Протокол относительно простой, что делает его популярным — но у него есть ограничения. Нет встроенного приоритета запросов, нет нормального управления балансировкой нагрузки. При большом количестве клиентов сервер начинает тупить, и ECM time растёт.

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

OScam — это open source, и это меняет всё. Он поддерживает десятки протоколов одновременно: CCcam, newcamd, camd35, radegast, gbox. Плюс DVBAPI для прямого взаимодействия с Linux DVB-стеком на приставке без отдельного эмулятора.

Главное преимущество OScam — детальный контроль. Можно назначить группы ридеров, настроить приоритеты, фильтровать ECM по SID и CAID, смотреть статистику в реальном времени через веб-интерфейс. CCcam для всего этого — чёрный ящик. Для сервера я бы рекомендовал OScam всегда, CCcam — только если нужен быстрый старт на клиенте.

Что нужно для запуска: ресивер, эмулятор, доступ к карте

Минимальный набор для клиента: ресивер с Enigma2 (или Android-приставка с поддержкой эмулятора), установленный CCcam или OScam, и данные для подключения — хост, порт, логин, пароль. Для сервера дополнительно нужна физическая смарт-карта в кардридере или USB-кардридер типа Phoenix.

На Enigma2-боксах (Vu+, Dreambox, GigaBlue и подобные) всё это устанавливается через плагин-менеджер или вручную через SSH. На чистом Linux — собираете из исходников или ставите бинарник под свою архитектуру.

Настройка клиента CCcam: структура конфига

Это тот раздел, где большинство инструкций провально молчат о деталях. Просто дают строку. Давайте разберём, что в ней что.

Файл CCcam.cfg и строка C-line

На Enigma2 конфиг лежит по пути /var/etc/CCcam.cfg. Реже встречается /etc/CCcam.cfg — зависит от дистрибутива. Редактировать можно по FTP (FileZilla, WinSCP) или через SSH. После правки нужен рестарт: killall -9 CCcam или через плагин.

Важный момент: если вы редактируете файл в Windows Блокноте — скорее всего сломаете его. Блокнот добавляет BOM-маркер или сохраняет в UTF-16, а CCcam ждёт чистый UTF-8 без BOM. Используйте Notepad++ с явным выбором кодировки, либо редактируйте прямо на ресивере через nano.

Синтаксис: C: host port username password

Строка C-line выглядит так:

C: myserver.example.com 12000 mylogin mypassword

По полям: C: — тип строки (Client). Дальше хост — это домен или IP сервера. Порт — обычно 12000, но может быть любым, уточняйте у администратора сервера. Логин и пароль — без пробелов, регистрозависимые.

Можно добавить параметры в конце строки: no для отключения EMM, 01 для версии протокола. Полная строка с параметрами:

C: myserver.example.com 12000 mylogin mypassword no 01

Пятый параметр — allow EMM (yes/no). Шестой — версия CCcam для handshake. Если сервер требует конкретную версию — уточняйте.

Параметры F-line и расшаривание карты

F-line — это Friend-line, используется для настройки сервера CCcam. Если вы раздаёте карту другим клиентам:

F: clientlogin clientpassword 1 0 0 0 { 0:0:1 }

Поля: логин клиента, пароль, максимальный hop (1 = только ваши карты, не пересылать чужие), allow EMM (0 = нет), allow remote cards (0 = нет), минимальный hop, и фильтр по CAID:provid:SID в фигурных скобках. Пустые скобки {} означают — раздавать всё.

Где лежат конфиги: /var/etc/ и /etc/

На Enigma2: /var/etc/CCcam.cfg — основное расположение. Логи CCcam пишет в /tmp/CCcam.log или /var/log/CCcam.log в зависимости от версии. Посмотреть активные подключения можно через telnet на порт 16001 — там веб-статус в текстовом виде.

На чистом Linux-сервере конфиг обычно в /etc/CCcam.cfg, а бинарник в /usr/local/bin/CCcam.

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

OScam сложнее CCcam, но эта сложность оправдана. Три основных файла: oscam.conf — глобальные настройки, oscam.server — описание ридеров (источников карт), oscam.user — описание клиентов. Все файлы лежат в /etc/oscam/ или /usr/local/etc/oscam/.

Структура oscam.conf и веб-интерфейс на порту 8888

Минимальный oscam.conf:

[global]
logfile = /var/log/oscam/oscam.log
maxlogsize = 1000
nice = -1

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

Секция [webif] включает браузерный интерфейс. Открываете http://IP-сервера:8888 в браузере и видите всю статистику в реальном времени: ECM time по каждому клиенту, статус ридеров, нагрузку. Это убийственно удобно для диагностики.

Параметр httpallowed — обязательно ограничьте доступ своей сетью, не оставляйте открытым на весь интернет.

Описание ридера в oscam.server

Пример ридера, подключающегося к CCcam-серверу:

[reader]
label = my_cccam_reader
protocol = cccam
device = myserver.example.com,12000
user = mylogin
password = mypassword
cccversion = 2.3.0
cccmaxhops = 1
group = 1
reconnecttimeout = 30

Поле group — ключевое. Оно связывает ридер с пользователями в oscam.user. Ридер с group = 1 доступен только клиентам, у которых в oscam.user тоже указана group = 1. Если забыть согласовать группы — карта работает локально, но клиентам не раздаётся. Это одна из самых частых ошибок.

Параметр cccversion — версия CCcam для handshake. Если сервер требует конкретную — укажите. Если не знаете — попробуйте 2.3.0, он принимается большинством серверов.

Пользователи и группы в oscam.user

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

[account]
user = client1
pwd = clientpassword
group = 1
au = 1
allowedprotocols = cccam,newcamd
maxconnections = 1

Параметр au = 1 разрешает EMM для этого клиента. maxconnections = 1 — один активный сеанс, полезно против шаринга доступа. allowedprotocols — перечисляете, по каким протоколам клиент может подключаться.

Связка CCcam и OScam через cccam protocol

Это работает в обе стороны. OScam как клиент к CCcam-серверу — через ридер с protocol = cccam, как показано выше. CCcam как клиент к OScam-серверу — OScam должен слушать на порту для CCcam-клиентов.

В oscam.conf добавьте секцию:

[cccam]
port = 12001
version = 2.3.0
reshare = 1

Теперь CCcam-клиенты могут подключаться к OScam на порт 12001 обычной C-line. OScam будет обслуживать их через свои ридеры. Такая связка удобна: OScam управляет физическими картами, а старые CCcam-клиенты подключаются к нему без изменений конфига.

Порты, протоколы и проброс через роутер

Это тема, которую все игнорируют — и потом удивляются, почему клиенты не могут подключиться.

Типовые порты: CCcam 12000, newcamd, mgcamd

Стандартные порты по протоколам:

  • CCcam: 12000 (шаринг), 16001 (веб-статус)
  • Newcamd: 15000 (стандартный, но может быть любым)
  • OScam webif: 8888
  • Camd35/cs357x: 35354
  • Radegast: 8000

Все эти значения можно менять в конфигах. Если на сервере уже запущено несколько эмуляторов — следите, чтобы порты не конфликтовали. CCcam на 12000 и OScam тоже на 12000 — один из них упадёт при старте.

Проброс портов (port forwarding) на сервере

Если сервер стоит дома за роутером — клиенты из интернета не достучатся напрямую. Нужен port forwarding в настройках роутера: входящий TCP на порт 12000 пробрасывается на внутренний IP сервера.

На iptables это выглядит так:

iptables -A INPUT -p tcp --dport 12000 -j ACCEPT

Но если провайдер выдаёт вам «серый» IP (частный адрес типа 10.x.x.x или 100.64.x.x) — проброс портов не поможет, вы за двойным NAT. В таком случае нужен либо VPS с белым IP и туннель (WireGuard, OpenVPN), либо переход к провайдеру, который даёт реальный IP.

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

Самый быстрый способ проверить, что сервер доступен снаружи:

telnet your.server.com 12000

Если соединение устанавливается — порт открыт. Если Connection refused — порт закрыт или сервис не запущен. Если висит и не отвечает — скорее всего файрвол блокирует пакеты.

Для CCcam на порту 16001 можно проверить статус через браузер: http://your.server.com:16001 — там текстовая страница с подключёнными клиентами и статистикой карт.

Динамический IP и DDNS

Домашний IP у большинства провайдеров меняется при переподключении. Клиенты прописали ваш IP в C-line — и через день он уже другой. Решение: DDNS-сервис типа DuckDNS, No-IP, или тот, что встроен в ваш роутер.

Настраиваете DDNS-клиент на роутере (обновляет запись автоматически при смене IP) и в C-line прописываете домен, а не IP. При смене IP домен обновится за 1–5 минут, и клиенты переподключатся автоматически.

Решение типичных ошибок и нестабильного сигнала

Когда тв шара настроена, но изображение нестабильное — проблема почти всегда в ECM time или в соединении. Давайте по порядку.

Фризы и заикания: freeze на сложных каналах

Фриз — это когда ресивер не успел получить новый DCW до того, как сервер сменил ключ. У большинства провайдеров смена ключа происходит каждые 10 секунд (crypto period). У некоторых HD-каналов — каждые 3–5 секунд. При ECM time больше 500 мс начинают появляться кратковременные зависания.

На SD-каналах это незаметно — crypto period длиннее. На HD — уже проблема. Поэтому классическая картина: SD идёт нормально, HD фризит. Это не проблема сигнала спутника, это исключительно проблема задержки в цепочке шаринга.

Ошибка connection failed и неверный C-line

Если CCcam вообще не подключается — смотрите лог. На Enigma2:

tail -f /tmp/CCcam.log

Типичные причины: неправильный хост (опечатка, не работает DNS-резолвинг), неверный порт, неправильные логин/пароль, скрытые символы в C-line после редактирования в Windows. Особенно коварна ситуация с кодировкой: файл выглядит правильно в редакторе, но содержит непечатные символы, и CCcam не может распарсить строку.

Проверка: откройте файл через SSH командой cat -A /var/etc/CCcam.cfg — если в конце строк видите ^M, это Windows-переносы строк (CR+LF вместо LF). Исправить: dos2unix /var/etc/CCcam.cfg.

Высокий ECM time и его причины

В OScam ECM time видно прямо в веб-интерфейсе на 8888 — по каждому клиенту и каждому запросу. Нормальный показатель: до 300 мс. Приемлемый: до 500 мс. Выше — начинаются проблемы.

Причины высокого ECM time:

  • Большой географический пинг до сервера (проверить: ping your.server.com)
  • Перегруженный сервер — слишком много клиентов на одну карту
  • Слабый канал связи с потерями пакетов
  • Сервер сам подключён через шару с плохим ECM time — и добавляет свою задержку

В логах OScam ищите строки вида ECM System: IRDETO, CAID: 0622, ECM time: 847ms — это то, что нужно снижать.

Проблема с HD-каналами и пиксельация

Пиксельация (блоки, артефакты) на HD-каналах при нормальном сигнале спутника — почти гарантированно это ECM time. Ещё один вариант: сервер раздаёт контрольное слово с задержкой из-за того, что сам получает его через несколько hop'ов (cascading).

В CCcam это можно проверить через порт 16001 — там показан hop count для каждой карты. Hop 0 — локальная карта. Hop 1 — карта с прямого сервера. Hop 2+ — карта через посредника. С каждым дополнительным hop'ом задержка растёт примерно на 50–150 мс. Для HD-каналов с быстрой сменой ключа hop 2 уже критичен.

Чеклист диагностики по логам:

  1. Смотрим ECM time в OScam webif или tail -f /var/log/oscam/oscam.log | grep ECM
  2. Проверяем пинг до сервера — должен быть стабильным, без потерь
  3. Смотрим hop count в CCcam статусе на порту 16001
  4. Проверяем загрузку процессора на сервере: top или htop
  5. Если всё в норме, но фризы есть — проблема на стороне сервера с картой, смена провайдера шаринга

Где находится файл CCcam.cfg на ресивере Enigma2?

Основной путь — /var/etc/CCcam.cfg. На некоторых прошивках может быть /etc/CCcam.cfg. Редактируйте по FTP через WinSCP или FileZilla, либо напрямую через SSH командой nano /var/etc/CCcam.cfg. После любых правок нужен рестарт демона: killall -9 CCcam, и он запустится снова автоматически. После обновления прошивки приставки проверьте путь заново — он может сброситься.

Почему каналы фризят, хотя подключение есть?

Подключение есть — это одно, а скорость получения DCW — другое. Смотрите ECM time: в OScam через веб-интерфейс на порту 8888, в CCcam через порт 16001. Если ECM time выше 500 мс — ищите причину: большой пинг до сервера, перегрузка, слишком много hop'ов в цепочке шаринга. HD-каналы особенно чувствительны из-за быстрой смены ключей — там и 400 мс может давать фризы.

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

OScam выигрывает по всем параметрам, кроме простоты первоначальной настройки. Он поддерживает одновременно несколько протоколов, умеет в DVBAPI без отдельного эмулятора, даёт детальный веб-интерфейс с ECM-статистикой в реальном времени, поддерживает гибкое управление группами и приоритетами ридеров. CCcam проще настроить за пять минут — но как только нужна диагностика или тонкая настройка, его чёрный ящик начинает раздражать.

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

Порт 12000 — стандартный для шаринга по протоколу CCcam. Порт 16001 — веб-статус, текстовая страница с информацией о подключённых клиентах и картах. Оба значения задаются в конфигурационном файле сервера и могут быть изменены — уточняйте у провайдера шаринга, какой порт использует именно его сервер.

Как проверить, что сервер доступен из интернета?

Самый простой способ: telnet your.server.com 12000 с внешней машины (не из той же локальной сети). Если соединение открывается — порт доступен. Если нет — проверьте проброс порта на роутере, правила iptables, и убедитесь, что у вас белый IP, а не серый от провайдера. При динамическом IP настройте DDNS и в C-line прописывайте домен, а не IP-адрес.

Можно ли запустить OScam и CCcam одновременно?

Да, и это рабочая схема. OScam подключается к CCcam-серверу через ридер с protocol = cccam, получает карты оттуда и раздаёт их своим клиентам. Либо наоборот: OScam сам слушает на порту для CCcam-клиентов (секция [cccam] в oscam.conf), и к нему подключаются устройства с CCcam-конфигами. Главное — убедитесь, что оба процесса не заняли один и тот же порт, иначе один из них не запустится.

О статье

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