MikroTik a la fecha no ofrece un sistema de administración basado en la nube.

Pero MikroTik con sus diferentes herramientas que tiene se puede generar una plataforma propia para la administración de los equipos en un esquema de conexiones en la nube.

Para generar nuestra plataforma de administración tenemos dos opciones que podemos elegir:

  1. Tener un Router MikroTik como servidor, para esta opción será necesario contar con un servicio de internet que nos permita abrir y redireccionar el trafico de los puertos necesarios para las conexiones de los clientes.
  2. Contratar el hospedaje de una instancia CHR de MikroTik que es un router virtual con el RouterOS de MikroTik.

Diagrama de conectividad

Requisitos Previos:

  • Configurar cada router remoto con un segmento de Red LAN único:

MikroTik – Configurar Red LAN

  • Que los Routers remotos tengan servicio de internet.

Sin importar cuál de las formas que tengamos para montar el Servidor, la configuración es exactamente la misma.

Configurando el Servidor

Paso 1.- Primero permitiremos las conexiones de los clientes por los puertos que usara nuestra VPN

#Permitir conexiones en los puertos de la VPN
/ip firewall filter
add action=accept chain=input comment=in_accept_ipsec in-interface=ether1 protocol=ipsec-esp place-before=0
add action=accept chain=input comment=in_accept_ipsec dst-port=500,4500 in-interface=ether1 protocol=udp place-before=0
add action=accept chain=input comment=in_accept_l2tp dst-port=1701 in-interface=ether1 protocol=udp place-before=0
/ip firewall filter> print
Flags: X - disabled, I - invalid, D - dynamic
 0    ;;; in_accept_L2TP
      chain=input action=accept protocol=udp dst-port=1701 log=no log-prefix=""
 1    ;;; in_accept_IPsec
      chain=input action=accept protocol=udp dst-port=500,4500 log=no log-prefix=""
 2    ;;; in_accept_IPsec
      chain=input action=accept protocol=ipsec-esp log=no log-prefix=""

Paso 2.- Ahora habilitaremos el servicio en nuestro Router de VPN

/interface l2tp-server server
set authentication=mschap2 enabled=yes ipsec-secret=password-ipsec use-ipsec=yes
/interface l2tp-server server> print
               enabled: yes
               max-mtu: 1450
               max-mru: 1450
                  mrru: disabled
        authentication: mschap2
     keepalive-timeout: 30
          max-sessions: unlimited
       default-profile: default-encryption
             use-ipsec: yes
          ipsec-secret: password-ipsec
        caller-id-type: ip-address
  one-session-per-host: no
       allow-fast-path: no

Paso 3.- Ahora ya solo nos falta generar las credenciales de los equipos que se van a conectar con nuestro servidor

/ppp secret
add local-address=10.10.10.1 name=Usuario1 password=password1 profile=default-encryption remote-address=10.10.10.2 service=l2tp
add local-address=10.10.10.1 name=Usuario2 password=password2 profile=default-encryption remote-address=10.10.10.3 service=l2tp
add local-address=10.10.10.1 name=Usuario3 password=password3 profile=default-encryption remote-address=10.10.10.4 service=l2tp
/ppp secret> print
Flags: X - disabled
 #   NAME     SERVICE CALLER-ID PASSWORD  PROFILE         REMOTE-ADDRESS
 0   Usuario1 l2tp              password1 default-enc     10.10.10.3
 1   Usuario2 l2tp              password2 default-enc     10.10.10.2
 2   Usuario3 l2tp              password3 default-enc     10.10.10.4

Paso 4.- Tenemos que activar la opción de proxy-arp, para que los clientes que no son routers puedan usar la tabla de ARP del servidor, esto es por qué los equipos como laptops, celulares, tablets; no tiene la forma de configurar reglas de rutas. 

/interface ethernet
set [ find default-name=ether1 ] arp=proxy-arp

Configurando al Cliente MikroTik

Los clientes no requerirán que los puertos sean abiertos ni habilitar ningún servicio, lo único que requiere es conectarte al servidor, ya sea por Dominio o IP Publica

Paso 1.- Generaremos las credenciales de conexión en el cliente.

/interface l2tp-client
add allow=mschap2 connect-to=IP/Dominio disabled=no ipsec-secret=password-ipsec name=l2tp-VPN password=password1 user=Usuario1
/interface l2tp-client> print
Flags: X - disabled, R - running
 0  R name="l2tp-VPN" max-mtu=1450 max-mru=1450 mrru=disabled connect-to=IP/Dominio
      user="Usuario1" password="password1" profile=default-encryption keepalive-timeout=60 use-ipsec=yes
      ipsec-secret="password-ipsec" allow-fast-path=no add-default-route=no dial-on-demand=no allow=mschap2

Nota: en el código aparece la leyenda "R - running" cuando la conexión se a establecido satisfactoriamente.

Este paso se tendrá que replicar en cada uno de los clientes que se quieran conectar, cada uno con sus propias credenciales.

Conectar dispositivos móviles como clientes

Configuración que se requiere en los equipos

Los equipos remotos que se van a conectar a la red cada uno tiene que tener su propia Red LAN, se puede referir al siguiente articulo:

MikroTik – Configurar Red LAN

Una vez que cada equipo cliente a sido configurado y tiene cada uno su propio segmento de Red, tenemos que indicarle al equipo Servidor donde se encuentra cada una de las redes configuradas, para visualizar esto hay que ver el diagrama inicial de la solución: 

Configuración del servidor

