Étape 9:5. [Facultatif] Installer serveur oscam pour regarder les chaînes cryptées
Remarque : regarder les chaînes cryptées n’est pas illégal. Je regarde
chaînes cryptées dans le cas où vous n’avez pas une carte d’abonnement est illégal et punissable par la Loi. La gravité augmente, si vous partagez votre carte d’abonnement avec d’autres. Ce document suppose qu’une carte d’abonnement valide a été utilisée et de la propriété et que la carte est partagée uniquement à l’intérieur du réseau local. Ce document est aussi une preuve de concept et est destiné uniquement à des fins académiques.
Installer et configurer OSCAM carte serveur n’est pas un processus facile, et que la partie de l’installation et ceux liés à la connexion avec le serveur tvheadend il seront abordés ici, en raison de la note par le haut. On trouvera des informations supplémentaires sur l’internet.
Le serveur Oscam peut être téléchargé en un fichier binaire d’un référentiel, ou peut être construit à partir des sources. Tel qu’il est constamment développé, il est préférable d’avoir construit à partir de sources, que les versions binaires sont généralement dépassées.
Afin de construire, les paquets supplémentaires devront être installés avant. Les étapes suivantes couvrira l’installation des outils de génération, oscam, scripts d’arrêt de départ et les scripts de mise à jour automatique :
a) installer les outils de génération, libs
apt-get update
apt-get - y install apt-utils dialogue usbutils
y - apt-get install gcc g ++ wget
y - apt-get install build-essential subversion libpcsclite1 libpcsclite-dev
y - apt-get install libssl-dev cmake faire
apt-get - y installer nano libusb-1. 0-0-dev
apt-get install pcscd pcsc-tools
b) installer oscam du référentiel
CD/home/osmc
svn checkout http://www.streamboard.tv/svn/oscam/trunk oscam-svn
mkdir build
chmod 755 build
génération de CD
cmake...
S’il n’y a pas d’erreurs de configuration, les scripts de marque doivent être exécutées :
faire
faire installer
Après l’installation, un script de service systemd doit être créé :
nano /etc/systemd/system/oscam.service
Contenu du fichier :
[L’unité]
Description = oscam
After=Network.Target
[Service]
Type = fourche
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
Redémarrez = toujours
RestartSec = 5
[Install]
Wantedde = multi-user.target
Afin de démarrer automatiquement lors du démarrage système, la commande suivante doit être exécutée :
systemctl activer oscam.service
Les fichiers de configuration doivent être placés dans le dossier suivant :
/var/etc/oscam
mkdir/var/etc
mkdir /var/etc/oscamchown osmc.osmc /var/etc/oscam – R
Afin de démarrer le serveur oscam, la commande suivante doit être exécutée :
systemctl commencer oscam.service
Maintenant nous créerons et auto-mise à jour de script :
nano /usr/local/bin/oscam_update.sh
Le script nécessite des autorisations d’exécution :
chmod 755 /usr/local/bin/oscam_update.sh
Le contenu du fichier :
#! / bin/sh
echo « Started oscam update »
CD/home/concours /
Si [! -d « $DIRECTORY »] ; puis
svn checkout http://www.streamboard.tv/svn/oscam/trunk oscam-svn
FI
CD oscam-svn
mise à jour svn
Si [! -d « build »] ; puis
# Contrôle entrera ici si $DIRECTORY n’existe pas.
mkdir build
FI
génération de CD
cmake...
faire
systemctl arrêt oscam
faire installer
systemctl redémarrage oscam
Sleep 10
Ce script vérifie sur la dernière version du référentiel en ligne, s’il n’y a actuellement aucun existant, ou effectuera une mise à jour pour les fichiers les plus récents, si il est déjà existant, par la suite va essayer de construire le paquet. En fin de compte, il s’arrête à la version en cours d’exécution, installera la version nouvellement construite et en fin de compte il va redémarrer le service.
Nous pouvons tester le script en exécutant :
/usr/local/bin/oscam_update.sh
Pour exécuter ce script périodiquement, nous créerons une entrée au planificateur de tâches cron :
crontab-e
Si vous y êtes invité, nous allons sélectionner en tant qu’éditeur, nano, et une fois que le fichier s’ouvre, nous pouvons ajouter les lignes suivantes :
oscam #update à 04:02, 5e jour de la semaine
2 4 ** 5 /usr/local/bin/oscam_update.sh >/dev/null
Le serveur est constamment mise au point, il peut arriver qu’il y a aussi des fuites de mémoire qui consomment des ressources système au fil du temps. Pour résoudre cet obstacle, nous pouvons créer un script de redémarrage automatique :
nano /usr/local/bin/oscam_autorestart.sh
Pour pouvoir l’exécuter, nous allons définir les autorisations correctes :
chmod 755 /usr/local/bin/oscam_autorestart.sh
Le contenu du fichier :
#! / bin/sh
systemctl stop oscam.service
sommeil 5
systemctl commencer oscam.service
Nous pouvons tester le script en exécutant :
/usr/local/bin/oscam_autorestart.sh
Pour exécuter ce script périodiquement, nous créerons une entrée au planificateur de tâches cron :
crontab-e
et ajouter les lignes suivantes :
oscam #restart à 03:54
54 3 *** /usr/local/bin/oscam_autorestart.sh >/dev/null
De ce point plus loin, nous supposerons que nous avons un travail serveur Oscam sur nos raspberry Pi, ou sur notre réseau interne, mais sur une autre machine. Nous élaborerons cela par la suite pour voir pourquoi c’est aussi ok.
Pour utiliser oscam pour décrypter les chaînes cryptées, nous avons besoin établir une connexion entre les serveurs tvheadend et oscam.
Tvheadend a un grand soutien pour les CAs (accès conditionnel) ; Nous pouvons trouver que les paramètres sous la Configuration -> point menu CAs
Ce qui est important pour nous, c’est le protocole newcamd ou dvbapi.
Si nous avons seulement un CAID (carte d’identité – chaque fournisseur a au moins une carte d’identité, mais peut avoir aussi plus), alors nous pourrions utiliser aussi une connexion newcamd entre tvheadend et oscam.
Car nous partons du principe que nous aimerions regarder canal plus de différents fournisseurs, nous utiliserons le protocole dvbapi, celui largement pris en charge sur un grand nombre de décodeurs de télévision axée sur l’énigme.
Auparavant, nous procédons, certaine information de fond court sur le chiffrement de wikipedia :
"
Ceci est réalisé par une combinaison de brouillage et de cryptage. Le flux de données est crypté avec une clé secrète de 48 bits, appelée le mot de contrôle. Connaissant la valeur du mot de commande à un moment donné est de peu de valeur, comme dans des conditions normales, les fournisseurs de contenu vont changer le mot de commande plusieurs fois par minute. Le mot de contrôle est généré automatiquement de telle sorte que les valeurs successives ne sont pas généralement prévisibles ; la spécification DVB recommande l’utilisation d’un procédé physique pour cela.
Afin que le récepteur de décoder le flux de données, il doit être en permanence informé sur la valeur actuelle du mot de commande. Dans la pratique, il doit être informé un peu à l’avance, afin qu’aucune interruption Regarde un se produit. Le chiffrement est utilisé pour protéger le mot de contrôle pendant la transmission vers le récepteur : le mot de contrôle est crypté comme un message de contrôle de droit (ECM). Le sous-système de CA dans le récepteur va décrypter le mot de contrôle uniquement lorsque autorisé à le faire ; ce pouvoir est transmis au récepteur sous la forme d’un message de gestion de droit (EMM). Les EMM sont spécifiques à chaque abonné, tels que définis par la carte à puce à son récepteur, ou à des groupes d’abonnés et reçoivent beaucoup moins fréquemment que les SEGDA, habituellement à intervalles mensuels. C’est apparemment ne pas suffisant pour empêcher les Regarde un non autorisé, le TPS a abaissé de cet intervalle jusqu'à environ 12 minutes. Cela peut être différent pour chaque fournisseur, BSkyB utilise une durée de 6 semaines. Lorsque Nagravision 2 a été piraté, Digital + a commencé à envoyer une nouvelle EMM tous les trois jours de faire non autorisé Regarde un plus lourd.
Le contenu de l’ECM et EMM n’est pas normalisé et ainsi ils dépendent du système d’accès conditionnel utilisé.
"
Plus d’infos ici peut être trouvée ici :
https://en.wikipedia.org/wiki/Conditional_access
En un mot, dans le contenu reçu nous devrons envoyer l’ECM à la carte d’abonnement valide et récupérer la clé de déchiffrement. Cela signifie, que le serveur tvheadend doit communiquer avec le serveur oscam, qui doit communiquer avec le lecteur de carte dans lequel il y a les cartes d’abonnement valide. Maintenant, la partie qui gère la communication oscam avec les cartes et/ou des serveurs distants ne sera pas être discutée ici, il est largement débattu sur l’internet dans plusieurs forums.
Nous avons besoin de mettre en place tvheadend pour envoyer les ECM et demande les clés de déchiffrement du serveur oscam. Comme déjà dit, nous allons utiliser le protocole de dvapi, mais malheureusement, nous avons plus de variantes aussi ici :
un) dans le passé, le Enigma2 basé récepteurs linux créés un fichier de socket, généralement dans le dossier/tmp, appelé camd.socket. Grâce à cette prise la CAM (Conditional Access Module) serveur et la Enigma2 base set-top-box utilisé pour échanger des données. Cela a un inconvénient : le serveur de CAM nécessaire à interroger pour les nouvelles données chaque fois, donc ce n’était pas une bonne conception. Cependant, ceci est resté caché pendant des siècles, et, malheureusement, cette méthode est largement utilisée à titre d’exemple sur différents forums. Heureusement il y a mieux maintenant, et, comme l’a suggéré également sur le site tvheadend, on utilisera celle plus récente : http://docs.tvheadend.org/webui/config_caclient/... Les serveurs de CAM plus anciens, comme CCcam prend uniquement en charge cette méthode. Les serveurs de CAM plus modernes, comme oscam prend également en charge les méthodes nouvelles et meilleures.
Malheureusement, il existe aussi un tutoriel plu disponibles sur l’internet qui confond l’utilisateur.
b) le fichier de socket a été pas une bonne conception, en raison des problèmes énumérés ci-dessus, et oscam mis en œuvre les protocoles dvbapi mieux. Maintenant, il peut utiliser une approche de client / serveur TCP/IP sur (ou UDP, mais déjà obsolète) d’établir la communication entre serveur oscam et tvheadend. Dans ce cas, le serveur est créé côté oscam et tvheadend reliera à elle en tant que client, seulement si nécessaire. Par conséquent, il n’y a aucun bureau de vote et la meilleure partie, le serveur oscam peut être sur une autre machine que tvheadend (encore, il devrait être sur le même réseau et isolé de l’extérieur, car il n’y a aucun mécanisme d’authentification mis en place entre eux - donc n’importe qui peut se connecter).
Cela signifie que, même si votre serveur tvheadend est sur une autre machine, vous pouvez demander les clés de décryptage d’oscam sans perdre un seul saut. Houblon font partie de la façon dont les œuvres partage oscam, n’est également pas au point de ce document. Si nous voulons utiliser oscam sur la framboise même, il faut installer et le configurer comme décrit dans le chapitre ci-dessus.
Une fois que vous avez un travail oscam serveur fonctionnant sur votre réseau, nous procédons à configurer la connexion avec tvheadend. Cela peut être fait aussi de manu interface web du serveur oscam, mais en fin de compte, nous avons besoin de se retrouver avec la configuration suivante dans le fichier oscam.conf: [dvbapi] activé = 1 UA = 1 #if vous souhaitez transmettre les données EMM pour abonnement mises à jour pmt_mode = 4 request_mode = 1 listen_port = 9000 user = dvbapi heure = pc
Oscam de redémarrage et nous devrions être prêts oscam côté serveur.
Remarque : Si nous courons oscam sur une autre machine que tvheadend, nous devons veiller à configurer le pare-feu pour autoriser les connexions TCP sur le port 9000.
Côté tvheadend, sous Configuration -> le point de menu CAs nous devons ajouter un nouveau client d’accès conditionnel et dans la liste a choisi CAPMT (Linux DVBAPI).
Ici, nous devrons définir comme dans la capture d’écran jointe à cette étape.
Explication :
-nom du client, commentaire peut être n’importe quoi.
-Mode : c’est la partie la plus délicate. Pour pouvoir utiliser le soi-disant mode 5, ou la version 2 du protocole, nous avons besoin d’avoir une peu nouvelle génération oscam. C’est le moyen pris en charge aussi par oscam, autres méthodes seront abandonnées à l’avenir. Ainsi, il est fortement recommandé de mettre à niveau l’oscam vers une version plus récente, sans oublier de mentionner que beaucoup de questions ont été abordées dans ces. Si vous avez toujours s’en tenir à une version plus ancienne, a choisi oscam tcp. Il n’a pas recommandé d’utiliser l’ancienne méthode de camd.socket, donc il ne sera pas présenté ici.
-Dans la capture d’écran, nous pouvons voir 192.168.1.3, comme sur cette configuration, le serveur oscam s’exécute sur un serveur dédié distinct, et tvheadend de la framboise se connecte à elle. Dans notre cas, nous courons oscam sur la même machine (c'est-à-dire les RPi2), puis nous allons utiliser 127.0.0.1 comme nom d’hôte.
-Le port d’écoute doit être 9000, il s’agit de celle utilisée dans le serveur oscam. Nous pouvons modifier d’autres valeurs, mais doivent s’assurer que le port est gratuit. Il faut également s’assurer que nous le changer aussi le côté oscam, sinon la connexion ne soit établie.
Une fois que tout est mis en place, nous enregistrer les paramètres et nous verrions que la connexion est établie.
Remarque :
1) la console de débogage sur le bas de la page peut être ouverte à tout moment et nous pouvons consulter la sortie qu’il génère.
2) ne jamais ouvrir le port 9000 vers le WAN, c'est-à-dire en dehors de votre réseau local. N’importe qui peut se connecter à elle et non seulement nous ne sera pas capables de se connecter, mais inconnus peuvent utiliser aussi frauduleusement notre cocher serveur, ou pire encore, que nous menons sur oscam serveur.
Une fois que cela est configuré, nous devrions être capables de regarder les canaux brouillés, de la même façon comme nous le faisons sur votre boîte enigma2 basé.