Loading...

Alternative a CCcam: OScam, mgcamd& Altro a confronto

Se stai leggendo questo, il tuo server CCcam probabilmente si blocca durante i cambi di canale, va in timeout sugli ECM durante le ore di punta, o sei semplicemente stanco di dover gestire un binario closed-source che non ha ricevuto un vero aggiornamento da anni. Non hai torto a cercare altrove. Questo articolo esplora le attuali opzioni alternative per la configurazione di cccam che esistono in questo momento — OScam, mgcamd, NCam — cosa fa ciascuna in modo diverso sotto il cofano e come trasferire la tua configurazione esistente senza rompere tutto il primo giorno.

Ho utilizzato tutti e tre questi su box Enigma2 e un paio di server Linux senza interfaccia grafica nel corso degli anni. Nessuno di essi è perfetto, ma le differenze contano molto a seconda che tu stia eseguendo un lettore, un client, o entrambi. Entriamo nel merito.

Perché guardare oltre CCcam in primo luogo

CCcam 2.3.0 — l'ultima versione che la maggior parte delle persone utilizza realmente — è closed-source. Non c'è un repository pubblico, nessuna cronologia di commit da ispezionare e nessuna correzione della comunità per i bug quando si presentano. Lo sviluppo è effettivamente stagnato anni fa. Se un nuovo aggiornamento CAS rompe qualcosa nella gestione del tuo fornitore, aspetti. Non c'è altra opzione perché nessuno al di fuori dell'autore originale ha il codice sorgente.

Questa natura chiusa colpisce di più nella gestione degli ECM. CCcam elabora le richieste di schede in un modo che non scala bene quando un peer o un lettore diventa occupato — vedrai congelamenti durante il cambio canale che durano diversi secondi, a volte di più, su server con molti client concorrenti. Non è multi-threaded come le moderne alternative, quindi un lettore lento può bloccare tutto ciò che si trova a valle.

Non ti offre nemmeno un controllo dettagliato sull'hardware locale. Se hai un lettore Smargo o Phoenix collegato a una porta USB e vuoi che CCcam comunichi direttamente con esso gestendo correttamente il protocollo, sei bloccato. CCcam è stato costruito principalmente come un client/server di condivisione in rete, non come una piattaforma di gestione dei lettori.

Il problema di CCcam con codice sorgente chiuso e sviluppo stagnante

Nessuna sorgente pubblica significa nessun modo per controllare cosa sta realmente accadendo all'interno del binario e nessun percorso per la comunità per risolvere i problemi quando un operatore satellitare cambia la propria gestione CAS. Sei completamente dipendente da binari compilati anni fa che continuano a funzionare correttamente con i formati ECM attuali. Finora lo fanno per lo più — ma "per lo più" non è una grande scommessa a lungo termine.

Dove CCcam regge ancora (e perché le persone lo mantengono)

Sarò onesto — se tutto ciò di cui hai bisogno è un client stupido che si connette a una o due linee del protocollo CCcam e restituisce canali decrittati, CCcam fa ancora bene quel lavoro. La configurazione è un singolo file piatto, è leggera in RAM e non c'è nulla da ottimizzare. Per una box che rimane semplicemente lì a ricevere una linea e non tocca lettori locali, rimuoverla non vale sempre il disturbo.

Segnali che è tempo di migrare: congelamenti, timeout ECM, nessuna flessibilità del lettore locale

Fai attenzione a queste tre cose specificamente. Prima, congelamenti ripetuti di 3-5 secondi o più quando cambi canale durante le ore di punta serali — questo è il backup della coda ECM. Secondo, timeout nel tuo log che continuano a colpire lo stesso peer anche se la tua connessione è stabile. Terzo, se hai acquistato un lettore locale e CCcam semplicemente non riesce a gestirlo come hai bisogno — questo è il tuo segnale per guardare un'alternativa alla configurazione di cccam piuttosto che combattere con il software che hai già.

Le principali alternative a CCcam a confronto

Ci sono davvero tre softcam da considerare come alternativa alla configurazione di cccam nel 2026: OScam, mgcamd e NCam. Ognuna occupa una nicchia diversa e scegliere quella sbagliata per il tuo caso d'uso crea solo nuovi mal di testa.

OScam — il cavallo di battaglia open-source (lettori, protocolli, webif)