En el servidor hay que registrar la Red de las direcciones IP de los túneles, así como también las redes remotas a las que se requiere conectar.
La mascara de red que se utilizara en él ID de la red que generan los túneles dependerá de la cantidad de IP's requeridas para el total de los túneles generados.

/ip firewall address-list
add address=10.10.10.0/29 list=Red-Tunnel
add address=192.168.1.0/24 list=Red-Tunnel
add address=192.168.2.0/24 list=Red-Tunnel

En el Firewall, tendremos que generar las reglas donde permitiremos que las redes que son de los túneles puedan conectarse al Servidor así como también pasar por el servidor para alcanzar a las demás redes.

/ip firewall filter
add action=accept chain=forward comment=fw_accept_Red-Tunnel src-address-list=Red-Tunnel place-before=0
add action=accept chain=input comment=in_accept_Red-Admin src-address-list=Red-Tunnel place-before=0

En la tabla de ruteo del servidor generaremos las rutas estáticas para indicar a travez de cual cliente accederemos a la Red LAN:

/ip route
add dst-address=192.168.1.0/24 gateway=10.10.10.2 comment=Red-Oficina
add dst-address=192.168.2.0/24 gateway=10.10.10.3 comment=Red-WISP
/ip route> print

Flags: X - disabled, A - active, D - dynamic, C - connect, S - static, r - rip, b - bgp, o - ospf, m - mme,
B - blackhole, U - unreachable, P - prohibit
 #      DST-ADDRESS        PREF-SRC        GATEWAY            DISTANCE
 0 ADC  10.10.10.2/32      10.10.10.1      <l2tp-Usuario1>           0
 1 ADC  10.10.10.3/32      10.10.10.1      <l2tp-Usuario2>           0
 2 ADC  10.10.10.4/32      10.10.10.1      <l2tp-Usuario3>           0
 3 A S  ;;; Red-Oficina
        192.168.1.0/24                     10.10.10.2                1
 4 A S  ;;; Red-WISP
        192.168.2.0/24                     10.10.10.3                1
 

Configuración del cliente

En el cliente al igual que en el servidor es importante configurar en el Firewall las redes que son del túnel y las redes remotas.

/ip firewall address-list
add address=10.10.10.0/29 list=Red-Tunnel
add address=192.168.1.0/24 list=Red-Tunnel
add address=192.168.2.0/24 list=Red-Tunnel
/ip firewall filter
add action=accept chain=forward comment=fw_accept_Red-Tunnel src-address-list=Red-Tunnel place-before=0
add action=accept chain=input comment=in_accept_Red-Admin src-address-list=Red-Tunnel place-before=0

Dependiendo del router cliente en el que nos encontremos tenemos que dar de alta la Red LAN remota;
El cliente ya conoce la Red LAN 192.168.1.0/24; esto significa que este equipo remotamente requiere conectarse a la Red LAN 192.168.2.0/24
Adicionalmente se tiene que dar de alta una ruta estática hacia la red de los túneles para que el router cliente acepte las conexiones de los equipos móviles.

/ip route
add dst-address=192.168.2.0/24 gateway=10.10.10.1 comment=Red-Oficina
add dst-address=10.10.10.0/29 gateway=10.10.10.1 comment=Red-Tuneles
/ip route> print
Flags: X - disabled, A - active, D - dynamic, C - connect, S - static, r - rip, b - bgp, o - ospf, m - mme,
B - blackhole, U - unreachable, P - prohibit
 #      DST-ADDRESS        PREF-SRC        GATEWAY            DISTANCE
 0 ADC  10.10.10.1/32      10.10.10.2      <l2tp-VPN>                0
 1 A S  ;;; Red-Tuneles
        10.10.10.0/29                      10.10.10.1                1
 2 A S  ;;; Red-WISP
        192.168.2.0/24                     10.10.10.1                1

El cliente ya conoce la Red LAN 192.168.2.0/24; esto significa que este equipo remotamente requiere conectarse a la Red LAN 192.168.1.0/24
Adicionalmente se tiene que dar de alta una ruta estática hacia la red de los túneles para que el router cliente acepte las conexiones de los equipos móviles.

/ip route
add dst-address=192.168.1.0/24 gateway=10.10.10.1 comment=Red-WISP
/ip route> print
Flags: X - disabled, A - active, D - dynamic, C - connect, S - static, r - rip, b - bgp, o - ospf, m - mme,
B - blackhole, U - unreachable, P - prohibit
 #      DST-ADDRESS        PREF-SRC        GATEWAY            DISTANCE
 0 ADC  10.10.10.1/32      10.10.10.3      <l2tp-VPN>                0
 1 A S  ;;; Red-Tuneles
        10.10.10.0/29                      10.10.10.1                1
 2 A S  ;;; Red-Oficina
        192.168.1.0/24                     10.10.10.1                1

De esta forma los equipos que se conectan a la VPN puede acceder a los equipos que se encuentran en la Red, y podemos administrar y configurarlos con la nueva app móvil de MikroTik: https://mikrotik.com/mobile_app

¿Donde puedo montar un CHR en la Nube?

Unos de los servicios de hospedaje que se pueden usar son:

  • BLAZAR
  • Ya entrega el CHR instalado y configurado para ser usado.

¿Qué mas requiero para activar el CHR?

Para activar un CHR se requiere adquirir una licencia:

    Licencia                    Speed limited
Gratis.                                  1 Mbps
P1 = L4                                 1 Gbps
P10 = L5.                             10 Gbps
P-Unlimited = L6                Unlimited  

¿Encontró su respuesta?