Avancerade Multimedia Center (9 / 15 steg)

Steg 9:5. [Frivilligt] Installera oscam server för att titta på krypterade kanaler



Obs: titta på krypterade kanaler är inte olagligt. Titta på
krypterade kanaler om du inte har ett abonnemangskort är olagligt och straffbart enligt lag. Svårighetsgraden ökar, om du delar ditt abonnemangskort med andra. Detta dokument kommer att anta att en giltig prenumerationskort används och som ägs och som kortet delas endast inom det lokala nätverket. Detta dokument är också ett proof-of-concept och är avsedd endast för akademiska.

Installation och konfiguration av OSCAM card-servern är inte en lätt process, och bara del som installation och de som rör ansluta den med tvheadend servern kommer att diskuteras här, på grund av anteckningen från ovan. Ytterligare information kan hittas på internet.

Oscam server kan laddas ner som en binär från en databas eller kan byggas från källor. Som det hela tiden utvecklas, är det bättre att ha det byggs från källor, som binära bygger är oftast föråldrade.

För att bygga, måste ytterligare paket installeras innan. Följande steg kommer att omfatta installation av bygga verktyg, oscam, start stop skript och automatisk uppdatering skript:

en) Installera bygga verktyg, libs

apt-get update

apt-get - y installera apt-utils dialogrutan usbutils

apt-get - y install gcc g ++ wget

apt-get - y installera build-essential subversion libpcsclite1 libpcsclite-dev

apt-get - y install libssl-dev cmake göra

apt-get - y installera libusb-1.0-0-dev nano

lämplig-få installera pcscd pcsc-tools

b) installera oscam från förråd

CD/home/osmc

SVN checkout http://www.streamboard.tv/svn/oscam/trunk oscam-svn

mkdir bygga

chmod 755 bygga

CD-build

cmake...

Om det finns ingen konfigurationsfel, skall göra skript exekveras:

göra

se installera

Efter installation, skall en systemd tjänsteskript skapas:

nano /etc/systemd/system/oscam.service

Innehållet i filen:

[Enhet]

Beskrivning = oscam

After=Network.target

[Tjänster]

Typ = gaffel

PIDFile=/run/oscam.pid

ExecStart = / usr/local/bin/oscam - b - r 2 -B /run/oscam.pid - c /var/etc/oscam -p 512

ExecStop = / usr/bin/rm /run/oscam.pid

Starta om = alltid

RestartSec = 5

[Installera]

WantedBy = multi-user.target

För att automatiskt starta den på system stöveln tid, skall följande kommando exekveras:

systemctl aktivera oscam.service

Filerna placeras i följande mapp:

/var/etc/Oscam

mkdir /var/etc

mkdir /var/etc/oscamchown osmc.osmc /var/etc/oscam-R

För att starta oscam server, skall följande kommando exekveras:

systemctl start oscam.service

Nu vi skapa och bil-uppdatera skriptet:

Nano /usr/local/bin/oscam_update.sh

Skriptet behöver behörigheter för att köras:

chmod 755 /usr/local/bin/oscam_update.sh

Innehållet i filen:

#! / bin/sh

ECHO "Igång oscam update"

CD/home/osmc /

om [! -d "$DIRECTORY"]; sedan

SVN checkout http://www.streamboard.tv/svn/oscam/trunk oscam-svn

Fi

CD oscam-svn

svn update

om [! -d "build"]; sedan

# Kontroll kommer in här om $DIRECTORY inte finns.

mkdir bygga

Fi

CD-build

cmake...

göra

systemctl stop oscam

se installera

systemctl restart oscam

sova 10

Detta skript checkar ut den senaste versionen från online-databasen, om det finns för närvarande ingen befintlig, eller kommer att utföra en uppdatering till senaste filerna, om det är redan existerande, efteråt kommer att försöka skapa paketet. I slutändan, det kommer att stoppa den pågående versionen, installerar nybyggda versionen och i slutändan kommer att starta om tjänsten.

Vi kan testa skriptet genom att köra:

/usr/local/bin/oscam_update.sh

För att köra skriptet med jämna mellanrum, kommer att vi skapa en post till cron's Schemaläggaren:

crontab-e

Om du uppmanas vi skall välja som redaktör, nano, och när filen öppnas, kan vi lägga till följande rader:

#update oscam på 04:02, 5: e dagen i veckan

2 4 ** 5 /usr/local/bin/oscam_update.sh >/dev/null

Som servern är ständigt utvecklas, kan det hända att det finns också minnesläckor som förbrukar systemresurser över tiden. För att lösa detta hinder, kan vi skapa ett skript för automatisk omstart:

Nano /usr/local/bin/oscam_autorestart.sh

För att kunna utföra den, skall vi ställa in rätt behörigheter:

chmod 755 /usr/local/bin/oscam_autorestart.sh

Innehållet i filen:

#! / bin/sh

systemctl stop oscam.service

sova 5

systemctl start oscam.service

Vi kan testa skriptet genom att köra:

/usr/local/bin/oscam_autorestart.sh

För att köra skriptet med jämna mellanrum, kommer att vi skapa en post till cron's Schemaläggaren:

crontab-e

och Lägg till följande rader till det:

#restart oscam på 3:54

54 3 *** /usr/local/bin/oscam_autorestart.sh >/dev/null

Från denna punkt ytterligare kommer vi anta att vi har en fungerande Oscam server på våra raspberry Pi, eller på vårt interna nätverk, men på annan maskin. Vi kommer att utveckla detta senare för att se varför detta är också ok.

Använda oscam till avsnittet de krypterade kanalerna, måste vi göra en anslutning mellan tvheadend server och oscam server.

Tvheadend har stort stöd för CAs (villkorad tillgång); Vi kan hitta inställningarna under konfigurationen -> CAs-menyn, pekar

Vad är viktigt för oss är newcamd protokollet eller dvbapi-protokollet.

Om vi har bara en CAID (kort-id – varje provider har minst ett kort-id, men kan ha också mer), då vi kan också använda en newcamd anslutning mellan tvheadend och oscam.

Eftersom vi utgår från att vi skulle vilja se mer kanal från olika leverantörer, kommer att vi använda protokollet från dvbapi, de som allmänt stöds på en hel del Enigma-baserade STBs.

Innan vi går vidare, lite kort bakgrund info om kryptering från wikipedia:

"

Detta uppnås genom en kombination av hastigt och kryptering. Dataströmmen är kodade med ett 48-bitars hemlig nyckel, kallas ordet kontroll. Att veta värdet på kontrollen ordet vid en given tidpunkt är av relativt ringa värde, som under normala förhållanden, tillhandahållare av innehåll kommer att ändra kontroll ordet flera gånger per minut. Ordet kontroll genereras automatiskt så att successiva värden inte är oftast förutsägbara; DVB specifikationen rekommenderar att man använder en fysisk process för detta.

För mottagaren för att avkoda dataströmmen, måste det vara permanent informerade om det aktuella värdet av ordet kontroll. I praktiken informeras det något i förväg, så att ingen visning avbrott inträffar. Kryptering används för att skydda kontroll ordet under överföringen till mottagaren: kontroll ordet är krypterad som ett rätt kontrollmeddelande (ECM). Delsystemet CA i mottagaren kommer att dekryptera kontroll ordet endast när behörig att göra detta; denna myndighet skickas till mottagaren i form av en rätt hantering meddelande (EMM). EMMs är specifika för varje abonnent, som identifierats av smartkortet i sin mottagare, eller för grupper av prenumeranter, och utfärdas mycket mindre ofta än ECMs, oftast månatliga mellanrum. Detta är tydligen inte tillräckliga för att förhindra obehörig, sänkte TPS intervallet ner till ca 12 minuter. Detta kan vara olika för varje leverantör, BSkyB använder en mandatperiod på 6 veckor. När Nagravision 2 var hackad, Digital + började skicka en ny EMM obehörig var tre dagar att göra som tittar på mer omständligt.

Innehållet i ECMs och EMMs är inte standardiserad och som sådana de beror på de system för villkorad tillgång används.

"

Mer info här kan hittas här:

https://en.wikipedia.org/wiki/Conditional_access

I ett nötskal, i mottagna innehållet kommer vi att skicka ECM till giltig prenumerationskort och få tillbaka dekrypteringsnyckeln. Detta innebär, tvheadend servern måste kunna kommunicera med oscam server, som måste kommunicera med kortläsaren där det finns en giltig prenumeration kort. Nu, den del som hanterar oscam kommunikation med kort och/eller fjärrservrar kommer inte att diskuteras här, det är omdebatterade på internet i flera forum.

Vi måste ställa in tvheadend skicka ECMs och begära dekrypteringsnycklarna från oscam server. Som sagt tidigare, vi använder dvapi-protokollet, men tyvärr, vi har fler varianter också här:

en) i förflutnan, Enigma2 baserade linux mottagare skapat en socket fil, vanligtvis i mappen/tmp kallas camd.socket. Genom denna uttaget CAM (ca-modul) baserade server och Enigma2 set-top-box används för att utbyta data. Detta har en nackdel: den CAM server behövs för att utföra pollning efter nya uppgifter varje gång, därför detta var inte en bra design. Dock detta hölls i evigheter, och tyvärr denna metod används ofta som exempel på olika forum. Lyckligtvis finns det bättre sätt nu, och, som framgår också på webbplatsen tvheadend, den nya som skall användas: http://docs.tvheadend.org/webui/config_caclient/... Äldre CAM servrar som CCcam endast stöd för denna metod. Modernare CAM servrar, som oscam stöder också nyare och bättre metoder.

Tyvärr, det finns också en äldre guider på internet som förvirrar användaren.

b) uttaget filen var inte en bra design, på grund av de problem som räknas upp ovan, och oscam genomförs de bättre dvbapi protokoll. Nu, det kan använda en TCP/IP baserade klient-server inställning (eller UDP, men redan deprecated) att etablera kommunikation mellan oscam och tvheadend server. I det här fallet servern skapas på oscam sida och tvheadend kommer att ansluta till det som en klient, om endast nödvändigt. Därför finns det ingen röstningen, och det bästa, oscam server kan vara på en annan maskin än tvheadend (fortfarande, det bör vara på samma nätverk och isolerade från utsidan, så det finns ingen autentiseringsmekanism som genomförs mellan dem - så vem som helst kan ansluta).

Detta innebär att även om din tvheadend server är på en annan dator, kan du begära dekodering nycklarna från oscam utan att förlora ett hopp. Humle är en del av hur oscam dela verk, också är inte i fokus i detta dokument. Om vi vill använda oscam på samma hallon, måste vi installera och konfigurera den som beskrivs i kapitlet ovan.

När du har en fungerande oscam server körs i nätverket, vi går vidare till konfigurera anslutningen med tvheadend. Detta kan göras även från oscam server web interface manu, men i slutändan måste vi sluta med följande konfiguration i oscam.conf filen: [dvbapi] aktiverad = 1 au = 1 #if du vill passera EMM data för abonnemanget uppdateringar pmt_mode = 4 request_mode = 1 listen_port = 9000 användare = dvbapi boxtype = pc

Omstart oscam, och vi bör vara beredd på serversidan oscam.

Obs: Om vi kör oscam på en annan maskin än tvheadend, vi måste se till att korrekt konfigurera brandväggen för att tillåta TCP-anslutningar på port 9000.

På tvheadend sida, Under konfigurationen -> CAs-menyn, pekar vi lägga till en ny klient för villkorad tillgång, och från listan valde CAPMT (Linux DVBAPI).

Här får vi ställa upp som i skärmdumpen bifogas detta steg.

Förklaring:
-kundens namn, kommentar kan vara allt.

-Mode: detta är den svåra biten. Använda den så kallade läge 5, eller protokollversion 2, måste vi ha en något ny oscam bygga. Stöds på det sättet också av oscam, andra metoder kommer att tas bort i framtiden. Så rekommenderas det starkt att uppgradera oscam till en nyare version, för att inte nämna att en hel del frågor togs upp i dessa. Om du fortfarande har att hålla sig till en äldre version, valde oscam tcp. Det är inte rekommenderat för att använda den gamla camd.socket metoden, därför det kommer inte att presenteras här.

-I skärmdumpen kan vi se 192.168.1.3, som på denna setup, oscam server körs på en separat dedikerad server, och den hallon tvheadend ansluter till den. I vårt fall vi kör oscam på samma maskin (dvs. RPi2), då vi kommer att använda 127.0.0.1 som värdnamn.

-Lyssna på porten skall 9000, eftersom detta är den som används i oscam server. Vi kan ändra till annat värde, men se till att porten är gratis. Vi måste också se till att vi ändrar det också på oscam sida, annars anslutningen inte upprättas.

När allt har ställts in, vi spara inställningarna och vi bör se att anslutningen är upprättad.

Obs:

1) Felsökningskonsolen längst ner på sidan kan öppnas någon gång och vi kan konsultera utdata genereras.

2) aldrig någonsin öppna 9000 porten till WAN, dvs utanför ditt lokala nätverk. Vem som helst kan ansluta till den och inte bara vi kommer inte att kunna ansluta, men främlingar kan också bedrägligt använda vår server, eller ännu värre, kontrollera att vi kör på oscam server.

När detta är inställt, bör vi kunna se kodade kanaler, på samma sätt som vi gör det på din enigma2 baserade låda.

Se Steg
Relaterade Ämnen

Hur man bygger en Budget Speldator (detaljerad, informativ)

Vill göra din egen anpassade byggda gaming PC och du är på en stram budget?Detta Instructable kommer att omfatta alla aspekter i att bygga den bästa möjliga Budgeten personliga stationär dator för spel.Du kommer att läsa om:1) moderna spel krav.2) at...

Bygga ett multimediasystem med hallon Pi2

I detta projekt, jag installera OpenELEC på Rpi2, och göra hallon Pi2 som hem Multimedia Center.OpenELEC är ett inbäddat operativsystem byggt runt Kodi, öppen källkod underhållning media hub. Hemmabio datorer är kända för att vara svårt att installer...

FYRKANTIGA frukt energi: PROJECT LOTUS INSTRUCTABLES

Detta är ett gammalt Arkiv med en instructables jag skapat. Att se hur våra företag gör nu att gå tillwww.squarefruitenergy.comMitt födelsedatum: 12/02/1989Hej Instructables mitt namn är Chico Weber och jag är grundare av torget frukt. Jag började to...

Digital fotoram - med hjälp av en gammal bärbar dator

Jag hade en gammal Dell Inspiron 6400 liggande hemma och beslutat att installera Linux på den-hade varit syssla med Linux i många år – men eftersom det var aldrig det enda operativsystemet på datorn – verkligen gå inte vidare med den. Också var plane...

Ultimate Nintendo DS Lite

jag blev verkligen förvånad att det inte finns en omfattande Nintendo DS hacking Instructable här, så jag trodde det var min kallelse. Jag har forskat NDS hacking scenen ganska länge nu, och detta instructable är dedikerad resultatet av alla mina slu...

Brassberry (Raspberry Pi)

Hej,Jag är från Tyskland och detta är mitt första inlägg på instructables.(Ledsen för min nyfiken engelska)För några veckor sedan hittade jag en gammal och Tom klockan fallet på ett skrotupplag. Mässing fall väger mer än 5 kg.Batterisyra hade gnagde...

Fairy Lantern

