
Tailscale es una compañia de software que nos va a permitir conectar nuestro receptor enigma2 via VPN de una manera facil y segura. Tailscale hace uso de SDN (Software Defined Networks) para realizar la comunicacion entre los diferentes nodos a la red privada virtual VPN e interconectarlos entre sí. Su funcionamineto es muy similar a ZeroTier.
Tailscale hace uso de VPN WireGuard para proporcionar confidencialidad, autenticación e integridad de datos, por tanto, no solamente estaremos seguros, sino que el rendimiento que conseguiremos será realmente rápido. Una característica muy importante de Tailscale, es que las comunicaciones son punto a punto, el tráfico de red no pasará a través de sus servidores, por tanto, tendremos una baja latencia y una muy buena velocidad real.
1. Creación cuenta Tailscale
En primer lugar vamos a crearnos una cuenta en la web Tailscale para ello accedemos a la siguiente url: https://tailscale.com/ y ahora simplemente nos registramos en la misma.
- En este caso una cuenta Tailscale sera para el receptor Servidor, y otra cuenta tailscale sera para como invitada para el receptor cliente.
Como hemos comentado en primer lugar debemos crear cuenta en tailscale, que es bastante facil, simplemente accedemos a la web antes mencionada:
Pulsamos sobre Use Tailscale y nos permitara el registro a traves de diferentes sistemas de cuentas de correo
Tras ello ya accedemos a Tailscale.
Pulsando sobre nuestra cuenta de correo nos aparecera la gestion de tailscale, en un primer momento sin machines hasta que realizemos la instalacion de tailscale en nuestro receptor enigma2 y realizemos la autorizacion.
2. Instalacion de Tailscale en receptor Enigma2
Para realizar la instalacion de Tailscale lo vamos a realizar para receptor enigma2 con cpu ARM y basados en oe-Aliance, en este caso lo realizamos bajo imagen Openatv versiones 7.xx. Para ello vamos a realizar los siguientes pasos:
1. Pulsamos en menu + configuracion
2. Pulsamos sobre administrar software
3. Pulsamos sobre opciones avanzadas
4. pulsamos sobre administrar paquetes
5. Pulsamos sobre tailscale para realizar la instalacion
6. Reiniciamos completamente el receptor.
3. Activacion de Tailscale en receptor enigma2
Ahora vamos a ver como activar la autorizacion de tailscale en el receptor enigma2 para ello realizamos los siguientes pasos:
1. Accedemos al receptor por terminal y ejecutamos el comando:
tailscale up
Ahora observaremos que nos aparece una url que pondremos en nuestro navegador web nos loguemos y ya tendremos nuestro receptor enigma2 añadido a la red tailscale.
Observando como el receptor que hemos añadido ya nos aparece en machines en tailscale
4. Invitar a otra red tailscale para conectarse a nuestro receptor
Ahora como hemos comentado queremos invitar otra cuenta tailscale de otro receptor para que se conecte a nuestro receptor, para ello es muy simple:
1. Pulsamos sobre los … y luego sobre share
2. ahora hacemos dos pasos:
a) Le damos a generate
b) pulsamos luego sobre copy invite link, y ese link se lo damos a la otra cuenta tailscale que deseamos que se conecte como invitado a nuestro receptor.
3. Cuando halla aceptado el link de invitacion nos aparecera como invitado de la maquina deseada
5. Control de acceso de tailscale
Cuando realizamos la conexion Tailscale entre nuestros dispositivos un problema que nos podemos encontrar es que como hemos comentado al realizar dicha conexion todos los dispositivos es como si estuvieran en la misma red fisica lo que provoca que el dispositivo invitado tiene acceso a todos los puertos.
Para evitar que el invitado tailscale tenga acceso a todos los puertos o maquinas de nuestro red tailscale vamos a usar el Access Control de tailscale mas conocido como ACL, de esta manera vamos a limitar que la cuenta tailscale invitada solo tenga acceso en este ejemplo solamente al puerto 27500 de nuestro receptor, hay diversas formas de hacerlo os vamos a mostrar una forma sencilla.
1. Pulsamos sobre Acces Control en tailscale y observaremos que podemos establecer reglas
2. Ahora para facilitar el uso os dejamos unas reglas simples para que solo tengan acceso los invitados a nuestro receptor al puerto 27500
// Example/default ACLs for unrestricted connections.
{
// Declare static groups of users beyond those in the identity service.
"groups": {
"group:admins": ["email de registro servidor"],
},
// Declare convenient hostname aliases to use in place of IP addresses.
"hosts": {
"example-host-1": "100.100.100.100",
},
// Access control lists.
"acls": [
// Los que mandan
{"action": "accept", "src": ["group:admins"], "dst": ["*:*"]},
// Los invitados que vienen a chupar
{
"action": "accept",
"src": ["autogroup:shared"],
"dst": ["ip tailcale deco servidor:22500"],
},
],
"ssh": [
// Allow all users to SSH into their own devices in check mode.
// Comment this section out if you want to define specific restrictions.
{
"action": "check",
"src": ["autogroup:members"],
"dst": ["autogroup:self"],
"users": ["autogroup:nonroot", "root"],
},
],
}
Basicamente:
Creamos un grupo administradores donde añadiremos nuestra cuenta de acceso a tailscale o de otras cuentas que deseamos que sean admis:
«groups»: {
«group:admins»: [«nuestra cuenta gmail»],
},
Creamos las reglas de acceso
«acls»: [
// Los que mandan
{«action»: «accept», «src»: [«group:admins»], «dst»: [«*:*»]},
// Los invitados que vienen a chupar
{
«action»: «accept»,
«src»: [«autogroup:shared»],
«dst»: [«iptailscale del receptor:22500»],
},
],
El grupo admis tiene acceso a todas las maquinas y puertos
autogroup:shared — que son los usuarios invitados en tailscale solo tienen acceso a la ip tailscale del receptor y solo en el puerto 22500.
y eso seria todo, bastante facil.