/

Спутниковое ТВ через CCcam: полное руководство 2026

Главная Статьи Спутниковое ТВ через CCcam: полное руководство 2026

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

09.05.2026

Спутниковое ТВ через CCcam: полное руководство 2026

Принять зашифрованные пакеты спутникового ТВ через ресивер с поддержкой CCcam или OScam — задача решаемая даже без физической смарт-карты. Весь секрет в том, что сигнал satellite satellite satellite идёт от транспондера к вашей тарелке в зашифрованном виде, и задача ресивера — получить ключи расшифровки от внешнего сервера по TCP. Этот материал — технический разбор всей цепочки с реальными конфигами, командами диагностики и рабочими watchdog-скриптами.

Как работает связка тарелка → ресивер → cardsharing-сервер

Спутниковое вещание использует систему условного доступа (CAS). Провайдер шифрует видеопоток алгоритмом CSA, и без актуального control word (DCW) вы видите чёрный экран или рябь. DCW меняется каждые 10 секунд у большинства провайдеров — это ключевая цифра для понимания почему возникают freeze.

Путь сигнала: транспондер, DVB-S2, scrambled поток

Сигнал летит от геостационарного спутника (~35 786 км над экватором) на вашу тарелку. LNB конвертирует частоту, ресивер демодулирует DVB-S2 поток. Внутри потока — транспортные пакеты MPEG-TS, среди которых зашифрованные видео/аудио пакеты и служебные пакеты ECM/EMM.

Роль ECM/EMM пакетов и DCW-ключей

ECM (Entitlement Control Message) — зашифрованный пакет, содержащий DCW. Ресивер сам расшифровать ECM не умеет — для этого нужна смарт-карта или внешний sharing-сервер. EMM (Entitlement Management Message) обновляет права подписки на физической карте — при cardsharing они вас напрямую не касаются.

Ресивер извлекает ECM из потока и отправляет его на сервер по TCP. Сервер, у которого есть реальная карта, расшифровывает ECM, извлекает DCW и возвращает его ресиверу. Ресивер применяет DCW — и картинка появляется. Весь цикл должен уложиться менее чем за 10 секунд, иначе — freeze.

Почему ресиверу нужен внешний sharing-сервер

Без физической карты ресивер не знает как расшифровать ECM. Sharing-сервер выступает посредником: у него есть настоящая подписка, он принимает ECM запросы от клиентов и раздаёт DCW. Трафик минимальный — около 1–2 KB/s на канал.

Разница между локальной картой, CAM-модулем и протоколом CCcam

Локальная карта — физическая смарт-карта в слоте ресивера. CAM-модуль — PCMCIA-адаптер с картой или эмулятором для старых ресиверов без Linux. CCcam/OScam — программные клиенты на ресиверах с Enigma2, которые соединяются с удалённым сервером по сети. Старый ресивер без Linux поддерживает только CAM, sharing на нём невозможен напрямую.

Подготовка ресивера: прошивка, плагины, настройки спутников

Прежде чем заниматься конфигами — убедитесь что у вас нормальный сигнал. SNR ниже 10 dB означает что даже идеальный сервер не поможет: ресивер просто не будет стабильно принимать транспортный поток.

Выбор образа: OpenATV, OpenPLi, OpenViX для Enigma2

OpenATV — самый популярный, большой репозиторий плагинов, хорошо поддерживает softcam. OpenPLi — стабильнее, меньше лишнего, предпочтительна для серьёзной работы. OpenViX — хороший выбор для ресиверов Vu+. Версию выбирайте последнюю стабильную под ваше железо — не экспериментируйте с нестабильными билдами на основном ресивере.

Установка CCcam-эмулятора через ipk пакет

На Enigma2 с доступом к сети:

opkg update
opkg install enigma2-plugin-softcams-cccam

Конфиг окажется в /etc/tuxbox/cccam.cfg или /etc/CCcam.cfg — зависит от сборки. Проверить:

find /etc -name "cccam.cfg" 2>/dev/null

Установка OScam через feed репозиторий

opkg update
opkg install enigma2-plugin-softcams-oscam

Конфиги — в /etc/oscam/. Там будут файлы oscam.conf, oscam.server, oscam.user. После установки запуск:

