Paso 9:5. [Opcional] Instalar servidor de oscam para ver canales codificados
Nota: no es ilegal ver canales encriptados. Ver
canales codificados en caso de no tener una tarjeta de suscripción es ilegal y penado por la ley. La gravedad aumenta, si compartes su tarjeta de suscripción con los demás. Este documento se asume que una tarjeta de suscripción válida está siendo utilizado y propiedad y que la tarjeta es compartida sólo dentro de la red local. Este documento es también una prueba de concepto y está diseñado sólo para uso académico.
Creación y configuración de OSCAM tarjeta servidor no es un proceso fácil, y sólo la parte de la instalación y los relacionados con la conexión con el servidor de tvheadend serán discutidos aquí, debido a la nota de arriba. Puede encontrar información adicional en internet.
El servidor de Oscam puede descargarse como un archivo binario desde un repositorio, o puede ser construido de fuentes. Como constantemente se está desarrollando, es mejor tenerlo construido a partir de fuentes, como estructuras binarias son generalmente anticuadas.
Para construir, paquetes adicionales debe ser instalado antes. Los siguientes pasos cubrirá la instalación de construir herramientas, oscam, arranque parada de secuencias de comandos y secuencias de comandos de actualización automática:
un) instalar construir herramientas, librerías
apt-get update
apt-get - y install apt-utils usbutils diálogo
apt-get - y install gcc g ++ wget
apt-get - y install build-essential subversion libpcsclite1 libpcsclite-dev
apt-get - y install libssl-dev cmake para
apt-get - y install libusb-1.0-0-dev nano
apto-conseguir instalar pcscd pcsc-tools
b) instalación de oscam desde repositorio
CD/home/osmc
svn checkout http://www.streamboard.tv/svn/oscam/trunk oscam-svn
mkdir build
chmod 755 construir
compilación de CD
CMake...
Si no hay ningún error de configuración, los scripts hacen deberán realizarse:
hacer
Asegúrese de instalar
Después de la instalación, se creará un script de servicio systemd:
nano /etc/systemd/system/oscam.service
Contenido del archivo:
[Unidad]
Descripción = oscam
After=Network.Target
[Servicio]
Tipo = bifurcar
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
Reiniciar siempre =
RestartSec = 5
[Instalar]
WantedBy = multi-user.target
Para iniciar automáticamente en tiempo de arranque del sistema, se ejecutará el siguiente comando:
systemctl enable oscam.service
Los archivos de configuración se colocará en la carpeta siguiente:
/var/etc/oscam
mkdir /var/etc
mkdir /var/etc/oscamchown osmc.osmc /var/etc/oscam-R
Para iniciar el servidor de oscam, será ejecutado el siguiente comando:
systemctl Inicio oscam.service
Ahora crearemos y script de actualización automática:
Nano /usr/local/bin/oscam_update.sh
El script necesita permisos para ser ejecutado:
chmod 755 /usr/local/bin/oscam_update.sh
El contenido del archivo:
#! / bin/sh
echo "Actualización de oscam Started"
CD/home/osmc
Si [! -d "$DIRECTORY"]; entonces
svn checkout http://www.streamboard.tv/svn/oscam/trunk oscam-svn
fi
CD oscam-svn
svn update
Si [! -d "build"]; entonces
# Control entrará aquí si $DIRECTORY no existe.
mkdir build
fi
compilación de CD
CMake...
hacer
systemctl parada oscam
Asegúrese de instalar
systemctl reinicio oscam
sueño 10
Esta secuencia de comandos comprueba hacia fuera la última versión desde el repositorio en línea, si hay actualmente existentes, o llevará a cabo una actualización de los archivos más recientes, si ya existe, luego intentará construir el paquete. Al final, se detendrá la versión ejecuta, se instalará la nueva versión y al final se reiniciará el servicio.
Podemos probar la secuencia de comandos ejecutando:
/usr/local/bin/oscam_update.sh
Para ejecutar este script periódicamente, vamos a crear una entrada para el programador de tareas de cron:
crontab-e
Si se le solicita, podremos seleccionar como editor, nano, y una vez que el archivo se abre, podemos agregar las siguientes líneas:
#update oscam en 4:02, en el 5 º día de la semana
2 4 ** 5 /usr/local/bin/oscam_update.sh >/dev/null
Como el servidor se está desarrollando constantemente, puede suceder que también hay pérdidas de memoria que consumen recursos del sistema con el tiempo. Para resolver este impedimento, podemos crear un script de reinicio automático:
Nano /usr/local/bin/oscam_autorestart.sh
Para poder ejecutarlo, podremos establecer los permisos correctos:
chmod 755 /usr/local/bin/oscam_autorestart.sh
El contenido del archivo:
#! / bin/sh
systemctl parada oscam.service
sueño 5
systemctl Inicio oscam.service
Podemos probar la secuencia de comandos ejecutando:
/usr/local/bin/oscam_autorestart.sh
Para ejecutar este script periódicamente, vamos a crear una entrada para el programador de tareas de cron:
crontab-e
y agregue las siguientes líneas a él:
#restart oscam en 3:54
54 3 *** /usr/local/bin/oscam_autorestart.sh >/dev/null
Desde este punto además asumiremos que tenemos un trabajo servidor Oscam en nuestra frambuesa Pi, o en nuestra red interna, pero en otra máquina. Elaboraremos más adelante para ver por qué esto es también aceptable.
Para usar oscam para descodificar los canales codificados, es necesario hacer una conexión entre el servidor de tvheadend y servidor de oscam.
Tvheadend tiene gran soporte para CAs (acceso condicional); podemos encontrar que los parámetros de la configuración -> punto del menú CAs
Lo importante para nosotros es el protocolo newcamd o el dvbapi protocolo.
Si tenemos solamente un CAID (tarjeta de identificación, cada proveedor tiene al menos una tarjeta de identificación, pero puede tener también más), a continuación, podríamos usar también una conexión de newcamd entre tvheadend y oscam.
Como suponemos que nos gustaría ver más canales de diferentes proveedores, utilizaremos el protocolo dvbapi, que ampliamente apoyada en un montón de STB basado en Enigma.
Antes de proceder, alguna información de fondo corto sobre cifrado de wikipedia:
"
Esto se logra por una combinación de codificación y cifrado. La secuencia de datos es codificada con una clave secreta de 48 bits, llamada la palabra de control. Conocer el valor de la palabra de control en un momento dado es de relativamente poco valor, como en condiciones normales, los proveedores de contenido va a cambiar la palabra de control varias veces por minuto. La palabra de control se genera automáticamente de tal manera que los valores sucesivos no son generalmente predecibles; la especificación DVB recomienda el uso de un proceso físico para ello.
En orden para el receptor descifrar la secuencia de datos, debe ser informado permanentemente sobre el valor actual de la palabra de control. En la práctica, se debe informar un poco por adelantado, por lo que se produce sin interrupción de la visión. Cifrado se utiliza para proteger la palabra de control durante la transmisión para el receptor: la palabra de control está codificada como un mensaje de control derecho (ECM). El subsistema de CA en el receptor descifrará la palabra de control sólo cuando el autorizado para hacerlo; que la autoridad se envía al receptor en forma de un mensaje de gestión de derechos (EMM). El EMM son específicos a cada suscriptor, identificado por la tarjeta inteligente en su receptor, o a grupos de suscriptores y se emiten mucho menos ECMs, generalmente en los intervalos mensuales. Este al parecer no es suficiente para evitar la visualización no autorizada, TPS ha bajado este intervalo hasta unos 12 minutos. Esto puede ser diferente para cada proveedor, BSkyB utiliza un término de 6 semanas. Cuando Nagravision 2 fue hackeado, Digital + comenzó a enviar un nuevo EMM cada tres días para hacer no autorizado ver más engorroso.
El contenido de ECM y EMM no se estandardiza y como tal dependen al sistema de acceso condicional.
"
Aquí puede encontrar más información aquí:
https://en.wikipedia.org/wiki/Conditional_access
En Resumen, en el contenido recibido deberemos enviar el ECM a la tarjeta de suscripción válida y recuperar la clave de descifrado. Esto significa que el servidor de tvheadend necesita comunicarse con el servidor de oscam, necesita comunicarse con el lector de tarjetas en el que hay una tarjetas de suscripción válida. Ahora, la parte que se encarga de la comunicación de oscam con las tarjetas o servidores remotos no se discute aquí, se discute ampliamente en internet en varios foros.
Necesitamos configurar tvheadend enviar el ECMs y solicitar las claves de descifrado desde el servidor de oscam. Como se dijo antes, utilizamos el protocolo de dvapi, pero por desgracia, tenemos más variantes también aquí:
a) en el pasado, el Enigma2 basado en receptores linux creados un archivo de socket, generalmente en la carpeta/tmp, llamada camd.socket. A través de esta toma la CAM (Conditional Access Module) servidor y el Enigma2 basado en set-top-box usada para intercambiar datos. Esto tiene una desventaja: el servidor de cámara necesario para sondear nuevos datos cada vez, por lo tanto esto no era un buen diseño. Sin embargo, esto se mantuvo para las edades y, por desgracia este método es ampliamente utilizado como ejemplo en varios foros. Afortunadamente, hay formas mejores de ahora y, según lo sugerido también en la web tvheadend, se utilizará lo más nuevo: http://docs.tvheadend.org/webui/config_caclient/... Más viejos servidores de la CAM, como CCcam sólo admite este método. Servidores más modernos de la CAM, como oscam admite también nuevos y mejores métodos.
Por desgracia, también hay un tutorial más disponible en el internet que confunde al usuario.
b) el fichero de socket era no un buen diseño, debido a los problemas enumerados anteriormente, y oscam implementa los protocolos dvbapi mejor. Ahora, puede utilizar un enfoque de cliente y el servidor de TCP/IP basado en (o UDP, pero ya en desuso) para establecer la comunicación entre el servidor oscam y tvheadend. En este caso, el servidor se crea en el lado de oscam y tvheadend se conectará a ella como cliente, sólo si es necesario. Por lo tanto, no hay ninguna votación y lo mejor, puede ser el servidor de oscam en una máquina diferente que tvheadend (aún así, debe estar en la misma red y aislado del exterior, ya que no existe ningún mecanismo de autenticación implementado entre ellos - así que cualquiera se puede conectar).
Esto significa que incluso si el servidor de tvheadend está en una máquina diferente, usted puede solicitar las claves de descodificación de oscam sin perder un salto. Saltos son parte de la manera los trabajos de intercambio de oscam, también no está en el foco de este documento. Si queremos usar oscam en la frambuesa mismo, tenemos que instalar y configurar como se describe en el capítulo anterior.
Una vez que haya un trabajo oscam servidor de la red, procedemos a configurar la conexión con tvheadend. Esto puede hacerse también de manu de interfaz web del servidor de oscam, pero al final, tenemos que terminar con la siguiente configuración en el archivo oscam.conf: [dvbapi] habilitado = 1 au = 1 #if desea pasar datos EMM para suscripción actualizaciones pmt_mode = 4 request_mode = 1 listen_port = 9000 usuario = dvbapi polimerados = pc
Reinicio oscam y nosotros debemos estar dispuestos en el lado del servidor de oscam.
Nota: Si corremos oscam en una máquina diferente que tvheadend, tenemos que asegúrese de configurar correctamente el firewall para permitir conexiones de TCP en el puerto 9000.
Lado de tvheadend, en Configuración -> CAs menú punto tenemos agregar un nuevo cliente de acceso condicional y de la lista de elegir CAPMT (Linux DVBAPI).
Aquí tenemos que configurar como en la imagen adjunta a este paso.
Explicación:
-nombre del cliente, comentario puede ser cualquier cosa.
-Modo: esta es la parte difícil. Para poder utilizar el llamado modo 5 o versión 2, necesitamos tener una poco de nueva construcción de oscam. Esta es la forma soportada también por oscam, otros métodos se quitarán en el futuro. Por lo tanto se recomienda actualizar la oscam a una versión más reciente, sin dejar de mencionar que en éstos se abordaron muchos temas. Si todavía tienes que quedarte con una versión anterior, eligieron oscam tcp. Se recomienda no utilizar el viejo método de camd.socket, por lo tanto no presenta aquí.
-En la captura de pantalla podemos ver 192.168.1.3, ya que en esa configuración, el servidor de oscam se ejecuta en un servidor dedicado independiente, tvheadend de frambuesa se conecta a él. En nuestro caso estamos corriendo oscam en la misma máquina (es decir, el RPi2), a continuación vamos a utilizar 127.0.0.1 como host.
-El puerto de escucha será 9000, ya que es utilizado en el servidor de oscam. Podemos cambiar a otro valor, pero hay que asegurarse que el puerto está libre. También tenemos que asegurarnos de que cambiamos también en el lado de oscam, de lo contrario no se establece la conexión.
Una vez que todo está configurado, guardamos la configuración y debemos ver que la conexión se establece.
Nota:
1) la consola de depuración en la parte inferior de la página se puede abrir en cualquier momento y podemos consultar la salida que genera.
2) nunca abrir el puerto 9000 a la red WAN, es decir, fuera de la red local. Cualquiera puede conectarse y no sólo no será capaces de conectar, pero extraños también fraudulentamente pueden usar nuestro servidor, o peor aún, comprobar que estamos corriendo en el servidor de oscam.
Una vez que esta es la configuración, deberíamos podemos ver canales codificados, de la misma manera como lo hacemos en su caja enigma2 basado.