Эмулятори

Вопрос Эмулятор Newcamd


Newcamd – Описание

На момент составления этого документа последняя версия Newcamd – 6.01

Эмулятор Newcamd состоит из 5-ти компонентов это Cardserver,Newcamd,Cardspider ,Betad и Camdcmd.

Cardserver – позволяет определять карту встваленную в картоприёмник, способ работы с ней и контролирует кто и как будет иметьдоступ к этой карте.

Newcamd – подключается к кардсерверу, как к локальному так и к удалённому. Именно благодаря Ньюкамд мы видим картинку на экране телвизора. Либо может работать в режиме эмуляции при наличии валидных ключей в папке /var/scce

Cardspider – позволяет каскадировать кардсервер как удалённый так и локальный а также имеет возможность связи с другими Кардспайдермаи

Betad – изначально был предназначен для просмотра на дримбоксе карт немецкого провайдера Premiere . На данный момент этот компонент позволяет просматривать карты в кодировке Firecrypt/Dreamcrypt и карты в кодировке Видеогард/НДС провайдеров Скай Италия и Скай Англия. Шаринг этих карт с помощью BETAD невозможен!

CAMDCMD – позволяет восстанавливать потерянные соединения кардсервера, ньюкамд и кардспайдера.

Для просмотра собственной карты вставленной в картоприёмник пользователь должен иметь как минимум два компонента, это
кардсервер и ньюкамд. По большому счёту даже когда мы смотрим свою собственную карту, мы смотрим её по тому же принципу как и будут её смотреть другие пользователи.
Т.е мы расшариваем карту даже для самих себя — так устроен Ньюкамд : )

Если составить схему работы Newcamd то она будет выглядеть примерно так :
Способ 1 : Cardserver ————————————————————————— Newcmad ——————- картинка на экране
Способ 2 : Cardserver ———— Cardspider—————————————————Newcamd ——————- картинка на экране
Способ 3 : Cardserver ———— Cardspider———Carspider2——CardspiderN———Newcamd ——————- картинка на экране
Способ 4 : Betad ——————————————————————————— Newcamd ——————- картинка на экране
Способ 5 : Keys (var/scce)———————————————————————- Newcamd ——————- картинка на экране

Как видно из вышеперечисленных схем последним звеном в любом из вариантов является компонент под названием Newcamd. Именно он отвечает за соединение с картой либо чтением ключей (режим эмуляции) и появлением картинки на экране!

Приступим ! : )

Cardserver- конфигурация и принцип работы

Настройки кардсервера определяются файлом cardserv.cfg , содержимое которого описано ниже:

DESKEY = 01 02 03 04 05 06 07 08 09 10 11 12 13 14 – 14-и байтный ключ используемый для шифрования-разшифрования потока обмена данных между сервером и ньюкамд. Ключ определяется владельцем сервера.
#
SERVER_NAME = test – имя сервера ( имеет значение только при использовании реверс логина)
#
DEBUG_PORT = 14000 – порт для мониторинга через тельнет подключённых юзеров ( номер порта произвольный и определяется владельцем сервера)
#
ENTITLEMENT_PORT = 14001 – порт для чтения информации из карт сервера (срок подписки, классы и т.д. Ирдето карты кардсервером не читаются) Номер порта произвольный и определяется владельцем сервера
#
ADMIN_PORT = 14002 – порт для подсоединения к серверу програмой CAMDCMD ( номер порта произвольный и определяется владельцем сервера)
#
ADMIN_PASSWORD = secret 00 00 00 00 00 00 00 00 00 00 00 00 00 00 –пароль для подсоединения к серверу програмой CAMDCMD (пароль определяется владельцем сервера.)
#
USER = username password lan test.no-ip.com 12000 au – строкой которая начинается словом USER мы прописываем юзеров которые будут подключатся к нам на сервер. Параметры следующие: Username,Password, Lan/WAN (Тип соединения. Для подключения спайдером нужно использовать только LAN), IP/DyDNS ( Имеет значение только для реверс логина. Если не используется реверс логин,то лучше прописать localhost). 12000 (порт по которому осуществляется реверс логин данного юзера. Этот порт должен быть обязательно открыт в раутере у этого человека. Если не используется реверс логин , нужно прописать 0 .Номер порта произвольный и определяется удалённым пользователем в настройках newcamd.conf — см. ниже настройки newcamd.conf. AU (позволяет при отключённом на сервере блокере , производить апдейт карты с помощью удалённых пользователей)
#
DEBUG_INIT = no – отображать/не отображать процесс инициализации карты при запуске кардсервера через тельнет
#
DEBUG_NET = no – отображать/не отображать процесс подключения юзеров к картеп ри запуске кардсервера через тельнет
#
DEBUG_ECM = no – отображать/не отображать процесс поступления комманд ECM к карте при запуске кардсервера через тельнет
#
DEBUG_EMM = no – отображать/не отображать процесс поступления комманд EMM к карте при запуске кардсервера через тельнет
#
#
#
SERIAL_PORT = 0 ( 0- верхний картоприёмник в дримбоксе,1 – нижний, 2 – ком порт. В Дримбокс 500 использовать для картоприёмника SERIAL_PORT = 1) Если используется Линукс сервер на PC то существующие ком-прты можно определить коммандой dmesg | grep ttyS и в соответствии с полученной информацией выставлять значения.

TCP_PORT = 10000 — порт через который будет происходить соединение с картой. Обязательно нужно открыть этот порт в раутере если производится кардшаринг с нелокальными пользователями. Номер порта произвольный и устанавливается владельцем сервера . Желательно использовать «высокие» номера и те которые не заняты другой службой

BOXKEY = 11 22 33 44 55 66 77 88 – при использовании оригинальной карты системы Nagravision 1 , требуется прописать BOXKEY номер к которому привязанна эта карта. Если такая карта не используется, строчку можно неписать вообще!

BOXID = 0000000000 – если используется карта НДС/Видеогард , здесь нужно прописать 10-ти значный номер ресивера к которому привязанна эта карта. Если такой карты нет строчку можно неписать вообще!

EMM-G = no – включить/выключить блокер

EMM-S = no – включить/выключить блокер

EMM-U = no – включить/выключить блокер
SPECIAL_FEATURES = yes – включить/выключить специальные возможности. Поддерживается только некоторыми картами ( автору этого документа неизвестно какое влияние оказывает эта функция на «некоторые» карты ???)

EXCLUDE_SERVICE_MULTIPLE = 02be:02c8 – позволяет разшаривать те каналы из пакета каналов которые есть на карте и не перечислены в этой строчке (02be:02c8). Само собой если хозяин карты не собирается ограничивать пользователей списком каналов, либо карта имеет подписку только на один канал (порноканал к примеру) то эта строчка не имеет никакого значения и прописывать её не обязтельно! 02be:02c8 означает что все каналы в этом промежутке не будут доступны пользователям. 02be,02c8 – нечто иное как ID канала, который можно увидеть с помощью имеющейся в Дримбоксе функции под названием «информация о потоке»

EXCLUDE_SERVICE_MULTIPLE = 0321:032a – продолжение ограничения описанного u1074 .ыше ( если требуется перчислить несколько промежутков каналов)
#
#
SERIAL_PORT = 2 sc8in1 – как уже было описанно выше, 2 это ком порт. В данном примере к ком порту подключенно устойство SC8in1. Если SC8in1 не подключён то строчка будет выглядеть так SERIAL_PORT = 2

SC8IN1_SLOT = 0 – только при подключённом SC8in1 , если не подключён, то эту строчку не прописываем вообще. SC8IN1_SLOT = 0 (может быть от 0 до 7)

TCP_PORT = 10001 – описано выше

PARITY = on – параметр используемый только при подключенном програматоре и позволяющий правильно определить ATR карты. Для карт Ирдето нужно поставить off. В любом случае желательно поэксперементировать с картой. Встроенным картоприёмником эта строчка будет игнорироваться.

CARD_DETECT_BIT = DCD — параметр используемый только при подключенном програматоре и позволяющия правильно определить наличие карты в программаторе. Возможные значения CTS, DCD, DSR

CARD_DETECT_INVERT = yes — параметр используемый только при подключенном програматоре. При работе с некоторыми
програматорами newcamd определяет вставленную карту как вытащенную. В данном случае мы говорим newcamd сделать обратное. Если програматор работает нормально то эту строчку не прописываем вообще, либо ставим no. Встроенным картоприёмником эта строчка будет игнорироваться.

EMM-G = no — описано выше

EMM-S = no — описано выше

EMM-U = no — описано выше

SPECIAL_FEATURES = yes — описано выше

Принцип работы:

Cardserver можно запустить несколькими способами – через тельнет и посредтсвом дистанционного управления дримбокса при наличии такой возможности в установленном имедже.Cardserver это ничто иное как файл который мы кладём в папку /var/bin (Dreambox500/5620/7000), либо в usr/bin ( Dreambox 7020) или в любую папку если речь идёт о линукс сервере. Конфиг файл обязан быть в папке /var/tuxbox/config либо в папке /etc если сервер установлен на Линукс PC. Запуск сервера через тельнет осуществляется посредством ввода в коммандной строке пути к этому файлу. Т.е если мы положили фаил в папку /var/bin то запускаем фаил посредством комманды : /var/bin/cardserv ( разные имеджи требуют переименовать файл кардсервера. Например Rudream требует чтоб файл сервера назывался cardserv, Hydra – cardserver.dream, Gemini – cardserver).После того как мы составили нужный для наших целей конфиг файл cardserv.cfg и запустили сервер через тельнет, можно увидеть чтопроисходит и также проверить всё ли нормально либо есть ошибки.

Ниже я приведу несколько примеров :

1) Сервер успешно запущен на обеих картоприёмниках и программаторе подключённом к ком-порту.

root@dreambox ~ > /var/bin/cardserv
[cardserver 17:43:51] compiled Nov 28 2004, 15:09:22
[cardserver 17:43:51] Card 0/0 reset
[cardserver 17:43:52] Card 0/0 init Seca card, please wait
[cardserver 17:43:52] Sat Jun 11 17:43:52 IDT 2005
[cardserver 17:43:52] Card 0/0 caid 0100
[cardserver 17:43:52] Card 0/0 listening on port 10000
[cardserver 17:43:52] Card 1/0 reset
[cardserver 17:43:53] Card 1/0 init Irdeto card, please wait
[cardserver 17:43:54] Sat Jun 11 17:43:54 IDT 2005
[cardserver 17:43:54] Card 1/0 caid 0604
[cardserver 17:43:54] Card 1/0 listening on port 10001
[cardserver 17:43:54] Card 2/0 reset
[cardserver 17:43:55] Card 2/0 init Conax card, please wait
[cardserver 17:43:55] Sat Jun 11 17:43:55 IDT 2005
[cardserver 17:43:55] Card 2/0 caid 0b00
[cardserver 17:43:55] Card 2/0 listening on port 10002

2) Сервер успешно запущен только на встроенных картоприёмниках но незапущен на карте которая в програматоре

[cardserver 17:45:08] compiled Nov 28 2004, 15:09:22
[cardserver 17:45:08] Card 0/0 reset
[cardserver 17:45:09] Card 0/0 init Seca card, please wait
[cardserver 17:45:09] Sat Jun 11 17:45:09 IDT 2005
[cardserver 17:45:10] Card 0/0 caid 0100
[cardserver 17:45:10] Card 0/0 listening on port 10000
[cardserver 17:45:10] Card 1/0 reset
[cardserver 17:45:10] Card 1/0 init Irdeto card, please wait
[cardserver 17:45:11] Sat Jun 11 17:45:11 IDT 2005
[cardserver 17:45:11] Card 1/0 caid 0604
[cardserver 17:45:11] Card 1/0 listening on port 10001
[cardserver 17:45:11] Card 2/0 reset
[cardserver 17:45:14] Card 2/0 reset failed

Причин может быть несколько :

а) Карта испорчена и серверу неудалось прочитать её ATR
б) Програматор плохо подключён к ком-порту дримбокса
в) Неправильные настройки CARD_DETECT_BIT либо их нет вообще а вашему програматору они необходимы
г) Система кодирования которая используется этой картой не поддерживается кардсервером

3) Сервер запущен,но…. :

[cardserver 17:54:23] compiled Nov 28 2004, 15:09:22
[cardserver 17:54:23] parse error in config file /var/tuxbox/config/cardserv.cfg line 10.

Данное сообщение нам говорит о том что есть ошибка в файле конфига кардервера в строчке номер 10. Соответственно открываем файл,
ищем строчку номер 10 и исправляем ошибку.

4) Мы запустили кардсервер но получили такое:

[cardserver 17:57:34] compiled Nov 28 2004, 15:09:22
[cardserver 17:57:34] /dev/sci1: Device or resource busy
[cardserver 17:57:34] parse error in config file /var/tuxbox/config/cardserv.cfg line 15.
[cardserver 17:57:34] parse error in config file /var/tuxbox/config/cardserv.cfg line 16.
[cardserver 17:57:34] parse error in config file /var/tuxbox/config/cardserv.cfg line 20.
[cardserver 17:57:34] /dev/sci0: Device or resource busy
[cardserver 17:57:34] parse error in config file /var/tuxbox/config/cardserv.cfg line 24.
[cardserver 17:57:34] parse error in config file /var/tuxbox/config/cardserv.cfg line 25.
[cardserver 17:57:34] parse error in config file /var/tuxbox/config/cardserv.cfg line 29.

Это говорит о том что мы запустили кардсервер в тот момент когда он уже работал. Соответственно наши картоприёмники заняты и сервер не может быть запущен. Для корректного запуска сервера необходимо убедится что он не запущен до этого, с помощью команды TOP либо навсякий случай его оборвать с помощью команды killall cardserv (или другое имя файла в зависимости от установленного имеджа)

5) Сервер запущен и реверс логин настроен правильно :

[cardserver 18:17:53] compiled Nov 28 2004, 15:09:22
[cardserver 18:17:53] Card 0/0 reset
[cardserver 18:17:54] Card 0/0 init Seca card, please wait
[cardserver 18:17:54] Sat Jun 11 18:17:54 IDT 2005
[cardserver 18:17:54] Card 0/0 caid 0100
[cardserver 18:17:54] Card 0/0 listening on port 10000
[cardserver 18:17:54] Card 1/0 reset
[cardserver 18:17:55] Card 1/0 init Irdeto card, please wait
[cardserver 18:17:56] Sat Jun 11 18:17:56 IDT 2005
[cardserver 18:17:56] Card 1/0 caid 0604
[cardserver 18:17:56] Card 1/0 listening on port 10001
[cardserver 18:17:59] Card 0/0 Login accepted: root
[cardserver 18:18:00] Card 1/0 Login accepted: root

6) Сервер запущен, реверс логин настроен но удалённый пользователь небыл подключён к серверу обратно после того как мы его перезапустили :

[cardserver 18:17:53] compiled Nov 28 2004, 15:09:22
[cardserver 18:17:53] Card 0/0 reset
[cardserver 18:17:54] Card 0/0 init Seca card, please wait
[cardserver 18:17:54] Sat Jun 11 18:17:54 IDT 2005
[cardserver 18:17:54] Card 0/0 caid 0100
[cardserver 18:17:54] Card 0/0 listening on port 10000
[cardserver 18:17:54] Card 1/0 reset
[cardserver 18:17:55] Card 1/0 init Irdeto card, please wait
[cardserver 18:17:56] Sat Jun 11 18:17:56 IDT 2005
[cardserver 18:17:56] Card 1/0 caid 0604
[cardserver 18:17:56] Card 1/0 listening on port 10001
[cardserver 18:23:16] Card 0/0 Connection to testtest.no-ip.info:12000 timed out
[cardserver 18:23:16] Card 1/0 Connection to testtest.no-ip.info:12000 timed out

Данное сообщение говорит о том что тот пользователь который прописан с адресом реверс логина testtest.no-ip.info и портом для реверс 12000, не был подключён обратно к серверу. Причин может быть несколько :
а) Пользователь не открыл у себя порт для реверс ( в данном примере порт 12000)
б) Пользователь использует u1076 .ля реверс логин другой порт, прописанный у него в newcamd.conf
в) Пользователь не использует newcamd/cardspider для соединения с нашим сервером, а использует стороннюю программу типа Mgcamd , которая не поддерживает реверс логин.

На этом я остановлюсь с описанием возможных вариантов сообщений выводимых на экране консоли. То что здесь описанно захватывает 90% из возможных вариантов. Любые другие сообщения должны быть понятны владельцу сервера и без их подробного описания.

Коментарии :
1) Кардсервер, является неотьемлимой частью пакета Newcamd, и отвечает за чтение карт находящихся в кардридерах. Без него
невозможен ни просмотр собственной карты ни разшарка карты внешним пользователям.
2) Для просмотра собственной карты мы должны прописать свой USER абсолютно также как и для любого другого пользователя.
3) Функция реверс-логин, является полезной функцией, но при наличии большого кол-ва пользователей, процесс подключения их обратно к серверу занимает очень большое время. Хотя и обеспечивает максимально стабильный просмотр пользователю.
Для этой цели предпочтительней использовать MgCamd , но это уже другая история : )
4) Newcamd версии 6.01 неможет подключатся к кардсерверу НДС/Видеогвард

Newcamd – конфигурация и принцип работы (версия 6.01).

Настройки Newcamd определяются файлом newcamd.conf, содержимое которого описано ниже:

EMU = yes – включить/выключить эмулятор (не влияет на «картшаринг»)

PREFER_EMU = yes — предпочесть/не предпочесть эмулятор «шарингу»(в случае если текущий канал возможно смотреть, как с помощью эмуляции так и с помощью «шаринга»).

AU = yes
– включить/выключить автоапдейт ключей в папке /var/scce

OSD_TIMEOUT = 3 – время задержки появления окна информации после переключения на канал. В имиджах Rudream поствить 0.

OSD_WEB_LOGIN = root:dreambox
– имя/пароль для появления окна информации.

SHOW_ALL_CA_SYSTEMS = no – при запуске Newcamd через тельнет показывать все присутствующие в потоке системы кодирования.

DEBUG_ECM = yes – включить/выключить дебагинг ECM на консоле.

DEBUG_EMM = no – включить/выключить дебагинг EMM на консоле.

DEBUG_CWS = yes – включить/выключить дебагинг CWS на консоле.

DEBUG_CAM = yes – включить/выключить дебагинг CAM на консоле.

SHOW_PAT = no – включить/выключить показ на консоле Hex значение таблиц PAT.

SHOW_PMT = no – включить/выключить показ на консоле Hex значение таблиц PMT.

SHOW_ECM = no – включить/выключить показ на консоле ECM текущего канала.

SHOW_CAT = no – включить/выключить показ на консоле Hex значение таблиц CAT.

SHOW_EMM = no – включить/выключить показ на консоле EММ текущего канала.

SHOW_CWS_ECM = no – включить/выключить показ на консоле ECM получаемый с сервера, для текущего канала.

SHOW_CWS_EMM = no – включить/выключить показ на консоле EMM получаемый с сервера, для текущего канала.

EMM_REPORT_WRONG_SIG = no — включить/выключить показ на консоле HEX значение неправильной сигнатуры EMM.

DEFAULT_CW_DELAY = 0 – время задержки между запросом CW и его вводом в CSA регистр.

RELOAD_CONFIG_ON_ZAP = no -включить/выключить перезгрузку файла конфига при переключении каналов.

RELOAD_KEYLIST_ON_ZAP = no -включить/выключить перезгрузку файла ключей при переключении каналов.

CA_INFO_FILE = /tmp/cainfo.txt
– путь куда будет сбрасываться файл с базовой информацией о текущем канале (система кодирования, каким ключом открыта картинка, с какого сервера получен DW и т.д).

CWS = uds 0 local local
– строка подключения к серверу запущенному на Betad (0- сервер запущен на верхнем картоприёмнике, 1- сервер запущен на нижнем картоприёмнике)

CWS = % 10000 user password 01 02 03 04 05 06 07 08 09 10 11 12 13 14 lan cardserv
– строка подключения к карте которая транслирует на порте 10000, где CWS – контрол ворд сервер, % — место, где расположен сервер (%= локальный компьютер/дримбокс), если используется подключение к удалённому серверу то вместо % нужно пописать IP/Dydns адрес этого сервера. , 10000 – порт на котором вещает карта к которой мы хотим подключится, user — имя пользователя которое дал нам хозяин сервера либо мы дали сами себе для просмотра нашей же собственной карты, password – пароль который дал нам хозяин сервера либо мы дали сами себе для просмотра нашей же собственной карты, 01 02 03 .. 14 – ключ шифрования который прописан в cardserv.cfg того сервера к которому мы подключаемся, lan – имеет значение только когда используется CAMDCMD для восстановления соединений (возможные значения lan/wan). cardserv – имя которое прописанно в cardserv.cfg на том сервере к которому мы подключаемся (имеет значение только в том случае если используется реверс логин).

CWS = % 10001 user password 01 02 03 04 05 06 07 08 09 10 11 12 13 14 lan cardserv – строка подключения к локальной карте которая транслирует на порте 10001.

При наличии нескольких идущих по порядку портов на том сервере к которому мы подключаемся две выше описанные строки можно объеденить таким образом:

CWS_MULTIPLE = % 10000:10001 user password 01 02 03 04 05 06 07 08 09 10 11 12 13 14 lan cardserv

CWS_CONNECT_TIMEOUT = 20
– максимальное время ожидания DW в миллисекундах, при соединении с удалённым сервером (желательно увеличить при частых Timeout).

CWS_INCOMING_PORT = 12000
– порт используемый для подключения CAMDCMD, а также для реверс логина. Номер порта произвольный и устанавливается владельцем сервера.

CWS_DEBUG_PORT = 12001
– порт для мониторинга через телнет списка подключенных серверов, как локальных так и удаленных. Номер порта произвольный и устанавливается владельцем сервера.

CWS_KEEPALIVE = no –
включить/выключить функцию keepalive позволяющую поддерживать соединение с сервером вслучае, если используется NAT раутер который отключает неактивные соединения.

ADMIN_PASSWORD = test 00 00 00 00 00 00 00 00 00 00 00 00 00 00
– логин данные используемые CAMDCMD для восстановления соединений.

Принцип работы:

Newcamd можно запустить несколькими способами; – через тельнет и посредтсвом дистанционного управления дримбокса, при наличии такой возможности в установленном имидже. Newcamd, это ничто иное, как файл который мы кладём в папку /var/bin (Dreambox500/5620/7000), либо в usr/bin (Dreambox7020), или в любую папку если речь идёт о линукс сервере. Конфиг файл обязан быть в папке /var/tuxbox/config , либо в папке /etc если сервер установлен на Линукс PC.

Запуск сервера через тельнет осуществляется посредством ввода в командной строке пути к этому файлу. Т.е если мы положили файл в папку /var/bin , то запускаем файл посредством команды: /var/bin/newcamd. Разные имиджи требуют переименовать файл newcamd. Например Rudream требует, чтоб файл сервера назывался newcamd, Hydra – newcamd.ppc.

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

Ниже я приведу несколько примеров:

1) Newcamd запущен нормально, мы подключены к серверу и к его портам:

[newcamd -v6.00 21:18:41] Server: %:10000 – адрес сервера и номер порта к которому мы подключились.

[newcamd -v6.00 21:18:41] userid: 1 (EMM enabled) – порядковый номер в файле cardserv.cfg используемого нами имени пользователя и информация о включённом/отключённом на том сервере дистанционном апдейте карты, этот параметр зависит от следующих значений прописанных на сервере: EMM-G = yes, EMM-S = yes, EMM-U = yes и наличии AU в конце строки используемого нами имени пользователя. При EMM enabled мы имеем право апдейтить карту на расстоянии. Т.е хозяину карты не обязательно находится на канале, для того чтобы, карта проапдейтилась. Вместо него можем делать это мы! Очень помогает при работе с картами Irdeto! В случае если дистанционный апдейт отключён, то сообщение будет таким (EMM disabled).

[newcamd -v6.00 21:18:41] caid: 0100 — ID системы кодирования карты, к которой мы подключились: 0100- сека, 0500 – виаксесс и т.д.

[newcamd -v6.00 21:18:41] cardNo: 00000000000 — номер карты (будет виден только при включённом дистанционном АУ).

[newcamd -v6.00 21:18:41] prov 000000: 0000000000000000 – информация о провайдер ID присутствующем в карте.

[newcamd -v6.00 21:18:41] prov 000000: 0000000000000000 – информация о провайдер ID присутствующем в карте.

[newcamd -v6.00 21:18:41] prov 000000: 0000000000000000 – информация о провайдер ID присутствующем в карте.

[newcamd -v6.00 21:18:41] prov 000000: 0000000000000000 – информация о провайдер ID присутствующем в карте.

[newcamd -v6.00 21:18:42] Server: %:10001 – описано выше.

[newcamd -v6.00 21:18:42] userid: 1 (EMM enabled) – описано выше.

[newcamd -v6.00 21:18:42] caid: 0604 – описано выше.

[newcamd -v6.00 21:18:42] cardNo: 0000000000000000 – описано выше.

[newcamd -v6.00 21:18:42] prov 000000: 0000000000000000 – описано выше.

[newcamd -v6.00 21:18:42] prov 000001: 0000000000000000 – описано выше.

[newcamd -v6.00 21:18:42] prov 000002: 0000000000000000 – описано выше.

[newcamd -v6.00 21:18:42] prov 000003: 0000000000000000 – описано выше.

2) Newcamd запущен нормально, но мы не подключились к одному из портов:

[newcamd -v6.00 21:35:16] Server: %:10000

[newcamd -v6.00 21:35:16] userid: 1 (EMM enabled)

[newcamd -v6.00 21:35:16] caid: 0100

[newcamd -v6.00 21:35:16] cardNo: 00000000000

[newcamd -v6.00 21:35:16] prov 000000: 0000000000000000

[newcamd -v6.00 21:35:16] prov 000000: 0000000000000000

[newcamd -v6.00 21:35:16] prov 000000: 0000000000000000

[newcamd -v6.00 21:35:16] prov 00000: 0000000000000000

[newcamd -v6.00 21:35:16] cws %:10001: Connection refused

Данное сообщение говорит о том, что карта не присутствует в картоприёмнике на сервере, либо она там есть, но сервер её не определил. Само собой порт под эту карту небыл открыт самим сервером и как результат Connection refused.

3) Newcamd запущен нормально но ….

[newcamd -v6.00 21:48:21] cws %:10000 Authentication failure

[newcamd -v6.00 21:48:21] cws %:10001 Authentication failure

В этом случае следует проверить имя пользователя/пароль в строке CWS отвечающей за наше подключение к этому серверу.

4) Newcamd запущен нормально но ….

[newcamd -v6.00 21:55:14] cws %:10000 Connection failed — maybe incorrect des key?

[newcamd -v6.00 21:55:15] cws %:10001 Connection failed — maybe incorrect des key?

Тут следует проверить ключ шифрования, который мы прописали в строке CWS отвечающей за наше подключение к этому серверу.

5) Newcamd запущен нормально но ….

[newcamd -v6.00 21:51:17] cws test.no-ip.com:10000: Connection timed out

[newcamd -v6.00 21:51:22] cws test.no-ip.com:10001: Connection timed out

Тут причин может быть несколько:

а) Порты 10000 и 10001 закрыты в раутере у владельца сервера.

б) В случе если используется DyDns адресс, то он не актуальный, т.е. не привязан к текущему IP сервера.

6) Newcamd запущен нормально но ….

[newcamd -v6.00 21:58:10] Host lookup of testnewcamd.no-ip.com failed

В данном случае причин может быть тоже несколько:

а) Существующий IP/Dydns адресс не существует и мы ошиблись в написании адресса в строке CWS.

б) В меню Communication Stup дримбокса есть ошибка в поле Default Gateaway и в строке Nameserver.

в) В раутере не включена поддержка DNS.

7) Newcamd запущен но ….

[newcamd -v6.00 23:21:44] compiled Jan 15 2005, 00:11:18
[newcamd -v6.00] uds bind: Address already in use
[newcamd -v6.00 23:21:44] Another instance of newcamd seems to be running. Shutting down.
[newcamd -v6.00 23:21:44] Check for other instances of newcamd, if none are found, delete file
[newcamd -v6.00 23:21:44] /tmp/camd.socket

Это говорит о том, что мы попытались запустить newcmad в тот момент, когда он уже работал. Соответственно процесс подключения к картам не возможен и newcamd не может быть запущен повторно. Для корректного запуска newcamd необходимо убедится, в том, что он не был запущен до этого, с помощью команды TOP и навсякий случай остановить его с помощью команды killall newcmad (или другое имя файла в зависимости от установленного имиджа).