/usr/bin/oscam -b -d 0 -c /etc/oscam &

Настройка satellites.xml и сканирование транспондеров

Актуальный satellites.xml скачиваете с lyngsat или используете встроенный в образ. Под Enigma2 он лежит в /usr/share/enigma2/satellites.xml. После обновления файла — полный пересканировать транспондеры через меню ресивера, иначе новые каналы не появятся.

Проверка SNR, BER, уровня сигнала перед sharing

В меню Enigma2 — Signal / Tuner Info. Нормальные значения для работы: Signal Quality ≥ 70%, SNR ≥ 12 dB, BER = 0 или близко к нулю. Если BER скачет — проблема в установке тарелки или в кабеле, не в sharing-сервере. Чините антенну до того как идти дальше.

Конфигурация CCcam.cfg: построчный разбор

CCcam.cfg — простой текстовый файл. Вот минимальный рабочий пример:

# Подключение к серверу
C: yourserver.example 12000 yourlogin yourpassword

# Порт на котором CCcam слушает входящие подключения (если раздаёте)
SERVER LISTEN PORT: 12000
WEBINFO LISTEN PORT: 16001

# Таймауты и параметры
ZAPTIMEOUT: 3000
DISABLEEMMS: yes
ALLOW TELNETINFO: yes
ACCOUNT: localuser localpass 0 { 0:0:0 }

Параметр C: line — host, port, username, password

Строка C: — это подключение к удалённому серверу. C: host port user pass. После пароля можно добавить дополнительный параметр hop — обычно не нужен, CCcam определяет его автоматически. Несколько строк C: — это failover: если первый сервер недоступен, CCcam пробует следующий.

Параметры F: line для отдачи карты

Если у вас есть физическая карта и вы хотите её раздавать:

F: clientlogin clientpassword 1 0 0 0

Первый числовой параметр — максимальное количество одновременных подключений от этого клиента. Держите его минимальным.

SERVER LISTEN PORT и WEBINFO LISTEN PORT

12000 — стандартный порт CCcam. Можно изменить на любой в диапазоне 1024–65535 — полезно если провайдер блокирует 12000. WEBINFO LISTEN PORT открывает простой веб-интерфейс для мониторинга на указанном порту.

DISABLEEMMS, ALLOW TELNETINFO, ZAPTIMEOUT

DISABLEEMMS: yes — отключает обработку EMM. Рекомендую оставить yes если у вас нет физической карты. ZAPTIMEOUT: 3000 — 3 секунды ожидания ключа перед тем как показать чёрный экран. Значение ниже 2000 ms приводит к ложным ошибкам при высокой нагрузке на сервер.

Перезапуск сервиса и просмотр /tmp/cccam.log

# Перезапуск
killall CCcam && sleep 2 && /usr/bin/CCcam

# Лог в реальном времени
tail -f /tmp/cccam.log

В логе ищите строки connected to и got cw. Если видите только trying to connect без успеха — проверьте порт и учётные данные.

Конфигурация OScam: oscam.conf, oscam.server, oscam.user

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

Секция [global] и nice уровень процесса

Файл /etc/oscam/oscam.conf:

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

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

nice = -10 поднимает приоритет процесса OScam — это напрямую влияет на ECM time. На загруженном ресивере с несколькими тюнерами это важно.

Файл oscam.server: protocol, device, caid, ident

[reader]
label = myserver
protocol = cccam
device = yourserver.example,12000
user = yourlogin
password = yourpassword
caid = 0500,0B00
ident = 0500:032830,0B00:000000
group = 1
reconnecttimeout = 30

protocol = cccam означает что OScam подключается к CCcam-серверу. caid — фильтр: OScam будет запрашивать только эти системы. reconnecttimeout = 30 — переподключение через 30 секунд при обрыве.

Файл oscam.user: caid фильтры и betatunnel

[account]
user = localenigma
pwd = localpassword
group = 1
caid = 0500,0B00
betatunnel = 1833.0023:0500

Здесь описывается локальный клиент — Enigma2 подключается к OScam как к локальному серверу. betatunnel нужен для конвертации CAID — например когда провайдер изменил идентификатор, а устаревший ресивер не знает новый.

Web-интерфейс на порту 8888 для мониторинга

