Einleitung
Mittlerweile ist aus dem protokoll- und plattformübergreifenden Cardserver ein voll funktionierender Card- und Sharingserver geworden. Es wird kein zusätzliches Emu mehr benötigt. Oscam beherrscht das CCcam Protokoll perfekt, sogar bis Version 2.2.1. Also auch mit den Neuerungen die mit CCcam_2.2.0 eingeführt wurden, wie good SIDs und bad SIDs, kann Oscam bereits umgehen.
Oscam kann sogar mehr als ein original CCcamserver. Da wäre zum Beispiel der global arbeitende Loadbalancer der das Sharing zu einer sehr intelligenten Angelegenheit macht. Der Client muß nicht erst mühsam die richtigen Karten suchen die den angefragten Sender öffnen können. Ein gut eingestellter Loadbalancer weiß bereits welche Karte das kann und leitet die Anfrage direkt zur richtigen Karte. Der Loadbalancer weiß auch welche Karte aktuell am schnellsten ist. Der CCcamclient bekommt davon gar nichts mit, außer das er sehr schnell ein Bild bekommt. Es gibt auch ein Oscam eigenes CCcam Protokoll (cccam-ext) das die Anfragen asynchron verarbeiten kann, vorausgesetzt man hat den stealth = 1 Mode nicht aktiviert. Dann hätten wir noch die Tatsache das Oscam so gut wie jede gängige Pay TV Karte lesen kann und sie so als Lokal Karte ins CCcamnetz bringt. Oder der global arbeitende Cache der Mehrfachanfragen auch auf entfernte Karten verhindert. So erst mal genug von den Vorteilen, es gibt auch immer eine Schattenseite.
Wichtiger Hinweis
Wie bereits auf der Oscam-Hauptseite hier im Zebradem-Wiki vermerkt war, kann man durch Unwissenheit und falsch konfigurierten oder gar nicht konfigurierten Oscamserver mehr Schaden als Nutzen. Wer also gerade am umsteigen oder testen ist, sollte das ganze im kleinen machen, zum Beispiel Homesharing oder ein kleines Testnetz mit Freunden. Wer ganz sicher gehen möchte kann am Anfang auch die Option forward_origin_card = 1 in der oscam.conf setzen, damit arbeitet Oscam ganz genau gleich wie ein original CCcamserver und stört so nicht das Sharenetz.
Zu beachten ist vor allem, wer ohne Loadbalancer und ohne Fallback Einstellungen arbeitet sendet immer alle Anfragen an alle verfügbaren Karten und verursacht so ein Haufen Traffic und Ärger bei den Sharepartnern. Selbst mit Loadbalancer sollte man schauen das er seine Statistiken speichert und sie nicht ständig neu erstellen muß und so seine Sharepartner quält, denn zum neu lernen muß der Loadbalancer jedes mal die Karten aufs neue testen. Ich kann also nur jeden ans Herz legen zuerst den Loadbalancer Workshop zu lesen, bevor ihr eure Oscam auf das CCcamnetz los lasst. Zu finden ist der hier -->
Sie müssen registriert sein, um Links zu sehen.
Sharing & Vertrauen
Das Sharing war schon immer Vertrauenssache, aber mit Oscam müßt ihr euer Vertrauen noch weiter erhöhen. Oscam ist ein sehr mächtiges Cam mit dem man auch viel Unfug treiben kann. Es wird auch immer User geben die jede Möglichkeit nutzen sich einen Vorteil zu verschaffen. Da gibt es eine Funktion die nennt sich "ignorereshare", der wahre Sinn dieser Option wird weiter unten erklärt. Mittlerweile findet man die Einstellung auch noch in der oscam.user "cccignorereshare" wo man es für jeden User einzeln aktivieren kann. Leider hat das ganze einen Nebeneffekt und zwar der das sämtliche Reshare Regeln auch die der angebundenen Sharepartner umgangen werden. Bekommt man eine Karte ohne Reshare rein und hat "ignorereshare" gesetzt, kann man die Karte nun trotzdem weiter sharen, so oft wie man in der oscam.conf unter "reshare" eingetragen hat.
Wer jetzt denkt ist doch prima soll sich bitte nur Vorstellen das wären seine Karten, die da ohne Rechte weiter und immer weiter gegeben werden. Wenn ihr es mit euren Karten nicht möchtet das eure Sharepartner mit "ignorereshare" die Karten immer weiter verteilen, dann solltet ihr es auch nicht tun.
Davon abgesehen sollte ein aufmerksamer Sharepartner es merken, wenn auf Karten ohne Reshare Unmengen an Anfragen von dir kommen und wird dich so mit Sicherheit direkt löschen. Man kann es übrigens auch sehen wenn einer seiner Peers diese Option gesetzt hat. Wenn alle Karten die ihr von jemand bekommt, alle den selben Reshare haben, dann wurde wissentlich oder unwissentlich "ignorereshare" gesetzt. Karten aus Hop1 oder Hop2 haben normal kein Reshare mehr.
Lasst also am besten die Finger von dieser Option wenn ihr nicht all eure Sharepartner verlieren wollt. Diese Erklärung soll nicht dazu dienen Reshare Regeln zu umgehen sondern den, ich gehe mal davon aus, ungewollten Nebeneffekt der Option "ignorereshare" zu Erläutern. Der Sinn der Option ist nämlich ein anderer und wenn man nicht weiß was sich damit noch ändert, kann man schnell seine Sharepartner vergraulen.
CCcam & Camd3 Problem
Ein weiteres Problem ist, wenn man CCcamsharing mit der Oscam betreibt und ein paar Clienten über camd3 Protokoll am Server verbinden. Das camd3 Protokoll kennt weder Reshare Regeln noch Hops des CCcam Protokolls. Der camd3 Client würde also auch Karten nutzen für die er keine Rechte hat.
Es gibt nun die Möglichkeit das man die Reader-Gruppen so verteilt, dass der camd3 Client kein Zugriff mehr auf die entsprechenden Reader hat. Doch das will man meistens ja gar nicht, sondern das man auch über einen camd3 Client alle erlaubten Karten nutzen kann. Dafür gibt es auch eine Lösung "cccmindown = 1". Das trägt man bei den eingebundenen CCcamservern ein und Filtert so alle Karten ohne Reshare raus. Somit kann man sich auch mit camd3 verbinden und braucht keine Angst zu haben, ständig auf Karten ohne Reshare-Recht zuzugreifen.
CCcam Server aktivieren
So genug erst mal mit Belehrungen und ab in die Configs um den CCcam Server aufzusetzen. Ich gehe hier davon aus das ihr bereits Oscam als Cardserver aufgesetzt habt und erfolgreich eure Karten einlesen konntet.
Also wenn Oscam bereits eingerichtet ist und eure Karten eingehängt sind, startet ihr erst mal den CCcam Server in der oscam.conf
oscam.conf[cccam]
port = 12000
reshare = 1
forward_origin_card = 0
ignorereshare = 0
version = 2.1.4
minimizecards = 0
keepconnected = 1
stealth = 0
reshare_mode = 0
updateinterval = 240
- "port" sollte klar sein.
- "reshare = 1" bedeutet das eure Peers einmal weiter sharen dürfen. Würde hier eine "2" stehen dürften sie zwei mal weiter sharen. Default ist "0" kein reshare möglich.
- "forward_origin_card = 0" mit dieser Option kann man das Verhalten von Oscam dahingehend verändern, das es genau gleich arbeitet wie ein original CCcamserver. Es deaktviert aber auch den Loadbalancer. Anfänger die mit der fülle an Optionen überfordert sind, sollten es am Anfang setzen (forward_origin_card = 0). Wer ein gut eingestellten Loadbalancer hat, sollte es deaktivieren.
- "ignorereshare = 0" ist mit "0" abgeschaltet und mit "1" gesetzt. Wenn es aktiviert ist, wird die Reshare Angabe in der oscam.conf ignoriert und Oscam verwendet die Reshare Angabe die man in der oscam.user angegeben hat.
- "version = 2.1.4" gibt die CCcam Version an, als die sich Oscam ausgibt.
- "minimizecards = 0" damit kann man seine Cardliste verkleinern. Beim aktivieren werden die Karten die übermittelt werden zusammengefasst. Wenn man z.b. 20x "CAID 1702" im Share hat, wird daraus eine Karte. Hat man z.b. verschiedene Viaccess Karten, wird eine Karte mit CAID 0500 übermittelt, mit allen verfügbaren ProviderIDs.
- "keepconnected = 1" aktiviert man damit die Clients dauerhaft verbunden bleiben. CCcam keepalive
- "stealth = 0" hiermit kann man einstellen ob sich Oscam Server untereinander erkennen sollen und auf das extended OSCam-CCcam Protokoll umschalten. Ist es deaktiviert (stealth = 0) erkennen sich Oscamserver untereinander und nutzen ein eigenes CCcam Protokoll. Wenn es aktivert ist erkennen sie sich nicht mehr als Partner Oscam und nutzen das Standard CCcam Protokoll.
- "reshare_mode = 0" damit kann man festlegen welche Karten an die Clients gesendet werden."reshare_mode = 0" ist default und Standard, hier werden alle Karten wie bisher an die Clients gesendet. Auf "reshare_mode = 1" gestellt ist es genauso wie default, nur werden zusätzlich noch die Services eines Readers mit veröffentlicht. Wer also vollen CCcam_2.2.0 Support möchte mit god SIDs und bad SIDs braucht reshare_mode=1 mit sauber angelegten Reader-Services (positive und negative Services). Auf "reshare_mode = 2" ändert sich das ganze etwas, statt die vom CCcam-Reader empfangenen Kartendaten zu verwenden, werden nur noch die Reader-Services veröffentlicht. Mit "reshare_mode = 3" werden dann nur noch die User-Services veröffentlicht. Somit kann man die Karten auf die Dienste beschränken, die man eigentlich nur veröffentlichen möchte. Diese Option kann einem neugeborenen Oscam Nutzer verwirren. Also wenn ihr das erste mal ein Oscam-CCcam Server aufsetzt, benutzt erst mal"reshare_mode = 0" und befasst euch später mit den Unterschieden dieser Einstellmöglichkeiten.
- "updateinterval = Sekunden" Zum festlegen in welchem Zeitintervall ein Update der Cardliste an die Clients gesendet wird. Default = 240.
User anlegen (F:-Line)
Wenn man nun einen User anlegt, macht man das genauso wie man das beim einrichten des Cardserver gemacht hat. Da mußte man ja auch einen User für CCcam (Nline) anlegen. Es kommen nur ein paar zusätzliche Optionen hinzu in der oscam.user.
oscam.user[account]
user = user1
pwd = passwort
group = 1
hostname = dyndns.com des Sharepartners,
cccmaxhops = 2
cccreshare = 1
Das Gegenstück wäre bei einem CCcam Clienten
C: Deinydyndns.com 12000 user1 passwort
- "user" "pwd" erkläre ich hier nicht gehört zu den Grundkenntnissen die man haben sollte.
- "group" Man sollte am besten jeden Reader in eine eigene Group setzen (Lokal Reader). Die ganzen externen CCcam Proxy Server hab ich in einer Group zusammengefasst. Also Lokal Reader haben alle eine extra Group. CCcam Proxys sind alle in der selben Group. Nun kann ich in der oscam.user mit "group = XX" die Groups angeben auf die der User Zugriff hat. Wenn es mehrere Gruppen sind, dann werden sie durch Komma getrennt aufgeführt. Hat man also z.b. eine 1702 Sky Karte und eine 0d05 ORF Karte und ein User soll nur auf ORF zugreifen dürfen, nicht aber auf Sky, trage ich nur den Namen der ORF Group bei dem User ein.
- "hostname = dyndns.com" Hier kann man die dns oder IP des User eintragen der diesen Account nutzt. Dient der Sicherheit für den Server/Account.
- "cccmaxhops = 2" hier legt man fest wie viel hops der User bekommen soll. Also ob er z.b. auch hop2 Karten vom Server bekommen darf, wenn die überhaupt noch weitergegeben werden können (je nach reshare Einstellung des Karten Besitzers).
- "cccreshare = 1" damit kann ich wieder einstellen wie oft der User die Karten weitergeben darf. Diese Option wird nur beachtet wenn in der oscam.conf "ignorereshare" auf "1" steht. Ansonsten gelten die globalen reshare rules aus der oscam.conf.
Andere Server einhängen (C:-Line)
Nun noch das einhängen eines CCcam Proxys (externe CCcam Server, Cline). Gemacht wird das in der oscam.server und ist genau gleich wie einen Reader eintragen:
oscam.server[reader]
label = server1
enable = 1
protocol = cccam
device = dyndns.com,12000
account = user
password = passwd
reconnecttimeout = 30
group = 1
cccversion = 2.1.4
cccmaxhops = 2
cccmindown = 1
cccwantemu = 0
ccckeepalive = 1
Das Gegenstück wäre bei einem CCcam Server
F: user passwd
- "label = server1" bei label legt man einen Namen nach Wahl fest. Am sinnvollsten ist der User Name des Server Besitzers.
- "enable = 1" auf "1" ist er aktiviert , auf "0" deaktiviert.
- "protocol = cccam" sollte klar sein das hier cccam stehen muß.
- "device = dyndns.com,12000" hier kommt ip/dns und mit Komma getrennt den Port des Servers rein.
- "account = user" Login Name am externen Server.
- "password = passwd" Passwort am externen Server um sich einzuloggen.
- "reconnecttimeout = 30" Wann Oscam reconnecten soll, falls der Server nicht mehr antwortet.
- "group = 1" In welche Group der Reader soll. Wie in der oscam.user schon beschrieben habe ich alle externen CCcam Proxys (Server) in ein und der selben Group. In dem Beispiel heißt die Group "1".
- "cccversion = 2.1.4" Als welche Version sich Oscam ausgibt, beim connect auf dem CCcam Proxys.
- "cccmaxhops = 2" Wie viel hops man vom CCcam Proxy Server rein läßt.
- "cccwantemu = 0" damit wird der Zugriff auf den Emu des CCcam Servers verhindert beziehungsweise erlaubt.
- "cccmindown = 1" Filtert alle Karten raus die weniger als 1 hop reshare haben. Würde es auf 2 stehen werden alle Karten die weniger als 2 hops reshare haben rausgefilter. Filtert immer alle Karte mit weniger reshare als der eingetragenen Wert dieser Option raus.
- "ccckeepalive = 1" Wenn man auf "1" stellt, bleibt der Server dauerhaft verbunden. Stellt man auf "0" disconnectet der Server wenn man gerade keine seiner Karten braucht. Sobald eine Anfrage an seine Karten kommt, wird die Verbindung wieder aufgebaut und bei Inaktivität wieder getrennt.