На этом я остановлюсь с описанием возможных вариантов сообщений выводимых на экране консоли. То, что здесь описанно захватывает 90% из возможных вариантов. Любые другие сообщения должны быть понятны и без их подробного описания.

Коментарии:

Newcamd имеет прямое отношение к формированию «картинки» на экране и занимается подключением к серверу карт, как к локальному так и удалённому. Если сильно хочется ради эксперимента вы можете подключится к своей карте, как к удалённому серверу, прописав в строке CWS вместо % , ваш текущий интернет IP адрес (само- собой нужно в этом случае открыть в раутере порты которые отмечены в cardserv.cfg под соответствующими картоприёмниками).

Для подключения к НДС/Видеогард серверу необходимо использовать версию не старше 6.00

BETAD — конфигурация и принцип работы

Настройки Betad определяются файлом betad.cfg, содержимое которого описано ниже.

SERIAL_PORT = 0 – номер картоприёмника который будет использоваться Betad (0- верхний)
SERIAL_PORT = 1 — номер картоприёмника который будет использоваться Betad (1 – нижний). Дримбокс 500

USER = test test – имя пользователя и пароль с помощью которых newcamd будет подключён к betad в строке CWS.(пример был описан выше – см.описание newcamd).

BOXID = 0000000000
– если используется карта НДС/Видеогард, здесь нужно прописать 10-ти значный номер ресивера к которому привязанна эта карта. Если такой карты нет строчку можно неписать вообще!

Принцип работы:

Betad, как было описано выше был предназначен для возможности просмотра карт немецкого провайдер Premiere и не позволяет расшаривать ничего, что открывает он сам. В последующем была добавлена поддержка Firecrypt/DreamCrypt и НДС/Видеогард, но с тем же ограничением – нет шарингу !

Запуск Betad осуществляется таким же образом, как cardserver и newcamd (см.выше).

Коментарии:

При паралельной работе Betad с Cardserver нужно отключить тот слот, который будет использоваться Betad, в файле настройки cardserv.cfg, путём комментирования соответствующих строк символом # либо стирания их вообще!


Эмулятор OScam. Файлы конфигурации. Настройки.

Файлы конфигурации OSCAM
Обязательные файлы
oscam.conf —  Основной конфигурационный файл содержит глобальные параметры такие  как отладка,
 мониторинг, антикаскадинг, настройка доступа к картам от  пользователей
  по различным протоколам. Наличие секции [global] явлеется обязательным  остальные носят опциональный характер.
 -Файл содержит настройки доступа к серверам внешнего  и внутреннего  шаринга. Количество секций [reader] должно быть не менее одной.
oscam.user- Содержит учётные записи пользователей
oscam.dvbapi — Конфигурационный файл DVBAPI для OSCAM. Позволяет гибко настраивать  работу эмулятора с различными провайдерами.

1.2 Вспомогательные файлы
oscam.services -Содержит описания  CAID, ProvID, SID каналов. Позволяет организовывать правила для  фильтрации просмотра пакетов (каналов). Допускается до 64 секций.
oscam.srvid — Описания  service ID каналов (SID), служит только для отображения информации о просматриваемом канале при использовании монитора или   
web-интерфейса. Для экономии памяти рекомендуется оставить только описания реально используемых каналов.
oscam.provid — служит для получения дополнительной информации на основе CAID и ProvID   просматриваемых каналов при использовании монитора или web-интерфейса.

1.3 Дополнительные файлы
oscam.ac — Настройки антикаскадинга для OSCAM. Если не держите у себя на коммерческой основе сервер шаринга то можно не заморачиваться

1.4 Также в различных сборках oscam может использоваться файл
oscam.key — файл ключей обеспечивающий  работу эмулятора при просмотре каналов с известными ключами для различных кодировок

2. Основные настройки файлов конфигурации
2.1 oscam.conf

[global]

вывод лога в консоль, также можно использовать ввывод в файл  или в формате для syslog  —
logfile = [filename],[syslog],[stdout], по умолчанию logfile = /var/log/oscam.log
logfile  = stdout
отключение лога, по умолчанию   = 0 (лог включён)
disablelog  = 1
приоритет для процесса, может варьироваться от -20 до +20 (где -20 максимальный приоритет), учитывая   нетребовательность   oscam к ресурсам можно ставить поменьше.Если данный параметр отсутствует то по умолчанию принимается равным 99
nice  = -1
время   ожидания DW ключа. Максимальное время ожидания DW ключа от
сервера в   милисекундах, если за это время не будет # ответа – влоге мы
 увидим   timeout.При значении до 100 размерность учитывается не в милисекундах, а в секундах. По умолчанию = 5
clienttimeout  = 8000
повтор   запроса если нет ответа за это время. Время в милисекундах
от момента   ухода первого запроса на сервер по истечении, которого
будет повторный   запрос если ответ не получен, по умолчанию = 2500
fallbacktimeout = 4000
ожидание  внутреннего сервера CS перед  открытием  сетевых портов. По умолчанию = 0 (не ждать)
waitforcards = 1
длительность   дополнительной задержки в милисекундах после   
ожидания внутреннего   сервера CS  при запуске перед тем как открыть
сетевые порты. По умолчанию = 500
waitforcards_extra_delay =  800
пробовать декодировать запрос на внтуренних картах. По умолчанию = 0 (не пробовать)
preferlocalcards = 1
задержка перед отправкой DW в ресивер из кэша, некоторые ресиверы плохо переваривают слишком быстрый ответ. По умолчанию = 0 (без задержки)
cachedelay = 300
данный   параметр применяется в модификации от yuriks, служит для
присвоения   нулевого значения provID  для работы шары пакетов в
кодировке irdeto   (например Redlight HD)
setirdetoprov = 0
[monitor] #  секция подключения монитора по порту 988
port    = 988  
nocrypt = 192.168.0.0-192.168.255.255
aulow = 120
hideclient_to = 0
# уровень возможностей мониторинга
#  0 = no access to monitor
#  1 = only server and own procs
#  2 = all procs, but viewing only, default
#  3 = all procs, reload of oscam.user possible
#  4 = complete access
monlevel = 4
указывать в логе название канала
appendchaninfo = 1
[newcamd]# секция позволяющая расшарить карту для домашнего  (и не только) шаринга по протоколу newcamd
port = port@CAID:IDENT
как пример карта Триколора 52 серии
port= 10500@4AE0:15
как пример карта Триколора 13 серии
port = 10500@4AE1:11
key= 0102030405060708091011121314
[dvbapi] #  секция dvbapi
включение секции
enabled = 1
включение апдейта карт
au= 1
для нашего тюнера type именно так
boxtype = none
user = root
данный параметр снижает вероятность падения oscam
pmt_mode  = 5
#  PMT mode:
#  0 = use camd.socket and PMT file, default
#  1 = disable reading PMT file
#  2 = disable camd.socket
#  3 = read PMT file on startup only
#  4 = do not use signal handler for monitoring /tmp
#  5 = do not use signal handler for monitoring /tmp, disable camd.socket
параметр для ускорения переключения каналов
request_mode = 1
данный параметр должен помочь при удаленном апдейте карты
Force_Emm = 1
[anticasc] #  секция описывающая правила антикаскадинга
секция включена, если = 0  — anti-cascading отключен, по умолчанию = 0
enabled  = 1
кол-во юзеров на акаунт
numusers = 1
время измерительного периода
sampletime = 3
количество периодов для измерения, default:10
samples = 10
наказание
penalty = 1
#  Вид наказания:
#  0 = только запись в логе
#  1 = посылка ложных ответов  CWs
#  2 = отключение пользователя на время
fakedelay  = 200
количество  ложных ответов , по умолчанию 8
denysamples      = 9
AcLogfile       = /tmp/aclog.log
[webif] #  секция подключения web интерфейса  на  8080 порту
httpport = 8080
httpuser  = oscam
httppwd = oscam
обновление информации через 5 секунд, по умолчанию 7с
httprefresh = 5
httpallowed = 192.168.0.1-192.168.255.255
httphideidleclient= 0
доступ только для чтения
httpreadonly = 1
httpsavefullcfg = 0

2.2 oscam.server

[reader] # ридер для тюнера с одним слотом карт для 52 карты Триколора
метка ридера
label = tricolor
включение секции, если при отладке данная секция не нужна то = 0
enable     = 1
для нашего тюнера именно так
protocol   = stapi
если слот картридера всего один
device = SC0
принудительная установка CAID независимо от автодетекта
setdrecaid = 4AE0
если   клиенты шаринга с установленной  карты определяют ProviderID
на DRE   каналах (сам oscam легко справляется с различными идентами) в
противном   случае так ident      = 4AE0:000000,000015
ident = 4AE0:000015
параметр   для вызова списка из файла oscam.services для разрешённых к
 обработке   картой каналов. Описание параметров oscam.services ниже.
services   = tricolor_52
устанавливаем   как основной ридер
fallback = 0
group = 1
включаем кэш для EMM и отслеживаем записанные EMM
emmcache   = 1,3,2
#emmcache = usecache,rewrite,logging</p>
#set EMM cache of local reader:</p>
#usecache = 0|1 1 = enable EMM caching, default:0</p>
#rewrite  = determines how often one and the same EMM is written</p>
# logging  = EMM logging mask:
# 0 = EMM logging disabled
# 1 = logging EMM errors
# 2 = logging written EMMs
# 4 = logging skipped EMMs
# 8 = logging blocked EMMs
restart ридера в случае ошибки через 3 секунды
reset = 3
<[reader]  # ридер для
просмотра каналов триколора не открывающихся 52  картой (из  ридера выше) со внешнего сервера с фильтрацией с помощью  параметра  services
Label = tricolor_shara
enable   = 1
Protocol = newcamd
Key = 0102030405060708091011121314
Device   =  server,port
Account  =  login,pass
IDENT    = 4AE1:000011
организуем фильтрацию по SID каналов разрешённых или запрещённых к обработке на удалённом сервере шары
Вызов списка из файла oscam.services фильтра по SID для разрешённых к отправке на внешний сервер каналов.
services   = trikolor_13
вызов списка из файла oscam.services для запрещенных к обработке картой каналов. Описание параметров oscam.services ниже.
services   =! tricolor_52ignore
Group    = 1
fallback  = 0
время   в минутах, через которое происходит переподключение к серверу
 если   запросы отправляются, а ответы не приходят. По умолчанию = 30
ReconnectTimeout = 20
игнорировать ответ удаленного сервера если он отвечает только нулевым идентом вместо правильного 000011 для 13 карты.
disableserverfilter   = 1
[reader] # ридер для
тюнера с двумя картоприёмниками для карты NTV с   идентом    023700 и  
оплаченой подпиской только на базовый расширенный    пакет
label = ntv
enable  = 1
protocol = stapi
карта в верхнем  картоприемнике, SC0 — нижний
device = SC1   
ident    = 0500:023700
разрешаем запросы на карту только для  каналов  базового  расширенного   пакета за счёт фильтрации по классам
class = 07       
group  = 1
fallback = 0
emmcache = 1,3,2
[reader] #  ридер для внешнего сервера шары ntv на все пакеты кроме базового  расширенного   пакет
Label    = ntv_shara
enable   = 1
Protocol = newcamd
Key = 0102030405060708091011121314
Device   = server,port
Account  = login,pass
IDENT    = 0500:023700
разрешаем   запросы на на внешний сервер шаринга кроме  каналов
базового    расширенного   пакета – КОТОРЫЕ СМОТРИМ С КАРТЫ (смотри предыдущий   ридер)
class      = !07      
Group    = 1
fallback   = 0
ReconnectTimeout = 20

