
En la mayoría de los casos, conectar un enrutador a una VPN no es difícil, pero si desea proteger toda una red y al mismo tiempo mantener una velocidad de conexión óptima, la mejor solución es utilizar un túnel VPN. .
Enrutadores Mikrotik se han consolidado como soluciones confiables y muy flexibles, pero desafortunadamente todavía no existe y no se sabe cuándo aparecerá ni en qué formato. Recientemente los desarrolladores del túnel VPN WireGuard propusieron , que harán que su software para la organización de túneles VPN sea parte del núcleo de Linux, esperamos que esto facilite la implementación en RouterOS.
Pero, por ahora, desafortunadamente, para configurar WireGuard en el enrutador Mikrotik es necesario cambiar el firmware.
Flasheamos Mikrotik, instalamos y configuramos OpenWrt.
Primero, debe asegurarse de que OpenWrt sea compatible con su modelo. Puede verificar la correspondencia entre el modelo y su nombre de marketing e imagen .
Visite el sitio openwrt.com .
Para este dispositivo necesitamos 2 archivos:
Necesita descargar ambos archivos: Instalar y Actualización.

1. Configuración de la red, carga y configuración del servidor PXE.
Descargue para Windows en la última versión.
Descomprima en una carpeta separada. En el archivo config.ini agregue el parámetro rfc951=1 la sección [dhcp]. Este parámetro es el mismo para todos los modelos de Mikrotik.

Pasamos a la configuración de la red: debe establecer una dirección IP estática en una de las interfaces de red de su computadora.

Dirección IP: 192.168.1.10
Máscara de subred: 255.255.255.0

Ejecute Tiny PXE Server como Administrador y seleccione en el campo Servidor DHCP el servidor con la dirección 192.168.1.10
En algunas versiones de Windows, esta interfaz solo puede aparecer después de conectar Ethernet. Recomiendo conectar el enrutador y conectar inmediatamente el enrutador y el PC con un cable de par trenzado.

Haga clic en el botón «…» (en la parte inferior derecha) y especifique la carpeta en la que descargó los archivos de firmware para Mikrotik.
Seleccione el archivo cuyo nombre termina en «initramfs-kernel.bin o elf»

2. Arrancar el enrutador desde el servidor PXE.
Conecte un cable entre el PC y el primer puerto (wan, internet, poe in,…) del enrutador. Después, tome un palillo y móntelo en el orificio etiquetado como «Reset».

Encienda el enrutador y espere 20 segundos, luego retire el palillo.
En el transcurso del siguiente minuto, deberían aparecer los siguientes mensajes en la ventana del programa Tiny PXE Server:

¡Si apareció el mensaje, estás en el camino correcto!
Restablece los ajustes en el adaptador de red y configura la obtención de dirección de forma dinámica (por DHCP).
Conéctate a los puertos LAN del enrutador Mikrotik (2...5 en nuestro caso) utilizando el mismo cable de red. Simplemente cámbialo del puerto 1 al puerto 2. Abre la dirección en el navegador.

Accede a la interfaz administrativa de OpenWRT y dirígete al menú «System -> Backup/Flash Firmware»

En la subsección «Flash new firmware image», haz clic en el botón «Seleccionar archivo (Browse)».

Indica la ruta al archivo que termina en «-squashfs-sysupgrade.bin».

Después de esto, haz clic en el botón «Flash Image».
En la siguiente ventana, haz clic en el botón «Proceed». Comenzará la carga del firmware en el enrutador.

!!! ¡EN NINGÚN CASO APAGUES EL ENERGÍA DEL ENRUTADOR DURANTE EL PROCESO DE FLASHEO !!!

Después del flasheo y reinicio del enrutador, tendrás un Mikrotik con el firmware OpenWRT.
Problemas posibles y sus soluciones
En muchos dispositivos Mikrotik de 2019 se utiliza el chip de memoria FLASH-NOR tipo GD25Q15/Q16. El problema es que al reflashear se pierde la información sobre el modelo del dispositivo.
Si ves el error «The uploaded image file does not contain a supported format. Make sure that you choose the generic image format for your platform.», probablemente el problema esté en el flash.
Comprobar esto es fácil: ejecuta en el terminal del dispositivo el comando de verificación de ID de modelo
root@OpenWrt: cat /tmp/sysinfo/board_nameY si obtienes la respuesta «unknown», deberás indicar manualmente el modelo del dispositivo como «rb-951-2nd»
Para obtener el modelo del dispositivo, ejecuta el comando
root@OpenWrt: cat /tmp/sysinfo/model
MikroTik RouterBOARD RB951-2ndUna vez que tengas el modelo del dispositivo, configúralo manualmente:
echo 'rb-951-2nd' > /tmp/sysinfo/board_nameDespués de esto, podrás flashear el dispositivo a través de la interfaz web o mediante el comando «sysupgrade»
Crea un servidor VPN con WireGuard
Si ya tienes un servidor con WireGuard configurado, puedes omitir este paso.
Voy a utilizar la aplicación de la que ya .
Configuración del cliente WireGuard en OpenWRT
Conéctate al enrutador mediante el protocolo SSH:
ssh root@192.168.1.1Instala WireGuard:
opkg update
opkg install wireguardPrepara la configuración (copia el código de abajo en un archivo, sustituye los valores indicados por los tuyos y ejecútalo en el terminal).
Si usas MyVPN, solo necesitas cambiar en la configuración de abajo WG_SERV — IP del servidor, WG_KEY — clave privada del archivo de configuración de wireguard y WG_PUB — clave pública.
WG_IF="wg0"
WG_SERV="100.0.0.0" # dirección ip del servidor
WG_PORT="51820" # puerto de wireguard
WG_ADDR="10.8.0.2/32" # rango de direcciones de wireguard
WG_KEY="xxxxx" # clave privada
WG_PUB="xxxxx" # clave pública
# Configurar firewall
uci rename firewall.@zone[0]="lan"
uci rename firewall.@zone[1]="wan"
uci rename firewall.@forwarding[0]="lan_wan"
uci del_list firewall.wan.network="${WG_IF}"
uci add_list firewall.wan.network="${WG_IF}"
uci commit firewall
/etc/init.d/firewall restart
# Configurar red
uci -q delete network.${WG_IF}
uci set network.${WG_IF}="interface"
uci set network.${WG_IF}.proto="wireguard"
uci set network.${WG_IF}.private_key="${WG_KEY}"
uci add_list network.${WG_IF}.addresses="${WG_ADDR}"
# Agregar pares VPN
uci -q delete network.wgserver
uci set network.wgserver="wireguard_${WG_IF}"
uci set network.wgserver.public_key="${WG_PUB}"
uci set network.wgserver.preshared_key=""
uci set network.wgserver.endpoint_host="${WG_SERV}"
uci set network.wgserver.endpoint_port="${WG_PORT}"
uci set network.wgserver.route_allowed_ips="1"
uci set network.wgserver.persistent_keepalive="25"
uci add_list network.wgserver.allowed_ips="0.0.0.0/1"
uci add_list network.wgserver.allowed_ips="128.0.0.0/1"
uci add_list network.wgserver.allowed_ips="::/0"
uci commit network
/etc/init.d/network restart¡La configuración de WireGuard ha sido completada! Todo el tráfico en todos los dispositivos conectados está protegido por una conexión VPN.
Enlaces
(instrucciones adicionales para configurar L2TP, PPTP en el firmware estándar de Mikrotik están disponibles)
Fuente: habr.com