Detta instructable skapades enlighet projektet kravet på Makecourse vid University of South Florida (www.makecourse.com).En av de mest fascinerande och delikat växten i världen är blomman Calochortus albus, annars känd som världen Lilja eller fairy l...

Arduino kontrollerade helikopter

Detta instructable skapades enlighet projektet kravet på Makecourse vid University of South Florida (www.makecourse.com). Syftet med kursen var att lära oss kreativitet, uppfinningsrikedom och praktisk tillämpning av färdigheter som 3D-modellering, k...

Projektet Frankenstein

"Detta instructable skapades av Howard Kaplan enlighet projektet kravet på Makecourse vid University of South Florida (www.makecourse.com)". 3D-utskrift gjordes på avancerad visualisering Center vid University of South Florida (www.avc.web.usf.e...

Muybride's Zoetrope

"Detta instructable skapades av Sydney Russell enlighet projektet kravet på Makecourse vid University of South Florida (www.makecourse.com)". 3D-utskrift gjordes på avancerad visualisering Center vid University of South Florida (www.avc.web.usf....

Xbox 360 ROBOTARM [ARDUINO]: AXIOM ARM

AXIOM ARM ritades av Sergei Dines: Maskiningenjör Senior på USF (Tampa).LinkedIN: http://www.linkedin.com/in/sergeidinesWebbplats: http://www.surgerobotics.com/E-post: sergeidinesNY! : Besök förkortad version: http://www.intorobotics.com/arduino-robo...

Avancerade Charlicube och ändringar

Ive skrivit ett par instructables om Charliecube, som den här om att bygga Charliecube:och här en om dataintrång i kuben, att göra en gemensam anod version här:Ive fick veta en massa saker på vägen, och Ive listat ut olika sätt att ändra den ursprung...

Avancerad pappersflygplan

Poängen med detta instructable är att lära en person hur man gör en mer avancerad pappersflygplan i bara några korta steg.Steg 1: Typ av papperAtt börja få en bit av vanliga skrivarpapper (vanligtvis 8.5x11 "). Skrivarpapper används eftersom lösa bla...

DIY LED-projektor som Multimedia (video manuell)

I detta Instructable Visa jag dig hur man gör en LCD-projektor med LED som ljuskälla. Jag försökte göra videor av allt så det är lättare att följa stegen.Este Instructable esta sv versión en EspañolSe fler coola projekt på min blogg.Efter att min för...

Youth Center Desktop slangbella katapult

Denna design skapades ursprungligen för internt bruk. Jag arbetar som en tech lab programmet leda för en ungdomsgård på armébas där jag växte upp. Jag undervisar naturvetenskap och teknik och göra diverse projekt med högstadiet och gymnasieelever. Nä...

Avancerade cookies cutter generator

Hej alla,Här är en enkel guide till hur design och 3D print sin egen cookie cutter!Min första 3D cookie design blev en 5 tum lång dinosaurie med 6 cookie limmas ihop med koncentrerad mjölk. Det var ganska skrämmande och välsmakande!Detta skript tillå...

35-cent bok vikt/bokmärke

om du, liksom jag, är en stor läsare, du kan ha mellan en och fem böcker går samtidigt, på olika ämnesområden, både skönlitteratur och facklitteratur, både papper och e-bok. Även om du inte älskar att läsa, behöva du antagligen läsa papper böcker ell...

En virtuell Gallery på Pendleton Center för konst

genom en gemensam ansträngning från Pendleton centrum för konst (PCA) och området lärare i Pendleton, Oregon, följande PCA virtuella studiebesök programmet presenteras som en möjlighet att involvera eleverna i konstutbildning och inspirera en varakti...

Stor skärm Entertainment Center

stor skärm Entertainment Center:Den har en plats för följande utrustning / poster.65 tum stora skärmen TVTower högtalareSub WooferCenter-högtalareStereo mottagare5 CD / Laser Disc-spelareDVD-spelareBox-kabel / DVRFörvaring bakom dörrarSony Playstatio...