Crear un servidor Web enigma2

En este articulo vamos a realizar la creacion de un servidor web en nuestro receptor enigma2 con protocolo https y asi mismo con acceso mediante usuario y password, bajo https para garantizar que la comunicacion entre nuestro servidor web y nuestra conexion desde otras maquinas sea cifrada, ya que de lo contrario si se usara protocolo http esta comunicacion es plana sin cifrar y se podria interceptar la misma y ver nuestros datos confidenciales.

La utilidad ya es la que cada uno necesite darle, necesidad de compartir archivos, acceso desde otros lugares para por ejemplo el visionado de peliculas que tengamos en algun disco duro…… y no tengamos en nuestro domicilio ningun tipo de servidor….

1 Creacion de certificados

En primer lugar vamos a crear unos certificados autofirmados necesarios para el protocolo https que vamos a crear, en este ejemplo los vamos a crear de una manera simple para tener los que vamos a necesitar que son en este caso:

  • cert.pem
  • key.pem

Los cuales vamos a ubicar en /etc/enigma2.

Accedemos a nuestro receptor mediante terminal y nos situamos en el directorios /etc/enigma2

cd /etc/enigma2

A continuacion ejecutamos el siguiente comando, en este ejemplo basico los vamos a generar autofirmados y con una duracion de un año

openssl req -x509 -newkey rsa:4096 -nodes -out cert.pem -subj "/C=ES/ST=MADRID/L=MADRID/O=enigma2, Inc./OU=IT/CN=jungle-team.com" -keyout key.pem -days 365

Tras la ejecucion del comando observaremos que tenemos ambos archivos:

z1

2 Creacion servidor web https

Para la creacion de nuestro servidor web https con autenficacion hemos realizado un pequeño script python basado en los modulos python para la version 2.x que es la que lleva integrada nuestros receptores enigma2 mas concretamente usando el modulo BaseHTTPServer llamado jungle-web.py, que a continuacion vamos a ver como editarlo.

2.1 Introduccion del script

Lo introducimos en el directorio /usr/bin de nuestro receptor y a continuacion le damos permiso de ejecucion:

chmod +x /usr/bin/jungle-web.py

2.2 Configuracion del script

Una vez hemos introducido el script ahora vamos a ver como realizar su configuracion, en primer lugar vamos a crear un usuario con password el cual sera el que debemos usar para acceder a nuestro servidor web, para ello lo creamos en base64, siendo el formato usario:password, por ejemplo root:jungleteam, para ello lo podemos hacer facilmente usando el siguiente comando

echo 'root:jungleteam' | base64

z6

En este ejemplo apuntamos cm9vdDpqdW5nbGV0ZWFtCg==

Ahora abrimos el script jungle-web.py y vamos a configurarlo, para ello buscamos:

user_con = ‘cm9vdDpqdW5nbGV0ZWFtCg==’
realm = ‘servidor web’
certfile = ‘/etc/enigma2/cert.pem’
keyfile = ‘/etc/enigma2/key.pem’

En user_con pues introducimos el usuario y contraseña cifrado en base64

realm= nombre identificativo

Y cerfile y keyfile la direccion donde creemos los certifcados.

Ahora buscamos:

os.chdir(‘/media/hdd/movie’)
protocol = «HTTP/1.0»
host = ‘192.168.1.45’
port = 8000

/media/hdd/movie lo cambiamos por el directorio del receptor donde queremos que se ejecute el web server

host = podemos poner la ip de nuestro receptor

port = el puerto de acceso a nuestro servidor

3 Ejecucion del script

Ahora simplemente para ejecutar el script por terminal ejecutamos:

python /usr/bin/jungle-web.py

z10

Ahora ya podriamos acceder a nuestro servidor web https introduciendo en el navegador web

https://ipohost:8000

Como son certificados autofirmados nos aparecera que no son seguros, pero no le hagais caso, eso es debido como hemos comentado a que son autofirmados

El pase de diapositivas requiere JavaScript.

Related posts

Deja un comentario

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.

A %d blogueros les gusta esto: