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 или внешние мониторы.