OScam è quella su cui la maggior parte delle persone finisce. È open-source, attivamente mantenuta e multi-threaded — il che significa che un lettore o un peer lento non blocca tutto il resto. Parla newcamd (tipicamente legato per lettore a partire dalla porta 15000, anche se lo imposti tu stesso), il protocollo client/server nativo di cccam, camd35, radegast e protocolli gbox tutti dallo stesso binario. Può gestire lettori Smargo e Phoenix locali tramite seriale/USB (solitamente enumerati come /dev/ttyUSB0), e viene fornito con una corretta interfaccia web per il monitoraggio in tempo reale. Se vuoi un softcam che faccia tutto ciò che fa CCcam più gestione dei lettori locali e supporto multi-protocollo, questa è la scelta giusta.

OScam-Emu / fork di NCam — quando hai bisogno di emulazione o supporto CAS extra

NCam è un fork di OScam che integra supporto CAS aggiuntivo e funzionalità di emulazione (gestione di CW costante / SoftCam.Key) più velocemente di quanto faccia a volte OScam principale. Esistono rami OScam-Emu per motivi simili. Se il tuo fornitore o la tua configurazione ha bisogno di supporto per l'emulazione che la versione vanilla di OScam non ha ancora integrato, uno di questi fork vale la pena provare — il formato di configurazione è quasi identico a OScam, quindi la migrazione tra di essi è banale.

mgcamd — client newcamd leggero

mgcamd è piccolo, veloce da configurare e puramente un client — non ha ruolo di server e non può gestire lettori di smartcard locali. La configurazione vive in due file: newcamd.list per le tue voci di linea e mg_cfg per le impostazioni globali. Se hai una box a bassa specifica, o vuoi solo un client leggero che estrae una o due linee newcamd con un'impronta di RAM minima, mgcamd è davvero bravo in quel lavoro. Non aspettarti che sostituisca OScam per qualsiasi cosa oltre a questo.

gbox e opzioni legacy — per lo più storiche

gbox esiste ancora e alcuni sharer old-school giurano sul suo modello peer-to-peer, ma è una scelta di nicchia a questo punto — per lo più mantenuta in vita da persone che hanno costruito la propria rete attorno ad essa un decennio fa. OScam supporta nativamente il protocollo gbox se hai bisogno di collegarti a una rete gbox esistente senza eseguire gbox stesso.

Matrice delle funzionalità: supporto per protocolli, supporto per lettori locali, gestione del carico, sviluppo attivo

SoftcamProtocolliSupporto per lettori localiGestione del caricoSviluppo attivo
CCcam 2.3.0CCcam, newcamd (client)LimitatoSingle-threaded, si blocca sotto caricoStagnante
OScamCCcam, newcamd, camd35, radegast, gboxCompleto (Smargo, Phoenix, PCSC)Multi-threadedAttivo
mgcamdnewcamdNessunoLeggero, solo clientOccasionale
NCamStesso di OScam + extra CASCompletoMulti-threadedAttivo

Migrazione da CCcam.cfg a OScam

Questa è la parte che la maggior parte degli articoli di confronto salta completamente, ed è la parte che conta davvero se stai cambiando. Il tuo CCcam.cfg esistente ha righe come questa per ogni peer a cui ti connetti:

C: 123.45.67.89 12000 myuser mypass

Questo corrisponde a un OScam[reader] blocco in oscam.server:










Ilcccversion campo è più importante di quanto la gente pensi. Alcuni peer si connettono correttamente solo a 2.0.11, altri si aspettano 2.1.1 o 2.3.0 — se sbagli, vedrai una connessione che si stabilisce e poi si interrompe immediatamente. Se un peer che hai migrato fallisce silenziosamente, questa è la prima cosa da controllare.

Mappare una C-line CCcam a un blocco [reader] OScam

Ogni C-line nella tua vecchia configurazione diventa una strofetta reader. Dai a ciascuna unlabel distinto e assegnalo a ungroup numero — i gruppi sono come controlli quali client hanno accesso a quali lettori più avanti in oscam.user. Se avevi dieci C-line, avrai dieci blocchi reader, il che sembra noioso ma è un lavoro di cinque minuti di trova-e-sostituisci una volta che vedi il modello.

I file di configurazione principali: oscam.conf, oscam.server, oscam.user, oscam.services

OScam suddivide la configurazione in diversi file invece di un unico file piatto come CCcam.cfg. oscam.conf contiene impostazioni globali sotto sezioni come[globale],[cs357x],[cccam], e[webif]. oscam.server contiene le definizioni dei tuoi lettori (cosa facevano le C-line di CCcam.cfg). oscam.user definisce i client autorizzati a connettersi al tuo box, le loro impostazioni di AU (aggiornamento automatico) e quali gruppi di lettori possono raggiungere. oscam.services è per il filtraggio SID, di cui parleremo più avanti. Nella maggior parte delle immagini Enigma2 questi si trovano in /etc/tuxbox/config/oscam/, anche se alcune immagini usano /var/keys/ o /usr/keys/ invece — controlla confind / -name "oscam.server" 2>/dev/null se non sei sicuro di quale utilizzi la tua immagine.

