iCAM и OScam на Windows: установка и настройка 2026

Если ты ищешь конкретную инструкцию по запуску icam oscam windows — значит, уже знаешь что такое CCcam, имеешь карту или подписку, и хочешь обойтись без роутера на OpenWrt или Enigma2-коробки. Это рабочий гайд. Без воды, с реальными командами и примерами конфигов.

Сразу предупреждение: cardsharing требует лицензионной карты в вашей юрисдикции. Использование чужих подписок может нарушать законодательство вашей страны — это на вашей ответственности.

Что такое iCAM и чем он отличается от классического OScam

iCAM как форк OScam: история и отличия

OScam — это open-source условный доступ к спутниковым каналам, активная разработка шла до 2020-х годов. iCAM появился как независимая ветка с фокусом на современные криптосистемы, которые в основном OScam не поддерживает или поддерживает плохо. Главное отличие — нативная работа с Nagra Merlin (CAID 0x1830) и BISS2.

Репозиторий iCAM менее публичен, обновляется нерегулярно. Но для людей, которым нужен Merlin или BISS2 на Windows-машине, альтернатив практически нет.

Поддерживаемые протоколы: CCcam, CS378x, Newcamd, GBox

Оба — и iCAM, и OScam — поддерживают один и тот же набор протоколов для обмена Control Words:

  • CCcam — самый распространённый, порт по умолчанию 12000
  • CS378x — шифрованный вариант CCcam с DES-ключами, порт 15000
  • Newcamd — используется Enigma2-ресиверами, диапазон 10000–14000
  • GBox — старый протокол, встречается реже
  • CAMD3 — ещё один legacy-протокол

Почему именно Windows-сборка нужна не всем

Честно: если у вас есть роутер на Padavan/OpenWrt или Enigma2-ресивер — ставьте OScam там. Linux-сборки собираются элементарно, стабильнее работают, потребляют меньше ресурсов.

Windows нужен когда: нет выделенного Linux-устройства, ПК работает 24/7, или когда Windows-машина уже используется для DVB-карты с DVBViewer или ProgDVB. Вот тут запуск icam oscam windows обретает смысл.

Сравнение с OScam-emu и oscam-stream

Версия Nagra Merlin BISS2 PowerVU (emu) Stream relay Windows-сборка
OScam (оригинал) Нет Нет Нет Нет Через MSYS2
OScam-emu Частично Нет Да (программно) Нет Через MSYS2
iCAM Да Да Нет Нет Через MSYS2
oscam-stream Нет Нет Нет Да Через MSYS2

Установка iCAM/OScam на Windows: пошаговая инструкция

Системные требования и зависимости

Минимум для сборки: Windows 10 64-bit, 4 ГБ RAM, 2 ГБ свободного места под MSYS2 и зависимости. Для самого OScam после сборки достаточно 50 МБ и процессора уровня Atom — он практически не потребляет ресурсов.

Нужен MSYS2 — это Unix-окружение для Windows с пакетным менеджером pacman. Скачивается с msys2.org, устанавливается в C:\msys64\.

Сборка из исходников через MSYS2/MinGW-w64

После установки MSYS2 открываем терминал MSYS2 MinGW 64-bit (не MSYS2 MSYS, именно MinGW 64-bit — иначе exe не будет работать вне окружения). Устанавливаем зависимости:

pacman -Syu
pacman -S mingw-w64-x86_64-gcc mingw-w64-x86_64-make mingw-w64-x86_64-libusb mingw-w64-x86_64-openssl git

Клонируем репозиторий OScam (для iCAM — аналогично, только URL репозитория iCAM):

git clone https://github.com/oscam-emu/oscam-patched.git oscam
cd oscam
./config.sh --enable all
make -j$(nproc)

Сборка занимает 3–7 минут. Результат — файл oscam.exe в текущей директории. Если видите ошибки про отсутствующие заголовочные файлы — скорее всего не хватает пакета. Проверяйте через pacman -Ss <имя_библиотеки>.

Важный момент: после сборки скопируйте oscam.exe вместе со всеми DLL из C:\msys64\mingw64\bin\ которые нужны бинарнику. Проверить зависимости можно через ldd oscam.exe в MSYS2. Без нужных DLL exe не запустится вне MSYS2-окружения.

Использование готовых Windows-бинарников (риски)

На форумах иногда выкладывают готовые oscam.exe сборки. Это работает, но есть риски: бинарник может содержать модифицированный код, встроенные ключи или вообще малварь. Антивирусы будут ругаться на любую сборку — и на вашу собственную тоже. Но если скачиваете чужую — проверяйте хэш, используйте только проверенные источники с длинной историей и открытым кодом сборки.

Размещение файлов: рабочая директория и структура папок

Никогда не кладите OScam в C:\Program Files\. Там нужны права администратора на запись, а OScam постоянно пишет логи и обновляет конфиги. Стандартная структура:

C:\oscam\
├── oscam.exe
├── *.dll (зависимости MinGW)
└── config\
    ├── oscam.conf
    ├── oscam.server
    ├── oscam.user
    └── oscam.services

Если в пути к папке есть кириллица — будут проблемы. C:\Оскам\ не запустится. Только латиница в пути.

Запуск как обычное приложение vs Windows-служба через NSSM

Для тестов просто запускаем из командной строки:

C:\oscam\oscam.exe -c C:\oscam\config -b

Флаг -b — фоновый режим. Без него окно консоли нельзя закрыть.

Для постоянной работы нужна Windows-служба. Лучший инструмент для этого — NSSM (Non-Sucking Service Manager). Скачиваем nssm.cc, кладём nssm.exe в C:\oscam\. Установка службы:

C:\oscam\nssm.exe install OScam C:\oscam\oscam.exe -c C:\oscam\config
C:\oscam\nssm.exe set OScam AppDirectory C:\oscam
C:\oscam\nssm.exe set OScam Start SERVICE_AUTO_START
net start OScam

После этого OScam запускается автоматически при загрузке Windows, без активной сессии пользователя.

Базовая конфигурация: oscam.conf, oscam.server, oscam.user

oscam.conf: секции global, monitor, webif, cccam

Минимальный рабочий oscam.conf для Windows:

[global]
logfile                       = C:/oscam/log/oscam.log
loglevel                      = 2
cwlogdir                      = C:/oscam/log/cw
preferlocalcards              = 1
saveinithistory               = 1
waitforcards                  = 120
inactivitytimeout             = 30
reconnecttimeout              = 30

[monitor]
port                          = 988

[webif]
httpport                      = 8888
httpuser                      = admin
httppwd                       = changeme
httpallowed                   = 127.0.0.1,192.168.0.0-192.168.255.255
httpsavereqdir                = C:/oscam/log/

[cccam]
port                          = 12000
version                       = 2.3.0
reshare                       = 0

Обратите внимание на слеши. В Windows OScam понимает как прямые /, так и экранированные обратные \\. Прямые слеши — проще и надёжнее. C:/oscam/log/ работает корректно.

oscam.server: настройка reader для CCcam и CS378x клиентов

[reader]
label                         = my_cccam_server
protocol                      = cccam
device                        = host.example.com,12000
user                          = myuser
password                      = mypassword
cccversion                    = 2.3.0
cccmaxhops                    = 2
group                         = 1
inactivitytimeout             = 30
reconnecttimeout              = 30

Для CS378x reader выглядит иначе — нужен DES-ключ:

[reader]
label                         = my_cs378x_server
protocol                      = cs378x
device                        = host.example.com,15000
user                          = myuser
password                      = mypassword
des_key                       = 0102030405060708091011121314
group                         = 1

oscam.user: создание локальных пользователей

[account]
user                          = localreceiver
pwd                           = receiverpassword
group                         = 1
au                            = 1
services                      = myservices
uniq                          = 4

Параметр uniq = 4 запрещает одновременные подключения с одного аккаунта — хорошая практика.

oscam.services: привязка caid/provid к группам

[myservices]
caid                          = 1830,0500,0604
provid                        = 000000

CAID 0x1830 — Nagra Merlin, 0x0500 — Viaccess, 0x0604 — Irdeto. Список зависит от того, что вещает ваш спутниковый провайдер.

Корректные пути в Windows: прямые vs обратные слеши

Краткое правило: везде используйте прямые слеши. C:/oscam/config работает. C:\oscam\config — иногда работает, иногда нет, зависит от версии сборки. C:\\oscam\\config — тоже работает, но зачем усложнять.

Папки для логов нужно создать заранее вручную — OScam не создаёт их автоматически на Windows.

Подключение к cardsharing-серверу через CCcam и CS378x

Формат C-line и его перенос в oscam.server

C-line в классическом CCcam формате выглядит так:

C: host.example.com 12000 username password

В oscam.server это превращается в:

[reader]
label                         = server1
protocol                      = cccam
device                        = host.example.com,12000
user                          = username
password                      = password
cccversion                    = 2.3.0
group                         = 1

Заметьте: между хостом и портом в device — запятая, не пробел.

Различия CCcam (port 12000) и CS378x (port 15000)

CCcam передаёт CW в открытом виде (только TCP, без шифрования линка). CS378x добавляет слой шифрования на основе DES — это стандартный порт 15000. Если сервер требует CS378x, он должен прислать вам DES-ключ. Без правильного ключа будет AUTH_ERROR.

Проверка соединения через веб-интерфейс

Открываем http://127.0.0.1:8888. Вкладка Readers покажет статус каждого reader: CONNECTED, CONNECT_ERROR или AUTH_ERROR.

CONNECT_ERROR — TCP не достигает сервера. Проверяем файрвол, пингуем хост, пробуем Test-NetConnection host.example.com -Port 12000 в PowerShell. Если TcpTestSucceeded: False — проблема на сетевом уровне или сервер недоступен.

AUTH_ERROR — TCP подключился, но сервер отверг логин/пароль. Либо неверные данные, либо версия CCcam не совпадает — попробуйте изменить cccversion на 2.2.1 или 2.1.4.

Шифрование линка: DES-ключи для CS378x

DES-ключ для CS378x — это 14-байтовый hex-ключ (28 символов). Он передаётся провайдером вместе с логином/паролем. Прописывается в секции reader как des_key = 0102030405060708091011121314. Если ключ неверный — handshake провалится сразу после TCP-соединения, в логе увидите invalid DES key.

Что смотреть в логе при ошибках handshake

Для диагностики временно выставляем loglevel = 4 в oscam.conf. В логе ищем строки с именем reader. CCcam handshake проходит в несколько шагов — SENT CMD 01, RECV CMD 02 и так далее. Обрыв на конкретном шаге укажет на причину: сетевая проблема, неверная версия протокола, неправильный пароль.

Отладка и решение типичных проблем на Windows

Логирование: logfile, loglevel, cwlogdir

По умолчанию loglevel = 2 — только важные события. При отладке ставим 4, это полный verbose. Файл лога пишется по пути из logfile в oscam.conf. Папку создайте заранее.

Параметр cwlogdir пишет отдельный лог Control Words — полезно для проверки что расшифровка вообще происходит.

Брандмауэр Windows блокирует порты

При первом запуске Windows Defender Firewall может показать диалог — разрешаем. Если диалог не появился или был закрыт случайно, добавляем правила вручную в PowerShell (от администратора):

New-NetFirewallRule -DisplayName "OScam WebIF" -Direction Inbound -Protocol TCP -LocalPort 8888 -Action Allow
New-NetFirewallRule -DisplayName "OScam CCcam" -Direction Inbound -Protocol TCP -LocalPort 12000 -Action Allow
New-NetFirewallRule -DisplayName "OScam CS378x" -Direction Inbound -Protocol TCP -LocalPort 15000 -Action Allow
New-NetFirewallRule -DisplayName "OScam Newcamd" -Direction Inbound -Protocol TCP -LocalPort 10000-14000 -Action Allow

Это нужно если к вашему OScam на Windows подключается ресивер или другой клиент в сети. Для исходящих подключений к серверу правила не нужны — исходящий трафик Windows не блокирует по умолчанию.

Проблемы с правами на запись в C:\Program Files

Уже упоминалось, но повторю: C:\Program Files\ — это мусорный выбор для OScam. Каждая запись лога будет требовать UAC-повышения. Либо будет молча падать с ошибкой прав. Только C:\oscam\ или аналогичная папка в корне диска.

Антивирусы помечают oscam.exe как угрозу

Это гарантированно случится. Windows Defender, Kaspersky, ESET — все они реагируют на oscam.exe эвристически: работа с криптографией, сетевые подключения, нестандартные порты. Это false positive, но объяснять это антивирусу бесполезно.

Решение: добавить папку C:\oscam\ целиком в исключения. В Windows Defender: Параметры → Безопасность Windows → Защита от вирусов → Параметры защиты → Исключения → Добавить папку. Аналогично в любом другом антивирусе.

Если собирали бинарник сами через MSYS2 — можете быть уверены в его содержимом. Чужие бинарники из сомнительных источников — на ваш страх и риск.

Конфликт портов с другими службами (IIS, Skype)

IIS по умолчанию занимает порт 80 и 443. Skype исторически занимал 80 и 443 тоже. Webif OScam на 8888 с этим не конфликтует. Но если вы меняете порт webif на что-то стандартное — проверьте через:

netstat -ano | findstr :8888

Если порт занят — смотрите PID в последней колонке, потом tasklist | findstr <PID> чтобы узнать процесс.

Отдельная боль — Hyper-V и WSL2. Они резервируют диапазоны портов, и часто 12000–15000 попадает под резервирование. Проверить:

netsh int ipv4 show excludedportrange protocol=tcp

Если ваши порты там есть — добавляем исключение до запуска Hyper-V. Нужно выполнить в командной строке от администратора до следующей перезагрузки (или отключить Hyper-V если не нужен):

netsh int ipv4 add excludedportrange protocol=tcp startport=12000 numberofports=100

Подключение ресивера или IPTV-плеера к iCAM на Windows

Enigma2-ресивер как клиент: настройка newcamd reader на ресивере

На ресивере Enigma2 конфиг newcamd находится в /etc/tuxbox/config/newcamd.list. Формат строки:

CWS_MULTIPLE = 192.168.1.100 14000 username password 01 02 03 04 05 06 07 08 09 10 11 12 13 14

Здесь 192.168.1.100 — IP вашей Windows-машины, 14000 — порт из oscam.server, 14 байт после пароля — DES-ключ newcamd (должен совпадать с key в секции account в oscam.user).

На стороне OScam в oscam.conf нужна секция:

[newcamd]
port                          = 14000@1830:000000
key                           = 0102030405060708091011121314

DVB-карта на ПК: TBS, TechniSat, через BDA-драйвер

Карты TBS (например TBS5520SE) и TechniSat работают через BDA-драйверы в Windows. DVBViewer или ProgDVB видят карту как BDA-устройство. OScam при этом запускается отдельно и выступает как CAS-сервер для плеера.

Проблема "DVB-карта работает в DVBViewer, но OScam не получает ECM" почти всегда означает неправильную настройку плагина. DVBViewer должен слать ECM через CAM-плагин на OScam, а OScam возвращать CW. Проверяем что в настройках DVBViewer в разделе CI/CAM выбран правильный CI-слот или программный CAM.

Интеграция с DVBViewer и ProgDVB

DVBViewer поддерживает плагин DVBViewerOSCam — это MMI-модуль, который связывает DVBViewer с запущенным OScam через локальный сокет. Устанавливается отдельно, конфигурируется через интерфейс DVBViewer → Настройки → CAM.

ProgDVB использует модуль OScam-CWS. Логика та же: ProgDVB отправляет ECM в OScam, получает CW обратно. Модуль нужно скачать отдельно и положить в папку плагинов ProgDVB.

Использование iCAM для потоков IPTV (oscam-stream)

Для расшифровки IPTV-потоков нужна отдельная сборка с поддержкой stream relay — oscam-stream. Стандартный oscam.exe или icam.exe эту задачу не решают. oscam-stream принимает зашифрованный UDP/RTP-поток, расшифровывает CW и отдаёт расшифрованный поток на другой порт. Сборка аналогичная — через MSYS2, но с включённым модулем stream при сборке: ./config.sh --enable stream.

Если нужен именно этот сценарий для icam oscam windows — убедитесь что собираете именно с флагом stream, иначе функции просто не будет в бинарнике.

Параметр serverip в oscam.conf решает проблему с несколькими сетевыми интерфейсами — когда на машине и VPN, и Ethernet, OScam может забиндиться не на тот IP. Явно указываем:

[global]
serverip                      = 192.168.1.100

Это скажет OScam слушать только на конкретном интерфейсе. Полезно когда клиенты в локальной сети, а VPN-адрес менять не хочется.

Существует ли официальный установщик iCAM или OScam для Windows?

Нет. Ни iCAM, ни OScam не имеют официальных MSI или EXE инсталляторов. Доступны только исходники — собирать через MSYS2/MinGW-w64 как описано выше. На форумах встречаются неофициальные готовые бинарники, но их использование — на ваш страх и риск. Состав сборки непрозрачен, наличие посторонних модулей проверить сложно.

Какие порты нужно открыть в брандмауэре Windows для OScam?

Минимальный набор: 8888 TCP (webif-интерфейс), 12000 TCP (CCcam), 15000 TCP (CS378x), 10000–14000 TCP (newcamd, если используете Enigma2-ресивер). Конкретные порты зависят от настроек в вашем oscam.conf и oscam.server — сверяйтесь с ними, а не с дефолтами.

Почему oscam.exe запускается, но webif на localhost:8888 не открывается?

Три самые частые причины. Первая: секция [webif] вообще отсутствует в oscam.conf или параметр httpport не задан. Вторая: параметр httpallowed ограничивает доступ конкретными IP, и 127.0.0.1 там нет. Третья: порт 8888 занят другим процессом. Проверяем через netstat -ano | findstr :8888 — если строка есть и PID не oscam.exe, меняем порт.

Можно ли запустить iCAM как службу Windows для автозапуска при загрузке?

Да, через NSSM. Скачиваем nssm.exe, затем: nssm install OScam C:\oscam\oscam.exe -c C:\oscam\config. Потом net start OScam. Служба запустится автоматически при загрузке Windows и будет работать без активной пользовательской сессии. NSSM также умеет автоматически перезапускать службу при краше — настраивается во вкладке Failure в графическом интерфейсе nssm edit OScam.

Почему антивирус удаляет oscam.exe и как этого избежать?

OScam работает с криптографией, устанавливает TCP-соединения на нестандартные порты — эвристики большинства антивирусов это не любят. Решение простое: добавить папку C:\oscam\ в исключения Windows Defender или вашего антивируса. Если собирали бинарник сами через MSYS2 — можно быть уверенным в его содержимом. Чужие бинарники всегда проверяйте через VirusTotal перед запуском.

В чём разница между iCAM и OScam-emu, что выбрать на Windows?

OScam-emu содержит программные эмуляторы для PowerVU и TandbergNagra — полезно если карты нет, а нужна программная эмуляция (в рамках закона и лицензии). iCAM делает упор на аппаратную поддержку Nagra Merlin (CAID 0x1830) и BISS2. Для классического cardsharing с картой — разница минимальна, выбирайте любой. Если нужен конкретный CAID из списка выше — смотрите по поддержке.

Работает ли iCAM на Windows под управлением ARM-процессора (Surface, Snapdragon)?

Плохо. Нативных ARM64-сборок под Windows практически нет. MSYS2 на ARM-Windows работает в режиме эмуляции x64, производительность падает. Для ARM-устройств (Surface Pro X, машины на Snapdragon X Elite) намного лучше использовать WSL2 с Ubuntu — там собирается нативная ARM64-сборка OScam/iCAM без эмуляции, и работает корректно.

Практические советы для стабильного просмотра

Даже самая стабильная линия 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 или внешние мониторы.