[reader] # ридер для внешнего сервера шары
Label    = All
enable   = 1
Protocol = newcamd
Key      = 0102030405060708091011121314
Device   = server,port
Account  = login,pass
IDENT    =  ……
# перечисляем необходимые пакеты, как пример для кодировки VIA
# IDENT    =  0500:023100,042300,024F00,032500,041700,042200,042400,042700,040810
Group    = 1
fallback  = 0
ReconnectTimeout = 20

[reader]  # ридер для внешнего  резервного сервера шары
Label    = All
enable   = 1
Protocol = newcamd
Key      = 0102030405060708091011121314
Device   = server_rezerv,port_rezerv
Account  = login_rezerv,pass_rezerv
IDENT    =
# перечисляем необходимые пакеты, как пример для кодировки VIA
# IDENT    =  0500:023100,042300,024F00,032500,041700,042200,042400,042700,040810
Group    = 1
Если   имеется резервный сервер шаринга то можно задать дополнительно
 его   дополнительно к основному параметром   fallback         = 1  при
этом   запрос шлется на ридеры с fallback = 0 (если етого параметра в
ридере   нету — значит он равен 0) если через время fallbacktimeout (по
умолчанию   2500 ms)нету ответа — то запрос шлется на ВСЕ ридеры —
тоесть повторно   на ридеры с fallback = 0 и первый раз на с ридеры
fallback = 1
fallback = 1
ReconnectTimeout = 20

2.3 oscam.user

[account]  #   Программа мониторинга</p>
user = monitor
pwd = monitor
monlevel  = 4

[account] #   свой акканаунт
user   = root
pwd  = root
group  = 1
monlevel  = 4
разрешаем апдейт 52 карты триколор   для пользователя root (см. первый ридер в oscam.server  с label = tricolor)
au = tricolor
разрешаем апдейт  карты ntv  для пользователя root (см. третий ридер в oscam.server  с label = ntv)
# au  = ntv
ниже перечисляем все пакеты CAID:IDENT которые будем смотреть
ident =  4AE0:15;0500:023700,023100,042300,024F00,032500,041700,042200,042400,042700,040810;4AE1:000011;0628:0
для каналов в кодировке irdeto вписываем не только caid и ident , но и рабочий chid (узнаём у провайдера шары)
ChID = 0628:EFF1
разрешаем    периодическую посылку пакетов от клиента к серверу,
чтобы сервер  знал,  что клиент подключен и не разрывал соединение по
тайм-ауту  отсутствия  активности.
keepalive = 1

[account] #   акканаунт для тех кто будет смотреть с нашей карты (home  shara)
user = user1  # то что нужно вписать в клиентах для  домашней шары  — login
pwd = user 1 # и pass
#  1 = account отключён
group = 1
uniq = 0
sleep = 0
monlevel = 4
разрешаем просмотр с нашей 52 карты триколора  (смотри первый  ридер   в oscam.server)
ident   = 4AE0:0,15
services   = tricolor_52 # (смотри первый ридер в oscam.server)
разрешаем просмотр с  нашей  карты ntv с подпиской на базовый расширенный   пакет
#ident    = 0500:023700
# class= 07 #   (смотри третий  ридер в oscam.server)
keepalive = 1
numusers = 0
penalty = 0

2.4 oscam.dvbapi

[services1] # название

caid     =  …       # CAID
provid   = …     # IDENT
srvid    = …       # SID

как пример для ридеров для просмотра Триколора рассмотренных при описании файла oscam.server

[trikolor_52] # Caid, ident и SID каналов открываемой 52 картой триклолора (пакет Оптимум)
caid     = 4AE0
provid   = 15
srvid    = 0385,0386,0387,0388,0389,038A,038D,038E,0D49,0D4A,0D4B,0D4C,0D4D,0D4E,0D4F,61A8,
61B2,61BC,61C6,61D0,61DA,61E4,61EE,61F8,6202,6978,697D,6982,6987,698C,6991,6996,69A0,69AA,
69B4,69BE,69D2,69DC,69E6,003B,019A,7922,792C,7936,7940,794A,795E,7954,7968,7972,0D50,0D51,0D53,0D54
[trikolor_13]
#   Caid, ident и SID каналов открываемой 13 картой триклолора пакеты   
Ночной, Наш футбол, Экран и Кинозал то что будем смотреть по шаре.
caid     = 4AE1
provid   = 11
srvid    = 014E,014F,0150,0151,038B,038C,69F0,6915,6916,6917,6918,6919,691A,691B,691C,691D,691E,691F,
6920,0A29,0A2A,0A2B,0A2C,0A2D,012D,012E,012F,0130,0131,0132,0133,0134,0135,0136,0137,0138,0139,
013A,013B,013E,013F,0140,0141,0142,0143,0144,0145,0146,0147,0148,014A,014B,014C

[trikolor_52ignore]
 # Caid, ident и SID каналов открываемой 13 картой триклолора (пакет Оптимум) – открывается нашей картой (первый ридер в oscam.server  с   
label = tricolor) поэтому в oscam.server данный список не допускается к
  обработке ридером параметром     services   =! tricolor_52ignore
caid     = 4AE1
provid   = 11
srvid    = 0385,0386,0387,0388,0389,038A,038D,038E,0D49,0D4A,0D4B,0D4C,0D4D,0D4E,0D4F,61A8,61B2,61BC,61C6,61D0,
61DA,61E4,61EE,61F8,6202,6978,697D,6982,6987,698C,6991,6996,69A0,69AA,69B4,69BE,69D2,69DC,69E6,003B,019A,
7922,792C,7936,7940,794A,795E,7954,7968,7972,0D50,0D51,0D53,0D54
PS<
В   данном файле можно реализовать любые задачи для фильтрации по SID   
каналов, включив как все каналы пакета, так и произвольный выбор каналов
которые будут обрабатываться (параметр  services   = ….) или   
игнорироваться (параметр  services   =!….)  ридерами.</p>
Приятного просмотра.