Wireguard en Enigma2 OpenATV

En este articulo vamos a crear una red vpn con Wireguard en imagen enigma2 OpenATV. Wireguard esta disponible en Openatv para su instalación desde hace unos meses.

Una VPN (Virtual Private Network) o en nuestro idioma Red Privada Virtual es una tecnología que nos permite crear un túnel virtual que emula una conexión directa a nuestro router aunque nos encontremos a kilómetros de distancia. Es decir nos permite conectarnos desde fuera de red a nuestro receptor como si estuviéramos en nuestra red.

Esta conexión pues nos permitirá de una manera cifrada conectarnos a nuestro receptor como si estuviéramos en nuestra red para por ejemplo:

  • Realizar streaming
  • ftp
  • sftp
  • telnet
  • ssh

Instalación de Wireguard

Openatv en sus repositorios han incluido todo lo necesario para su instalacion, por lo que vamos a ver como realizar la misma para ello accedemos por terminal y ejecutamos los siguientes comandos:

opkg update

opkg install wireguard-tools

opkg install wireguard-tools-bash-completion

 

Generar Claves

Una vez realizada la instalacion de wireguard en primer lugar vamos a generar claves para el servidor y para un cliente para ello ejecutaremos los siguientes comandos:

1. En primer lugar nos debemos situar en el directorio de wireguard para ello ejecutamos:

cd /etc/wireguard

2. Damos permiso al directorio

umask 077

3. Ahora generamos claves

wg genkey > server_private_key
wg pubkey > server_public_key < server_private_key

wg genkey > jungle_private_key
wg pubkey > jungle_public_key < jungle_private_key

 

Ahora con el comando siguiente podemos ver que se nos han creado los 4 archivos:

ls

 

Con un editor de textos podemos abrir cada archivo para ver su contenido, donde observaremos que cada archivo tendra una key por ejemplo:

server_private_key: 11111111
server_public_key:2222222
jungle_private_key:3333333
jungle_public_key:444444444

Configurar Servidor Wireguard en OpenATV

Ahora vamos a realizar la configuracion del servidor Wireguard en OpenATV para ello vamos a realizar los siguientes pasos.

1. Creamos un archivo llamado por ejemplo jungleserver.conf en /etc/wireguard con el siguiente contenido:

[Interface]
Address = 123.123.123.1/24
ListenPort = 3129
PrivateKey = 1111111

[Peer]
PublicKey = 4444444
AllowedIPs = 123.123.123.2/32

  • [Interface]: principio de los parametros de la interfaz servidor
  • Address: Esta es la dirección IP virtual que tendrá el servidor VPN,nos la podemos inventar, pero de acuerdo a las reglas de las ips.
  • ListenPort: Es el puerto que utilizará el servidor, el puerto que pongamos lo debemos redireccionar en nuestro router a la ip del receptor
  • PrivateKey: es la clave privada del servidor que creamos antes.
  • [Peer]: principio de los parametros para cliente
  • PublicKey: Aquí va la clave pública del cliente que hemos generado antes.
  • AllowedIPs: Esta es la dirección IP virtual que tendrá el cliente, repetando las normas de creacion ip y en concordancia con la dirección IP virtual que le hemos puesto al  servidor.

Activación del Servidor

Una vez hemos creado el archivo de configuración del servidor Wireguard en OpenATV, ahora vamos a iniciarlo, para ello por terminal ejecutamos el comando:

wg-quick up jungleserver

Nota: Si al ejecutar el comando nos da el siguiente error de /dev

Ejecutaremos este comando y a continuacion volveremos a ejecutar el up

ln -s /proc/self/fd /dev/fd

Si todo va bien se mostrara:

 

En el caso que deseemos desactivarlo usaremos:

wg-quick down jungleserver

Para comprobar que todo es correcto podemos ejecutar el comando:

wg show

Si ejecutamos ifconfig observaremos que se nos ha creado una nueva red

 

Configurar un cliente

Ahora vamos a ver como crear un cliente, para ello en el directorio /etc/wireguard creamos un archivo en este ejemplo llamado jungle.conf de la siguiente manera:

[Interface]
Address = 123.123.123.2/32
PrivateKey = 33333333
DNS = 8.8.8.8

[Peer]
PublicKey = 22222222222
AllowedIPs = 0.0.0.0/0, ::/0
Endpoint = ippublica o dominio:3129

  • [Interface]: Inicio parametros cliente
  • Address: Aquí irá la dirección IP del cliente que permitimos en la sección AllowedIPs del archivo wg0.conf
  • PrivateKey: Aquí debe ir la clave privada del cliente que se halla en el archivo (client_private_key).
  • DNS: Aquí ponemos la dirección del servidor DNS que prefiramos usar.
  • [Peer]: Se inicia la parte de configuración del cliente referenciando al Servidor Wireguard.
  • PublicKey: Aquí ponemos la clave pública del servidor que está en el archivo «server_public_key».
  • AllowedIPs: Podemos las direcciones IP que están ahí para permitir que todo tráfico pueda fluir por nuestro móvil.
  • Endpoint: Aquí debemos poner nuestra ip publica o host dns y el puerto que hemos redireccionado en nuestro router.

Tras la creacion del archivo ahora desactivamos y activamos wireguard como vimos en la creacion del servidor.

Creacion de codigo QR

Para facilitar la creacion de los datos cliente en nuestro movil por ejemplo, tenemos la posibilidad de crear un codigo QR que tras instalar wireguard en nuestro movil podemo realizar la conexion leyendo dicho codigo QR.

Para ellos vamos a realizar los siguientes pasos:

1. Nos descargamos el siguiente archivo:

Descarga

2. Lo descomprimimos en nuestro Pc e introducimos los archivos en nuestro receptor de la siguiente manera:

qrencode —- en /usr/bin

libpng12.so.0.50.0 —- en /usr/lib

libqrencode.so.3.4.3 —- en /usr/lib

3. Ahora ejecutamos los siguientes comandos:

chmod 777 /usr/bin/qrencode

ln -s /usr/lib/libqrencode.so.3.4.3 /usr/lib/libqrencode.so.3

ln -s /usr/lib/libpng12.so.0.50.0 /usr/lib/libpng12.so.0

Y ya podemos crear el codigo QR para ello ejecutamos el siguiente comando estando situados en etc/wireguard

qrencode -t ANSIUTF8 < jungle.conf

Y ya lo tenemos todo listo

Realizar conexion desde el movil

Tras instalar wireguard en nuestro movil, vamos a ver que facil es establecer la conexion, para ello pulsamos en + para añadir una nueva

Ahora seleccionamos a traves de codigo QR

Ahora escanemos el codigo QR generado

a continuacion podemos poner un nombre a la conexion

 

Y ya podemos acceder a nuestro receptor como si estuviéramos en nuestra misma red.

Related posts

6 Thoughts to “Wireguard en Enigma2 OpenATV”

  1. Mariusz

    How to activate the client itself? I have a server wireguard on VPS. I have a configuration file, or should I just do patch two with adding a client?

    1. For activating a client you have two ways: 1. Scan the QR code, 2. copy the configuration file

      1. but I want the decoder to be a client not a server.
        I have the configuration file from my VPS server.

  2. Copy the conf file of your peer into /etc/wireguard/wg0.conf and wg-quick up wg0

    1. husus1

      wireguard client is no ok enigma2

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: