CCcam line: формат, настройка и проверка в 2026
Если вы впервые получили данные для подключения к серверу и видите строку вида C: somehost.net 12000 user123 pass456 — это и есть cccam line. Строка описывает всё необходимое для подключения клиента к серверу: где сервер, на каком порту, кто вы. Без правильно прописанной строки ресивер просто не знает, куда стучаться. В этой статье разберём формат по полям, покажем куда это вставлять на разных системах, как проверить что всё работает, и что делать когда не работает.
Что такое CCcam line и из чего она состоит
Определение C: строки в протоколе CCcam
CCcam — это протокол для совместного использования карт условного доступа (smartcard sharing). Сервер держит физическую карту, клиент подключается и получает ECM-ответы для расшифровки каналов. Вся конфигурация клиента сводится к одной строке в файле CCcam.cfg.
C: строка — это директива «Клиент», говорящая CCcam: подключись к этому серверу с этими данными. Без неё CCcam работает только как сервер (F: и N: строки — другое). Именно cccam line определяет, куда ваш ресивер будет ходить за ключами.
Разбор каждого поля: host, port, username, password, deskey
Стандартная строка выглядит так:
C: host port username password [no/yes] [deskey]
По полям:
- host — доменное имя или IP-адрес сервера. Домен предпочтительнее IP: при переезде сервера IP меняется, домен — нет.
- port — TCP-порт сервера. Диапазон 12000–25000 — самый распространённый, но встречается что угодно от 1025 до 65535.
- username — логин, который выдаёт владелец сервера. Регистрозависимый.
- password — пароль. Тоже регистрозависимый. Один неправильный символ — Login failed.
- no/yes — опционально.
noозначает без шифрования (быстрее, но незащищено),yes— с шифрованием через DES-ключ. - deskey — 28 шестнадцатеричных символов для шифрования канала. Выглядит так:
0102030405060708091011121314. Нужен только если используется шифрование.
Чем отличается C-line от N-line и F-line
В CCcam.cfg три типа директив подключения. C: — это CCcam-клиент, подключается к CCcam-серверу по проприетарному протоколу CCcam. N: — newcamd-клиент, открытый протокол, требует обязательного DES-ключа из 14 байт, не поддерживает hops и reshare. F: — friend exchange, добавляет другой CCcam-сервер как «друга» для обмена картами (используется на серверной стороне).
Если вам дали строку начинающуюся с N: — это не cccam line, это newcamd. Разные протоколы, разный синтаксис.
Стандартный синтаксис строки в CCcam.cfg
Конкретный пример с разбором:
C: myserver.example.net 15000 johndoe secretpass123 no
C:— тип директивы (двоеточие обязательно, пробел после него обязателен)myserver.example.net— хост15000— портjohndoe— логинsecretpass123— парольno— без шифрования
Вся строка — одна линия. Никаких переносов, никаких табуляций между полями — только пробелы.
Куда прописывать CCcam line: путь к конфигу на разных системах
Enigma2 (OpenATV, OpenPLi, VTI): /etc/CCcam.cfg
На большинстве Enigma2-образов конфиг лежит по пути /etc/CCcam.cfg. Подключаетесь по SSH (порт 22), открываете файл через nano:
nano /etc/CCcam.cfg
На некоторых старых образах (особенно VTI) конфиг может быть в /usr/keys/CCcam.cfg. Если /etc/CCcam.cfg пустой или его нет — проверьте второй путь. После правки нажимаете Ctrl+O (сохранить), Ctrl+X (выйти).
Dreambox и Vu+: расположение файла и права доступа
На Dreambox (DM800, DM900 и далее) файл тот же — /etc/CCcam.cfg. На Vu+ (Solo, Duo, Ultimo) аналогично. После правки обязательно выставляем права:
chmod 600 /etc/CCcam.cfg
Файл содержит пароли. Права 600 означают: только root читает и пишет. Остальные пользователи не имеют доступа. Это не паранойя — на некоторых образах работает веб-сервер от другого пользователя.
OScam как клиент CCcam: секция [reader] в oscam.server
OScam умеет подключаться к CCcam-серверу, но синтаксис другой. В файле /etc/oscam/oscam.server создаётся секция:
[reader]
label = my_cccam_server
protocol = cccam
device = myserver.example.net,15000
user = johndoe
password = secretpass123
cccversion = 2.3.0
cccmaxhops = 2
Параметр cccversion важен — старые серверы могут не принять клиента с версией выше 2.2.1. Если сервер не подключается — попробуйте cccversion = 2.2.1.
Android ресиверы и IPTV-боксы с CCcam-эмулятором
На Android-ресиверах (MAG, Formuler, различные Android TV боксы) CCcam обычно реализован через приложение-эмулятор. Путь к конфигу зависит от приложения, но обычно это /sdcard/CCcam.cfg или внутренний путь приложения. Некоторые приложения позволяют вставить C-line прямо в GUI — это предпочтительнее, меньше шансов ошибиться с форматом.
Windows/Linux PC с CCcam binary
На Linux PC бинарник CCcam запускается из той же директории где лежит CCcam.cfg. На Windows через Wine или WSL — аналогично. Путь к конфигу указывается аргументом или берётся из текущей директории. Для теста линии на PC это удобно — не нужен физический ресивер.
Пошаговая настройка C-line в CCcam.cfg
Шаг 1: подключение к ресиверу по SSH/FTP
Открываем PuTTY (Windows) или терминал (Linux/Mac). Адрес ресивера — смотрим в его меню (обычно Menu → Network → IP Info). Порт SSH — 22. Логин по умолчанию на большинстве образов: root, пароль: dreambox (Dreambox), vuplus (Vu+) или пустой (некоторые OpenATV-образы).
Через WinSCP можно работать графически — тот же SFTP протокол, те же SSH-данные. Удобно для просмотра и правки файлов без ручного ввода команд.
Шаг 2: бэкап текущего CCcam.cfg
Перед любой правкой:
cp /etc/CCcam.cfg /etc/CCcam.cfg.bak
Если что-то пойдёт не так — восстановление за секунду: cp /etc/CCcam.cfg.bak /etc/CCcam.cfg. Это занимает 2 секунды и спасает от получасового разбирательства.
Шаг 3: добавление C: строки в конец файла
nano /etc/CCcam.cfg
Переходим в конец файла (Ctrl+End в nano), добавляем строку. Строка должна начинаться с C: (заглавная С, двоеточие, пробел). Вставляем данные точно как получили от сервера — без изменений регистра, без лишних пробелов.
Шаг 4: проверка синтаксиса (одна строка, без переносов)
CCcam не терпит ошибок форматирования. Проверьте:
- Вся строка в одну линию — никаких Enter внутри
- Поля разделены одним пробелом (не Tab, не двойным пробелом)
- После пароля нет лишних символов (пробелов, кавычек)
- Нет непечатаемых символов — копипаст из некоторых мессенджеров вставляет невидимые символы
Если копируете из мессенджера — лучше сначала вставить в Notepad, проверить, потом уже в конфиг.
Шаг 5: рестарт CCcam-сервиса
На Enigma2:
/etc/init.d/softcam restart
Или через меню ресивера: синяя кнопка → Softcam → Restart. На некоторых образах работает init 4 && init 3 — это перезапуск всего стека softcam. Занимает 15-30 секунд, после чего CCcam начинает подключение к серверу.
Шаг 6: проверка статуса через веб-интерфейс :16001
В браузере открываем http://IP_ресивера:16001. Если страница не открывается — в CCcam.cfg должны быть строки:
WEBINFO LISTEN PORT : 16001
ALLOW WEBINFO : yes
Если их нет — добавляем, перезапускаем. После этого по порту 16001 будет доступна веб-панель CCcam со статусом всех подключений, списком карт и статистикой.
Проверка работы CCcam line и чтение лога
Веб-интерфейс CCcam на порту 16001: что смотреть
Вкладка Servers — главная. Для каждой C-line показывает статус: CONNECTED (всё хорошо) или DISCONNECTED (нет связи). Рядом — количество карт (cards) и hops.
Вкладка Shares — список доступных карт. Видно CAID (идентификатор системы шифрования: 0x0500 — Viaccess, 0x1702 — Nagravision, 0x0B00 — Conax и т.д.), provider ID, hop. Если канал не открывается — смотрите есть ли нужный CAID в Shares.
Вкладка Providers — показывает пакеты по provider ID. Помогает понять, какие именно каналы доступны через сервер.
Анализ /var/log/CCcam.log через tail -f
В SSH запускаем:
tail -f /var/log/CCcam.log
Переключаем канал на ресивере и смотрим что происходит. Здоровый лог выглядит примерно так:
ecm for caid 0x0500 prov 0x032830 by server myserver:15000 (hop 1) took 347 ms
Это нормально. ECM пришёл за 347 мс с hop 1, канал должен открыться.
Плохие записи: no card found for caid 0x1702, ecm timeout, login failed, connection rejected. Каждая из них — конкретная причина для разбора.
Команды CCcam: --debug, статистика econs/ecms
CCcam binary поддерживает запуск с флагом --debug — выводит расширенный лог прямо в консоль. Полезно при первичной настройке. В веб-интерфейсе в разделе Statistics можно смотреть econs (успешные ECM-запросы) и ecms (всего запросов) — соотношение показывает процент успеха раскрытия каналов.
Hops, reshare и почему важен hop 1
Hop — это количество «прыжков» от физической карты до вас. Hop 1: карта воткнута напрямую в сервер, к которому вы подключены. Hop 2: карта на другом сервере, а ваш сервер получает её через reshare.
Hop 2 — это не катастрофа, но это +50-200 мс к времени ECM и дополнительная точка отказа. Если тот промежуточный сервер ляжет — вы потеряете карту даже если ваш сервер работает. Для нормального просмотра HD-каналов hop 1 обязателен. Reshare 0 в веб-интерфейсе означает что вам запрещено передавать полученные карты дальше — это стандартная политика серверов.
Время ECM (Entitlement Control Message): норма 200-800 мс
ECM — это запрос Control Word (ключа расшифровки). Канал обновляет CW каждые 7-10 секунд. Если CCcam не успевает получить новый CW до следующего обновления — видеопоток замерзает на 1-2 секунды, потом восстанавливается. Это классический freeze.
Нормальное время ECM: 200-800 мс. Если стабильно выше 1000 мс — сервер перегружен или пинг до него слишком высокий. Больше 2000 мс — фризы неизбежны.
Типичные ошибки в CCcam line и как их исправить
Ошибка 'login failed': неверный username/password
Самая частая ошибка. Причина в 99% случаев — опечатка при вводе или потеря регистра при копировании. Проверяйте посимвольно. Особенно коварны: маленькая l и цифра 1, буква O и ноль 0, точки и запятые в пароле.
Если данные получили скриншотом — перепечатывайте вручную, а не через OCR. Если через мессенджер — проверьте нет ли лишних пробелов в начале или конце строки.
Ошибка 'connection refused': закрытый порт или firewall
Сервер физически не принимает соединение на этот порт. Проверяем из SSH ресивера:
nc -zv myserver.example.net 15000
Или с любого Linux: telnet myserver.example.net 15000. Если Connection refused — либо неверный порт, либо сервер не слушает, либо firewall блокирует. Если Connected — порт открыт, значит дело в логине/пароле.
Отдельная история — двойной NAT у некоторых провайдеров. Если ваш роутер получает серый IP (10.x.x.x или 192.168.x.x) — исходящие соединения на нестандартные порты выше 10000 иногда блокируются. В этом случае попросите сервер переключить вас на порт 80 или 443 — они обычно проходят даже через жёсткие NAT.
Ошибка 'no card found': карты есть но не работают на ваших каналах
Сервер подключён (статус CONNECTED, видны карты в Shares), но конкретный канал не открывается. Причина: CAID канала не совпадает с CAID карты на сервере. Открываем в браузере :16001 → Shares, смотрим список CAID. Потом смотрим CAID нужного канала — обычно видно в EPG или через команду cat /proc/bus/pci/devices на ресивере.
Также важен provider ID. Один и тот же CAID (например 0x0500 Viaccess) используется десятками разных операторов — у каждого свой provider ID. Если сервер держит карту одного пакета, а вы смотрите другой — ничего не откроется даже при совпадении CAID.
Ошибка 'ecm timeout': медленный сервер или сетевая задержка
Пинг до сервера больше 150 мс — уже риск фризов. Проверяем: ping myserver.example.net. Если больше 200 мс стабильно — сервер географически далеко или перегружен. Другой вариант: сервер принимает слишком много клиентов на одну карту и не успевает обрабатывать очередь ECM-запросов.
Freeze картинки каждые 10 секунд: проблема с EMM/ECM ключами
Freeze с интервалом ровно 7-10 секунд — это классика. Control Word меняется каждые ~10 секунд. Если сервер не успевает прислать новый CW до обновления — картинка замерзает ровно на момент смены. Это не проблема линии как таковой — это проблема времени отклика. Смотрите ECM timing в логе: если там >1500 мс стабильно — нужен другой сервер.
Конфликт с другими C-линиями в файле
Мало кто об этом говорит, но порядок C-линий в CCcam.cfg определяет приоритет. Первая строка — главная. Если первая строка ведёт на недоступный сервер (timeout при подключении) — CCcam будет долго ждать, прежде чем попробует вторую. Это замедляет переключение каналов на несколько секунд.
Ещё хуже: одна неправильно оформленная строка (с переносом или лишним символом) может сбить парсинг всего файла. CCcam читает конфиг построчно и ожидает конкретный формат — синтаксическая ошибка в одной строке иногда блокирует обработку строк после неё.
Безопасность и оптимизация работы с C-линиями
Права на CCcam.cfg: 600, владелец root
CCcam.cfg содержит пароли в открытом виде. Это не изменить — протокол так работает. Но хотя бы ограничьте доступ к файлу:
chmod 600 /etc/CCcam.cfg
chown root:root /etc/CCcam.cfg
Права 600: только root читает и записывает. Проверить: ls -la /etc/CCcam.cfg должно показать -rw-------.
Использование deskey для шифрования трафика CCcam
Deskey — это 28 шестнадцатеричных символов (14 байт), которые используются для шифрования CCcam-трафика между клиентом и сервером. Без него всё идёт в открытом виде. На домашнем роутере за NAT — некритично. Если CCcam-трафик идёт через публичный интернет — deskey стоит использовать.
Синтаксис с deskey:
C: myserver.example.net 15000 user pass yes 01020304050607080910111213
Значение deskey должно совпадать на клиенте и сервере — иначе handshake не пройдёт.
Сколько C-линий держать одновременно: реальный лимит
Технически CCcam поддерживает десятки C-линий в одном файле. Практически — больше 4-5 создают проблемы. Каждая линия — это отдельное TCP-соединение, которое CCcam держит постоянно. При переключении канала ресивер опрашивает все доступные серверы параллельно, что создаёт конкуренцию за ECM-ответ. Это замедляет zapping (переключение каналов) и увеличивает среднее время ECM.
Оптимум: 2-3 надёжных линии. Одна основная, одна резервная с теми же пакетами. Третья — опционально, для других пакетов.
Параметр SERVER LISTEN PORT и почему его лучше менять
Стандартный порт CCcam — 12000. Его знают все автоматические сканеры. Если вы поднимаете свой CCcam-сервер (не клиент) — смените порт на нестандартный, например 23456 или что-то в диапазоне 30000-50000. В CCcam.cfg сервера:
SERVER LISTEN PORT : 23456
Это не защита от целенаправленной атаки, но отсекает 90% автоматического сканирования.
Логирование: что отключить чтобы не забивать flash-память
На ресиверах с flash-памятью 32-64 МБ (а это большинство Enigma2-боксов) CCcam.log может забить всю свободную память за 24-48 часов при включённом debug-логировании. В CCcam.cfg:
DEBUG : no
SHOW TIMING : no
LOG WARNINGS : yes
Оставьте только LOG WARNINGS : yes для критических сообщений. Debug включайте только при активной отладке и сразу отключайте после. Проверить размер лога: du -sh /var/log/CCcam.log.
Как выглядит правильная CCcam line?
Формат: C: host port username password, всё в одну строку через пробел. Пример структуры: C: server.example.net 12000 myuser mypass. Опциональные параметры в конце: no (без шифрования) или yes 0102030405060708091011121314 (с DES-шифрованием). Двоеточие и пробел после C — обязательны. Никаких кавычек, никаких переносов строки.
Куда вставлять C-line на Enigma2 ресивере?
В файл /etc/CCcam.cfg (или /usr/keys/CCcam.cfg на некоторых образах). Подключитесь по SSH, откройте файл через nano /etc/CCcam.cfg, добавьте строку в конец, сохраните (Ctrl+O, Ctrl+X). После добавления — рестарт CCcam командой /etc/init.d/softcam restart или через меню Blue → Softcam.
Что означает hop 1 и hop 2 в CCcam line?
Hop 1 означает что карта подключена напрямую к серверу, к которому вы подключились. Hop 2 — карта пересдаётся через reshare от другого клиента. Hop 1 быстрее (меньше задержка ECM) и стабильнее (нет дополнительной точки отказа). Для платных HD-каналов нужен только hop 1 — иначе фризы при любой нестабильности промежуточного соединения.
Почему CCcam line подключается но каналы не открываются?
Статус CONNECTED в веб-интерфейсе (:16001) означает только что соединение установлено — не что карты подходят под ваши каналы. Проверьте совпадение CAID: откройте :16001 → Shares, посмотрите список CAID (например 0x0500 — Viaccess, 0x1802 — Nagra). Если CAID вашего канала нет в списке — карта просто не подходит под этот канал. Также проверьте provider ID — он должен совпадать с провайдером пакета.
Сколько CCcam линий можно прописать в один CCcam.cfg?
Технически — десятки. Практически оптимум 3-5. Больше создаёт конфликт приоритетов: при переключении канала ресивер опрашивает все серверы параллельно, что замедляет zapping и увеличивает время ECM. Порядок линий в файле задаёт приоритет — верхняя строка главная, она проверяется первой.
Как проверить что C-line рабочая без подключения к ресиверу?
Минимальная проверка: telnet host port или nc -zv host port — должно быть соединение, не Connection refused. Это проверяет только что порт открыт. Для полной проверки — запустите CCcam-клиент на Linux или Windows PC с той же C-line и посмотрите лог. Если видите CONNECTED и карты в Shares — линия рабочая.
Чем CCcam line отличается от newcamd (N-line)?
CCcam (C:) — проприетарный протокол с поддержкой hops и reshare. Позволяет строить распределённые сети карт. Newcamd (N:) — открытый протокол, требует обязательного DES-ключа из 14 байт, hops не поддерживает. Newcamd обычно немного быстрее на ECM и проще в реализации. CCcam удобнее для серверных конфигураций с множеством карт. Если вам дали N-строку — это отдельный синтаксис, CCcam её обработает, но нужен DES-ключ.
Практические советы для стабильного просмотра
Даже самая стабильная линия CCCam или OSCam требует пары простых подготовительных шагов. Обновляйте прошивку ресивера, раз в неделю очищайте ECM‑кеш и держите 15–20% свободного места на USB‑накопителе или во встроенной памяти, чтобы кардридер записывал ключи без задержек.
При настройке антенны оставляйте запас по MER/BER: смещение на два градуса или ослабленный F‑коннектор чаще становится причиной “фризов”, чем сам кардшаринг. Держите под рукой короткий патч‑корд для проверки другого роутера и сохраните два профиля в OSCam — под TCP и под UDP — чтобы мгновенно переключиться, если провайдер начнёт фильтровать протокол.
Utgard.tv следит за каждым хабом 24/7, однако вы можете ускорить диагностику, если будете вести небольшой журнал действий. Записывайте время переключения канала, активный CAID и то, использовали ли вы Wi‑Fi или Ethernet. Такой мини‑отчёт позволит инженерам воспроизвести вашу конфигурацию в лаборатории и предложить решение не за часы, а за минуты.
- Держите активными две линии: если первый сервер уходит на обслуживание, второй тут же подхватывает поток без повторного ввода логина.
- Раз в месяц делайте замер скорости и задержек. Стабильных 1–2 Мбит/с при пинге до 80 мс достаточно для SD/HD, но если джиттер превышает 20 мс — переведите роутер на провод.
- Сохраните в закладки страницу статуса Utgard.tv и Telegram‑бота @utgard_tv_bot — там появляются уведомления о работах раньше, чем успеют среагировать SEMrush или внешние мониторы.