Открываете браузер: http://адрес_ресивера:8888. В разделе Readers видите статус подключений и — самое важное — ECM time. Норма: 200–500 ms. Значения 500–800 ms — приемлемо, но на границе. Выше 1000 ms — будут freeze. Выше 2000 ms — канал практически непригоден для просмотра.

Логирование в /var/log/oscam.log и ротация

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

Без ротации лог съест всю память на ресивере за несколько дней. maxlogsize = 1000 в oscam.conf ограничивает файл 1 МБ — этого достаточно.

Критерии выбора cardsharing-сервера: на что смотреть

Здесь нет правильного ответа без тестирования. Но есть критерии, которые отсеивают плохие варианты до покупки подписки.

Локальные карты vs реселлерские линии (hop 1 vs hop 2+)

Hop — это количество звеньев в цепочке от вашего ресивера до реальной смарт-карты. Hop=1: ECM от вас идёт напрямую к карте. Ожидаемый ECM time: 200–400 ms. Hop=2: между вами и картой ещё один сервер. ECM time: 600–900 ms. Hop=3 и выше: часто нестабильно, freeze на каналах с быстрой сменой ключей. Спрашивайте у провайдера прямо: "это ваши собственные карты или реселлерская линия?"

Аптайм сервера и резервирование линий

Серьёзный сервер публикует статистику аптайма. Приемлемо — 99%+ за последний месяц. Важно: у сервера должно быть резервирование — минимум два независимых канала до интернета. Спросите что происходит при падении основного канала. Если ответ "ничего, ждите" — это не ваш вариант.

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

CAID (Conditional Access ID) — четырёхзначный шестнадцатеричный идентификатор системы шифрования. 0500 — Viaccess, 0B00 — Conax, 0622 — Irdeto, 0E00 — PowerVu, 0919 — Videoguard (Sky). Узнать какой CAID у нужного вам канала — смотрите lyngsat.com или логи ресивера при попытке открыть зашифрованный канал. Сервер должен явно подтвердить поддержку нужного CAID и IDENT.

Стабильность ECM time под нагрузкой

ECM time 300 ms в 2 часа ночи и 2000 ms в прайм-тайм — это разные серверы по факту. Тестируйте в пятницу вечером и в воскресенье днём. Если сервер продаёт 500 одновременных подключений с одной картой — ждите деградацию в часы пик. Попросите тестовый доступ именно на эти периоды.

Тестовый период и условия возврата

Адекватный тестовый период — 24–48 часов. За это время вы увидите реальное поведение в разное время суток. Если тест не предлагается или предлагается "час" — это красный флаг. Покупайте минимальный период (1 месяц) до проверки стабильности.

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

Большинство проблем с satellite satellite satellite приёмом через CCcam/OScam диагностируются за 10 минут если знать что смотреть.

Чёрный экран при переключении канала

Первым делом — проверить что OScam вообще видит запрос. В веб-интерфейсе (порт 8888) открываете раздел Readers. Если запрос пришёл но статус "not found" — сервер не имеет нужного CAID. Если запрос вообще не появляется — проблема на стороне Enigma2, softcam не запущен или подключён неверно. Также проверьте фильтры в oscam.user: неверно указанный caid заблокирует запросы ещё до отправки на сервер.

Заикания и freeze раз в 10 секунд (проблема с ECM)

Классика. Причина почти всегда — ECM time выше 800–900 ms. DCW меняется каждые 10 секунд, ресивер не успевает получить новый ключ до истечения старого. Диагностика:

# Смотрим текущий ECM time в логе
grep "ECM" /var/log/oscam.log | tail -20

# Проверяем соединение с сервером
netstat -an | grep 12000

Если ECM time в норме — проверьте SNR: нестабильный сигнал тоже даёт freeze, но другой характер (помехи, пиксели, а не ровные зависания каждые 10s).

Сообщение 'No signal' или 'Scrambled'

"No signal" — это физическая проблема: кабель, LNB, тарелка. К sharing отношения не имеет. "Scrambled" или "Service unavailable" при наличии сигнала — softcam не запущен, либо подключение к серверу не установлено. Проверьте:

ps aux | grep -i "oscam\|cccam"

Если процесс есть — смотрите лог. Если нет — запускайте softcam.

Сервер подключён но каналы не открываются

Три причины. Первая — сервер не имеет подписки на нужный пакет (CAID есть, но прав нет). Вторая — ваш oscam.user фильтрует этот CAID. Третья — истёк срок подписки на сервере. В веб-интерфейсе OScam смотрите раздел "Users" — должна быть активность. В разделе "Readers" — зелёная иконка и список обслуживаемых CAID.

Высокий ECM time и как его снизить

Последовательно: поднять nice приоритет OScam (nice = -10 в oscam.conf), включить кэширование ECM (cachex — P2P обмен ключами между OScam-серверами), попробовать другую линию с меньшим hop, проверить пинг до сервера:

ping -c 20 yourserver.example | tail -5

Пинг выше 100 ms уже создаёт риски. Выше 200 ms — почти гарантированные проблемы на каналах с быстрой сменой ключей. Если используете 4G/LTE — jitter там выше, нужно увеличить буфер в OScam (ecmcachesize = 500).

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

Система без мониторинга и автоматического восстановления — это не система, а везение. Особенно если CCcam периодически падает после нескольких дней работы (это известная проблема некоторых версий).

Использование VPN для шифрования трафика sharing

Трафик CCcam/OScam идёт в открытом виде по TCP. Если провайдер блокирует нестандартные порты — VPN-туннель решает проблему и шифрует трафик. WireGuard предпочтительнее OpenVPN из-за меньшей задержки. На Enigma2 ставится через opkg: opkg install wireguard-tools. Альтернатива — попробовать порт 443 (HTTPS), который блокируют реже всего.

iptables правила для ограничения доступа к серверным портам

Если вы раздаёте карту (F: line), закройте порт для всех кроме известных клиентов:

# Разрешить доступ только с конкретного IP
iptables -A INPUT -p tcp --dport 12000 -s 1.2.3.4 -j ACCEPT
# Заблокировать всех остальных
iptables -A INPUT -p tcp --dport 12000 -j DROP

Ресивер за двойным NAT отдавать F: line не сможет — входящие соединения не пройдут. В этом случае вы только клиент, и iptables на ресивере не нужны.

Watchdog-скрипт для автоперезапуска CCcam

#!/bin/bash
# /usr/local/bin/cccam-watchdog.sh
while true; do
    if ! pgrep -x CCcam > /dev/null; then
        logger "CCcam watchdog: process not found, restarting"
        /usr/bin/CCcam &
    fi
    sleep 60
done

Добавьте в автозапуск через /etc/init.d/ или добавьте строку в /etc/crontab:

*/1 * * * * root pgrep -x CCcam || /usr/bin/CCcam

Резервный сервер и failover в конфиге

CCcam поддерживает несколько строк C: — при недоступности первого сервера автоматически переключается на следующий. В OScam аналогично: несколько секций [reader] с разными серверами, параметр group определяет порядок приоритетов. Держите хотя бы один резервный сервер с другим физическим расположением.

Мониторинг через MRTG или простой bash-скрипт

#!/bin/bash
# Простая проверка: сервер отвечает на порт?
SERVER="yourserver.example"
PORT=12000
if ! nc -z -w3 $SERVER $PORT 2>/dev/null; then
    logger "ALERT: CCcam server $SERVER:$PORT unreachable"
    # Здесь можно добавить отправку уведомления
fi

Запускайте через cron каждые 5 минут. Для более глубокого мониторинга — OScam веб-интерфейс отдаёт данные в XML, которые можно парсить и строить графики в MRTG или Grafana.

Граничные случаи, о которых обычно не пишут

Несколько ситуаций заслуживают отдельного упоминания, потому что в них система ведёт себя неочевидно. Конфигурация satellite satellite satellite приёма через sharing имеет свои подводные камни в нестандартных условиях.

PowerVu (CAID 0E00) — отдельная история. Этот стандарт используется на некоторых коммерческих и государственных спутниковых пакетах. OScam может подключиться к серверу, видеть CAID, но каналы не откроются — потому что PowerVu требует дополнительных ключей в файле oscam.keys. Обычный cardsharing здесь не работает.

При нескольких тюнерах и одновременном просмотре разных каналов с разными CAID — каждый канал генерирует отдельный поток ECM-запросов. Убедитесь что ваша подписка на сервере поддерживает нужное количество одновременных потоков, и что oscam.user не ограничивает параллельные запросы.