Abilitare l'interfaccia web (httpport = 8888) per il monitoraggio in tempo reale

Sotto[webif] in oscam.conf, impostahttpport = 8888 e un nome utente/password. Riavvia OScam e punta un browser all'IP del tuo box sulla porta 8888. Questa singola funzionalità vale la pena attivarla da sola — ottieni lo stato del lettore in tempo reale, il tempo ECM per client e i log delle connessioni senza dover seguire file di testo tramite SSH.

Impostare lo scambio di cache (CSP) e le opzioni anti-freeze

Lo scambio di cache (cacheex) consente ai server OScam di condividere parole di controllo già decodificate tra loro, il che riduce drasticamente il carico ECM quando stai eseguendo più box. La modalità 1 invia solo, la modalità 2 riceve solo e la modalità 3 fa entrambe le cose. Fai attenzione con la modalità 3 tra più di due server — se non imposti correttamente i limiti di salto cacheex puoi finire con tempeste di CW che rimbalzano le stesse voci di cache in loop tra i server, il che aumenta effettivamente il carico invece di ridurlo. Inizia con la modalità 1/2 tra due box prima di provare una rete completa in modalità 3.

Mantenere CCcam e OScam affiancati durante la transizione

Non devi passare in modo cieco. Esegui OScam su un set di porte diverso (diciamo newcamd su 15001 invece della solita 12000 di CCcam) mentre CCcam continua a funzionare sulla sua porta originale. Su Enigma2 imposti quale softcam è "attiva" per la decrittazione nel gestore di softcam dell'immagine, ma entrambi i binari possono essere installati e configurati simultaneamente. Testa la tua configurazione OScam contro canali reali per alcuni giorni prima di attivare l'interruttore e disabilitare completamente CCcam. Questo è il modo più sicuro per convalidare un'alternativa di configurazione cccam senza rischiare tempi di inattività su un box di cui ti fidi effettivamente.

Testare e risolvere problemi con la tua nuova configurazione

Una volta che OScam è in esecuzione, la pagina di stato dell'interfaccia web è dove trascorrerai la maggior parte del tuo tempo di risoluzione dei problemi. Ogni connessione client mostra un tempo ECM in millisecondi — sotto 400ms è sano e non dovresti notare alcun ritardo nel cambiare canali. Una volta che vedi costantemente 800ms o più, qualcosa non va a monte, sia un peer sovraccarico che un lettore in difficoltà.

Leggere la pagina di stato dell'interfaccia web di OScam (tempo ECM, CW, codici rc)

La colonna rc (codice di ritorno) ti dice cosa è realmente successo con ogni richiesta. rc=0 significa trovato e consegnato correttamente. Qualsiasi altra cosa necessita di attenzione, e i due che vedrai più spesso quando risolvi un problema di migrazione fresca sono trattati di seguito.

Codici di errore comuni: rifiutato (rc=E2), nessuna scheda, timeout ECM

rc=E2 significa rifiutato — il lettore o il peer ha esplicitamente rifiutato la richiesta, di solito perché il client non ha diritto a quel SID o la linea non trasmette effettivamente quel canale. "Nessuna scheda" significa che il lettore stesso non sta rispondendo, il che su hardware locale di solito significa una cattiva connessione USB o una scheda inserita male. Timeout ECM significa che la richiesta è stata inviata e nulla è tornato in tempo — controlla se il peer è sovraccarico o se la tua incompatibilità di versione ccc sta causando disconnessioni silenziose.

Verificare i diritti dei lettori e il filtraggio SID/servizio

oscam.services ti consente di definire esattamente quali ID di servizio (SID) un dato lettore o client può accedere. Questo è importante se stai condividendo un lettore con altri — senza filtraggio, i peer possono sondare canali che la tua linea non fornisce effettivamente, il che genera richieste rifiutate non necessarie e ingombra i tuoi log. Imposta elenchi SID espliciti per gruppo anziché lasciare tutto aperto.

Regolazione del livello di log e dove si trova oscam.log

Per impostazione predefinita, OScam registra in oscam.log nella stessa directory di configurazione (/etc/tuxbox/config/oscam/oscam.log nella maggior parte delle immagini Enigma2). Se stai eseguendo il debug di un problema di connessione specifico, aumentaloglevel = 4 sia in oscam.conf che in tempo reale tramite l'interfaccia web, riproduci il problema, quindi impostalo di nuovo su 1 o 2. Lasciare il logging dettagliato attivo permanentemente consumerà spazio di archiviazione flash su box con spazio limitato — ho visto questo riempire una flash interna da 512MB in poche settimane su un server multi-client molto attivo.

