Шаринг через интернет без карты: настройка CCcam/OScam
Шаринг через интернет без карты — это когда ваш ресивер не имеет локальной смарт-карты, но всё равно открывает закодированные спутниковые каналы. Ключи дешифрования приходят по сети с удалённого сервера за миллисекунды. Технически это работает стабильно, если правильно настроить клиент. Именно о настройке и пойдёт речь.
Что такое шаринг без карты и как он работает
Когда спутниковый ресивер принимает закодированный поток, он не может его расшифровать без ключа. Этот ключ называется Control Word (CW) или DCW (Decryption Control Word) — 8 байт, которые меняются каждые несколько секунд. Без актуального CW на экране чёрная картинка.
Чтобы получить CW, ресивер формирует ECM-запрос (Entitlement Control Message) — зашифрованное сообщение, которое содержит информацию о канале и провайдере. При локальной карте ресивер отправляет ECM прямо в кардридер. При шаринге — по сети на удалённый сервер.
Принцип передачи ключей по сети
Клиентский ресивер отправляет ECM-пакет на шаринг-сервер через TCP-соединение. Сервер, у которого есть реальная смарт-карта, пропускает ECM через неё, получает расшифрованный CW и отправляет его обратно клиенту. Весь цикл занимает от 50 до 400 миллисекунд — именно это и называется ECM time.
EMM (Entitlement Management Message) — это другое. EMM-сообщения обновляют права подписки на карте. При шаринге EMM обрабатывается на стороне сервера, клиент с ними не работает напрямую.
Роль сервера и клиента (ECM/EMM обмен)
Сервер — это машина с картридером и реальной картой, которая слушает входящие соединения по протоколу шаринга. Клиент — ваш ресивер с установленным софткамом (CCcam, OScam), который инициирует соединение и запрашивает ключи по мере необходимости.
Важный момент: один сервер может обслуживать несколько клиентов одновременно. Это решаринг. Слишком глубокий каскад решаринга увеличивает ECM time и снижает надёжность.
Чем шаринг без карты отличается от локальной карты
При локальной карте всё происходит внутри ресивера: ECM идёт в кардридер, ответ приходит мгновенно, нет зависимости от интернета. При шаринге добавляется сетевая задержка и зависимость от доступности сервера. Зато карту покупать не нужно.
«Без карты» здесь означает — без карты у вас. Карта физически существует, просто на сервере провайдера.
Что нужно для подключения: оборудование и канал
Минимальные требования: ресивер с поддержкой Enigma2 или Linux-прошивки с возможностью установки софткама, стабильный интернет от 1 Мбит/с и пинг до сервера желательно ниже 150 мс. Симметричность канала не нужна — трафик минимальный, несколько килобит в секунду.
Протоколы шаринга: CCcam, OScam и newcamd
Шаринг через интернет без карты реализуется через несколько протоколов. Они несовместимы между собой, поэтому клиент и сервер должны «говорить» на одном языке.
Протокол CCcam (порт по умолчанию и особенности)
CCcam — исторически самый распространённый протокол шаринга. Работает по TCP, порт задаётся провайдером — единого стандарта нет, но чаще всего это диапазон 10000–20000. Сам CCcam давно не обновляется, последние версии датируются примерно 2012–2013 годом, но это не мешает ему работать.
У CCcam есть версионность протокола (cccversion). Если клиент и сервер используют несовместимые версии, соединение либо не устанавливается, либо даёт странные ошибки. Об этом — ниже.
Протокол newcamd
newcamd — более старый протокол с собственным форматом аутентификации. Его особенность — 14-байтный DES-ключ, который нужно прописать в конфиге наряду с логином и паролем. Провайдеры, работающие через newcamd, обычно выдают этот ключ вместе с данными доступа в виде строки вроде 0102030405060708091011121314.
OScam как универсальный эмулятор
OScam — это современный многопротокольный софткам с открытым исходным кодом. Он умеет работать одновременно как CCcam-клиент, newcamd-клиент, camd35, cs378x и ещё несколько протоколов. Можно прописать несколько серверов разных протоколов в один конфиг и настроить приоритеты и fallback.
Для Enigma2 актуален пакет oscam-emu, который добавляет поддержку эмуляции ключей SoftCam.Key. Конфиги хранятся отдельно от бинарника, что удобно при обновлениях.
Какой протокол выбрать под свой ресивер
Если сервер отдаёт только CCcam — берите CCcam или OScam с протоколом cccam. Если newcamd — OScam с параметром protocol = newcamd и 14-байтным ключом. OScam предпочтительнее в любом случае: он активно развивается, имеет веб-интерфейс для мониторинга и детальные логи.
На старых ресиверах с проприетарной прошивкой (не Enigma2) вариант может быть один — встроенная поддержка CCcam в прошивке через внешний кардридер. Там OScam не установишь.
Настройка клиента CCcam: файл CCcam.cfg
Файл конфигурации CCcam — текстовый, один файл на всё. Строка подключения к серверу выглядит так:
C: hostname port username password no { 0 0 0 0:0 }
Путь к файлу: /etc/CCcam.cfg или /var/etc/CCcam.cfg
Путь зависит от образа прошивки Enigma2. В большинстве образов это /etc/CCcam.cfg. В OpenATV и некоторых других — /var/etc/CCcam.cfg. Встречается и /usr/keys/CCcam.cfg. Если не знаете, где именно, найти файл можно командой:
find / -name CCcam.cfg 2>/dev/null
Строка C: line — разбор параметров
Разберём каждое поле:
C:— тип строки, обозначает подключение к внешнему CCcam-серверу (C = Client)hostname— доменное имя или IP-адрес сервераport— TCP-порт, который выдал провайдер (например, 12000)username— логин, чувствителен к региструpassword— пароль, также чувствителен к региструno— разрешать ли решаринг полученных ключей другим клиентам.no— запретить,yes— разрешить. Почти всегда ставитьno{ 0 0 0 0:0 }— блок управления решарингом: максимальная глубина, hop count и фильтры по caid. Нули означают отсутствие ограничений
Параметры hostname, port, username, password
Hostname может быть как IP-адресом (192.0.2.10), так и доменным именем (myserver.example.com). Доменные имена предпочтительнее — IP сервера могут меняться, а домен остаётся. Если DNS не работает на ресивере, можно прописать IP в /etc/hosts.
Пример рабочей строки:
C: myserver.example.com 12000 mylogin mypassword no { 0 0 0 0:0 }
Перезапуск демона и проверка статуса
После изменения конфига нужно перезапустить CCcam:
/etc/init.d/softcam restart
Или, если init-скрипт не работает:
killall -9 CCcam && sleep 2 && CCcam
Веб-интерфейс CCcam доступен на порту 16001, если он включён в конфиге строкой WEBINFO LISTEN PORT: 16001. Открываете в браузере http://IP-ресивера:16001 и видите статус подключения, список caid и ECM time.
Настройка клиента OScam: oscam.server и oscam.conf
OScam хранит настройки в нескольких файлах. Основные три: oscam.conf (глобальные настройки), oscam.server (серверы/ридеры) и oscam.user (локальные пользователи, если вы раздаёте ключи дальше).
Структура файлов: oscam.conf, oscam.server, oscam.user
Пути конфигов на Enigma2: чаще всего /etc/tuxbox/config/oscam/ или /var/keys/. На некоторых образах — /etc/oscam/. Проверить:
find / -name oscam.conf 2>/dev/null
В oscam.conf обязательно задать раздел [global] с уровнем логирования и раздел [webif] для веб-интерфейса:
[global]
logfile = /tmp/oscam.log
nice = -1
[webif]
httpport = 8888
httpuser = admin
httppwd = admin
Секция [reader] для подключения к серверу
Каждый удалённый сервер описывается блоком в oscam.server. Для CCcam-сервера:
[reader]
label = cccam_server
protocol = cccam
device = myserver.example.com,12000
user = mylogin
password = mypassword
group = 1
cccversion = 2.3.0
cccmaxhops = 0
cccversion — это версия протокола CCcam, которую «представляется» OScam серверу. Если сервер требует конкретную версию, это надо уточнить у провайдера. Несоответствие версий — частая причина статуса OFFLINE.
Параметры protocol, device, key для newcamd
Для newcamd-сервера конфиг другой — обязателен 14-байтный ключ:
[reader]
label = newcamd_server
protocol = newcamd
device = myserver.example.com,15000
key = 0102030405060708091011121314
user = mylogin
password = mypassword
group = 1
Ключ (key) выдаётся провайдером вместе с данными доступа. Это не пароль — это криптографический ключ для DES-шифрования сессии. Если прописать его неверно, соединение не установится, причём ошибка в логах будет не очевидной.
Проверка через веб-интерфейс OScam (httpport)
Открываете браузер, переходите на http://IP-ресивера:8888 (порт из httpport в oscam.conf). В разделе «Readers» должен отображаться ваш ридер со статусом CONNECTED или CARD OK. Если статус OFFLINE — проблема в соединении. Если CONNECTED, но каналы не открываются — нет нужного caid в подписке.
Запуск OScam вручную для отладки:
oscam -b -c /etc/tuxbox/config/oscam/ -l /tmp/oscam.log
Флаг -b запускает в фоне, -c задаёт путь к конфигам, -l — файл лога.
Устранение типичных проблем подключения
Большинство проблем при настройке шаринга через интернет без карты решается за 15 минут, если знать, куда смотреть.
Сервер не подключается (статус OFFLINE)
Первый шаг — проверить доступность хоста и порта с самого ресивера:
nc -zv myserver.example.com 12000
Или через telnet:
telnet myserver.example.com 12000
Если соединение не устанавливается — проблема сетевая, не в конфиге. Возможные причины: сервер недоступен, порт заблокирован вашим интернет-провайдером, роутер с файерволом. Если подключается — смотрите логи OScam и проверяйте логин/пароль.
Ещё одна ловушка: некоторые интернет-провайдеры используют CGNAT (Carrier-Grade NAT). В этом случае у вас нет публичного IP, и исходящие соединения на нестандартные порты могут быть заблокированы на уровне провайдера. Решение — попросить выделенный IP или попробовать другой порт (если сервер поддерживает альтернативные порты).
Канал не открывается, хотя сервер онлайн
Статус CONNECTED в OScam, но канал чёрный — классика. Скорее всего, у сервера нет карты с нужным CAID для этого канала. Каждый спутниковый провайдер имеет свой CAID (например, 0x1702 для Beeline, 0x0500 для Viaccess). Если ваш сервер имеет карту одного провайдера, а канал зашифрован другим — ключ вернуть некому.
Как проверить: в логах OScam (/tmp/oscam.log) смотрите строки с ECM. Там будет видно, какой CAID запрашивается и ответил ли ридер. Строка not found или no matching reader — сервер не может обслужить этот запрос.
Отдельный случай — канал зашифрован каскадом из двух CAID (два провайдера на одном транспондере). OScam попытается расшифровать по первому доступному. Если ни один ридер не покрывает нужный CAID — канал не откроется.
Заикания, фризы и долгое открытие каналов
Фризы почти всегда означают одно: ECM time слишком высокий. Нормальный показатель — до 0.3–0.5 секунды. Если видите 1–3 секунды и выше, ищите причину.
Варианты: высокий пинг до сервера (проверьте ping myserver.example.com), перегрузка сервера в прайм-тайм, слишком глубокий каскад решаринга на стороне сервера, слабый канал между вами и сервером. Иногда сервер периодически уходит в OFFLINE именно в вечерние часы — перегрузка ресурсов. Это признак того, что сервер экономит на железе.
Ещё один нюанс: если системное время на ресивере сбито — некоторые серверы отклоняют соединение. Проверьте date на ресивере и синхронизируйте NTP если нужно.
Проверка портов и фаервола
Если ресивер находится за роутером с NAT и строгим файерволом — исходящие соединения на нестандартные порты могут блокироваться. Проверьте правила файервола роутера. Для исходящего шаринга открывать порты на роутере не нужно — соединение инициирует ресивер, а не сервер.
Если за двойным NAT (ресивер → роутер → провайдерский NAT) — убедитесь, что первый NAT не блокирует исходящий TCP на нужный порт. В большинстве домашних роутеров исходящий TCP по умолчанию открыт, так что это скорее редкий случай.
Как выбрать сервер для шаринга: критерии
Не буду называть конкретные сервисы. Но критерии выбора — вполне конкретные.
Стабильность аптайма и время отклика ECM
Хороший сервер заявляет аптайм 99%+ и подтверждает это реальными данными. ECM time у качественного сервера — меньше 0.3–0.5 секунды в нормальных условиях. Если на тестовом доступе видите стабильно 0.8–1.5 секунды — это уже признак перегруженного или каскадного решаринга.
Поддерживаемые пакеты и caid
Перед покупкой уточните, какие именно пакеты и CAID поддерживает сервер. Список CAID должен совпадать с шифрованием нужных вам каналов. Проверить CAID канала можно прямо в ресивере через информацию о сигнале или через логи OScam при попытке открыть канал.
Защита от перегрузки и количество реальных карт
«Безлимитные» предложения по подозрительно низкой цене — это почти всегда глубокий каскад решаринга. Один слот реальной карты перепродаётся десяткам клиентов, и в результате ECM time растёт, фризы гарантированы. Нормальная практика — ограниченное количество клиентов на одну карту.
Хорошие признаки: сервер ограничивает решаринг (cccmaxhops = 1), указывает реальное количество карт, не предлагает «всё подряд» по одной цене.
Тестовый период и техподдержка
Нормальный провайдер даёт тестовый доступ на 24–72 часа. Без теста — покупать вслепую. За это время можно реально оценить ECM time, стабильность в прайм-тайм, совместимость с вашим ресивером и качество конфиг-строки.
Наличие техподдержки критично. Если что-то пошло не так с конфигом или сервер ушёл в OFFLINE — нужно иметь возможность написать и получить ответ в разумное время. Поддержка только через форум с задержкой в несколько дней — это не поддержка.
Часто задаваемые вопросы
Можно ли смотреть закодированные каналы вообще без карты в ресивере?
Да, локальная карта в ресивере не нужна. Расшифровка идёт на удалённом сервере — туда уходит ECM-запрос, оттуда приходит Control Word. Физическая карта существует, но на стороне сервера. Со стороны клиента нужен только ресивер с поддержкой софткама (Enigma2 с OScam или CCcam) и стабильное интернет-соединение.
Какой порт использует CCcam по умолчанию?
Единого стандартного порта нет. Порт задаётся провайдером сервера в строке C: line — обычно это диапазон 10000–20000, но может быть любой. Веб-интерфейс CCcam по умолчанию слушает порт 16001. Доступность нужного порта проверяется командой nc -zv hostname port или telnet hostname port прямо с ресивера.
Чем OScam лучше CCcam для шаринга?
OScam активно разрабатывается и поддерживает несколько протоколов одновременно: cccam, newcamd, camd35, cs378x. Это значит, что один конфиг может работать с серверами разных типов. У OScam удобный веб-интерфейс с детальной статистикой ECM time, статусами ридеров и логами. CCcam проще в первоначальной настройке, но давно не обновляется и не даёт такой же наблюдаемости за процессом.
Почему сервер показывает ONLINE, но канал не открывается?
Скорее всего, на сервере нет карты с CAID для этого конкретного канала. Статус CONNECTED означает только то, что соединение установлено — не то, что сервер может расшифровать всё, что вы запрашиваете. Проверьте ECM-логи OScam: ищите строки с запросом CAID и ответом ридера. Строка no matching reader — сервер не покрывает этот пакет.
Какой пинг и скорость интернета нужны для стабильного шаринга?
Скорость интернета некритична — трафик минимальный, хватит 1 Мбит/с с запасом. Важнее пинг: желательно менее 150 мс до сервера. Высокий и нестабильный пинг даёт долгое открытие каналов и фризы при переключении, поскольку каждое переключение — это новый ECM-запрос и ожидание ответа.
Где находится файл конфигурации на ресивере Enigma2?
CCcam.cfg ищите в трёх местах: /etc/CCcam.cfg, /var/etc/CCcam.cfg или /usr/keys/CCcam.cfg. Конфиги OScam обычно в /etc/tuxbox/config/oscam/ или /var/keys/. Путь зависит от образа прошивки. Универсальный способ найти: find / -name CCcam.cfg 2>/dev/null.
Что означает время ECM и какое считается хорошим?
ECM time — это время от момента отправки ECM-запроса до получения расшифрованного Control Word с сервера. Хорошим считается значение до 0.3–0.5 секунды. При значениях выше 1 секунды вы заметите задержку при открытии каналов. При 2–3 секундах и более — фризы и прерывания изображения при переключении каналов гарантированы.