Спутники с более частой сменой ключей (например, некоторые пакеты меняют DCW каждые 3–5 секунд) требуют сервера с задержкой не выше 150–200 ms. Иначе никакие настройки буфера не спасут.

Какая минимальная скорость интернета нужна для cardsharing?

Сам sharing-трафик смехотворно мал — около 1–2 KB/s на активный канал. Скорость подключения здесь вообще не фактор. Главное — стабильность и пинг до сервера. Меньше 50 ms — отлично, до 100 ms — нормально, выше 150 ms — начинаются риски на каналах с быстрой сменой ключей. Скорость имеет значение только если вы параллельно смотрите IPTV-потоки через тот же канал.

В чём разница между CCcam и OScam протоколами?

CCcam — проприетарный протокол, простая реализация клиент-сервер. Работает, но разработка давно заброшена. OScam — открытый, активно развивается, поддерживает десятки протоколов: cccam, newcamd, gbox, cs378x, radegast. Имеет веб-интерфейс с реальной статистикой ECM time, гибкие фильтры по CAID и IDENT, кэширование, P2P обмен ключами (CacheEx). Если есть выбор — OScam однозначно лучше. CCcam используют в основном когда сервер отдаёт только CCcam-линии и нет других вариантов.

Почему каналы freeze каждые 10 секунд несмотря на хороший сигнал?

Это классический симптом проблем с ECM, не с антенной. DVB-S2 сигнал здесь ни при чём. Провайдер меняет DCW каждые 10 секунд, и если ресивер не успевает получить новый ключ — картинка замирает ровно на длительность одного crypto-периода. Диагностика: открыть OScam webif, раздел Readers, посмотреть ECM time. Если выше 800 ms — искать другую линию с меньшим hop или сервер с меньшей нагрузкой. Также проверить nice-приоритет OScam: renice -10 $(pgrep oscam).

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

Технически — можно, если настроить локальный OScam как прокси. Первый ресивер запускает OScam, подключённый к внешнему серверу. Второй ресивер подключается к OScam первого через протокол cs378x или newcamd. OScam обрабатывает ECM-запросы с обоих ресиверов и пересылает их на сервер. Но: убедитесь что условия вашей подписки разрешают несколько одновременных подключений. Некоторые серверы ограничивают одним потоком на аккаунт — второй ресивер просто не откроет каналы.

Какой порт открывать в роутере для CCcam-сервера?

Если вы только клиент (строки C: без F:) — пробрасывать порт вообще не нужно. Исходящие TCP-соединения работают через NAT без дополнительной настройки. Проброс портов нужен только если вы сами раздаёте карту через F: line и хотите принимать входящие подключения. В этом случае пробрасываете TCP-порт 12000 (или любой другой из SERVER LISTEN PORT) на IP ресивера в локальной сети. Ресивер за двойным NAT (например, роутер провайдера + ваш роутер) без проброса на обоих уровнях отдавать карту не сможет.

Что такое CAID и как узнать нужный для моего спутника?

CAID — четыре hex-символа, идентифицирующие систему условного доступа. Например: 0500 = Viaccess, 0B00 = Conax, 0622 = Irdeto 2, 0919 = NDS Videoguard (используется в Sky), 0E00 = PowerVu, 0D00 = CryptoWorks. Узнать CAID нужного канала: смотрите lyngsat.com (там указана CAS для каждого транспондера) или просто попробуйте открыть зашифрованный канал на ресивере — в логе OScam появится строка с CAID и IDENT того пакета, который ресивер пытается расшифровать.

Почему сервер показывает 'connected' но каналы остаются зашифрованными?

Три варианта. Первый — сервер подключён, но у него нет подписки на нужный CAID: соединение есть, а прав нет. Проверить в OScam webif раздел Readers: зелёная иконка означает соединение, список CAID показывает что реально обслуживается. Второй — фильтры в oscam.user для вашего локального клиента блокируют этот CAID: пропишите нужные CAID явно или уберите ограничение совсем. Третий — истёк срок подписки на сервере. В этом случае сервер отвечает на handshake но не обрабатывает ECM-запросы — это видно в логе как запросы без ответа.

О статье

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