Scegliere un fornitore di linee per il tuo softcam alternativo (criteri generali)

Qualunque softcam tu scelga, la qualità della tua configurazione è buona solo quanto le linee che la alimentano. Questa parte è importante indipendentemente dal fatto che tu sia su CCcam, OScam o qualsiasi altra cosa — ed è opportuno dirlo chiaramente: questo si applica solo alla condivisione delle tue schede di abbonamento legittimamente possedute su una rete privata/locale. Sei responsabile di assicurarti di avere un abbonamento valido per qualsiasi cosa tu stia decrittando e di rispettare i termini del tuo fornitore e la legge locale.

Compatibilità del protocollo (la linea parla cccam/newcamd in modo chiaro?)

Conferma la versione del protocollo prima di impegnarti nella configurazione del lettore. Una sorgente che esegue una vecchia versione di handshake cccam fallirà contro un lettore configurato per una versione più recente, e viceversa — questo è lo stesso problema di versione ccc trattato in precedenza, solo da un'altra direzione.

Tempo di risposta ECM e aspettative di uptime del server

Osserva i tempi ECM nella tua interfaccia web per alcuni giorni prima di decidere che una sorgente è affidabile. Risposte costanti sotto i 400ms con occasionali picchi brevi durante le ore di punta sono normali. Timeout costanti o rifiuti rc=E2 sono un segno che la sorgente è sovraccaricata o mal configurata dalla loro parte, non dalla tua.

Scheda locale vs linea condivisa: compromessi di latenza e affidabilità

Una scheda locale nel tuo lettore batterà sempre una linea di rete condivisa in termini di latenza e affidabilità, semplicemente perché non c'è alcun salto di rete o contesa con altri client coinvolti. Le linee condivise sono comode, ma sei alla mercé di quante più persone stanno colpendo quella stessa sorgente simultaneamente.

Bandiere rosse quando si valuta qualsiasi fonte

Fai attenzione a qualsiasi cosa che prometta connessioni simultanee illimitate su una singola scheda: non è così che funziona tecnicamente la condivisione delle schede, e di solito significa accesso sovrascritto che si bloccherà durante le ore di punta. Risposte vaghe su quale protocollo o CAS la linea supporti effettivamente sono un altro segnale di avvertimento. Testa prima di impegnarti in qualsiasi tempo reale di configurazione.

OScam è migliore di CCcam?

Per la maggior parte delle configurazioni, sì. OScam è open-source, attivamente mantenuto, multi-threaded e supporta lettori locali oltre a una vasta gamma di protocolli. CCcam è più semplice e leggero per un client di ricezione base, ma è closed-source e lo sviluppo si è bloccato, quindi non guadagnerà nuove capacità.

Posso eseguire CCcam e OScam contemporaneamente?

Sì. Assegna loro porte diverse e mantieni entrambi installati: su Enigma2 devi solo impostarne uno come softcam attiva per la decrittazione alla volta. Questo è il modo più sicuro per testare un'alternativa di configurazione cccam prima di passare completamente.

Come posso convertire una C-line CCcam in OScam?

Mappala a un blocco [reader] in oscam.server: imposta protocol = cccam, device = host,port, e porta l'utente/password. Aggiungi la corretta cccversion per quel peer e assegna un numero di gruppo, quindi fai riferimento a quel gruppo in oscam.user in modo che i tuoi client possano raggiungerlo.

mgcamd supporta lettori di smartcard locali?

No. mgcamd è un client newcamd leggero costruito solo per linee condivise: non ha un ruolo server e non può gestire hardware. Per il controllo locale del lettore Phoenix o Smargo su /dev/ttyUSB0, hai bisogno di OScam o di uno dei suoi fork come NCam.

Quale tempo di risposta ECM è considerato buono?

Sotto circa 400 ms è sano e non dovresti notare alcun ritardo nel cambiare canali. Costantemente sopra 800 ms, o timeout ECM frequenti, di solito indicano un peer sovraccarico o una discrepanza di versione del protocollo da controllare.

È legale cambiare softcam?

Il software stesso — OScam, mgcamd, CCcam — è solo codice di rete ed è legale da eseguire. Ciò che conta è cosa stai decrittando con esso: hai bisogno di un abbonamento valido o di una scheda per qualsiasi contenuto che stai condividendo, e sei responsabile del rispetto delle leggi locali e dei termini del tuo fornitore.