MANUAL: Mikrotik, VPN tipo RoadWarrior usando WireGuard

<
Cuando el propio router mikrotik, el principal, es es receptor del servicio, lo que necesitas es una regla de input que acepte el tráfico al propio router, no una regla de NAT que la redirija hacía abajo. Las reglas de NAT se hacen para mapear puertos a dispositivos que cuelgan del router.
¿te atreves a hacerla tú solo, y a saber dónde ponerla?

Saludos!

Mil gracias @pokoyo. Cada día voy aprendiendo más cosas... pues mira, ya se algo más del NAT :)

Claro que me voy a atrever. Puede que no lo consiga, pero no será por no intentarlo, desde luego. Sería solo añadir esta regla, ¿Verdad?

Código:
/ip/firewall/filter/add action=accept chain=input comment="allow Wireguard" dst-port=51820 protocol=udp

Y quitar la regla de NAT que redireccionaba al puerto 51820 de la ip del router. Yo eso ya lo veía bastante raro... jeje.

Además tengo que mantener todo lo demás, incluído la regla de tipo Masquerade.

Es correcto, ¿Verdad?

Saludos!
 
<


Mil gracias @pokoyo. Cada día voy aprendiendo más cosas... pues mira, ya se algo más del NAT :)

Claro que me voy a atrever. Puede que no lo consiga, pero no será por no intentarlo, desde luego. Sería solo añadir esta regla, ¿Verdad?

Código:
/ip/firewall/filter/add action=accept chain=input comment="allow Wireguard" dst-port=51820 protocol=udp

Y quitar la regla de NAT que redireccionaba al puerto 51820 de la ip del router. Yo eso ya lo veía bastante raro... jeje.

Además tengo que mantener todo lo demás, incluído la regla de tipo Masquerade.

Es correcto, ¿Verdad?

Saludos!
Correcto. Solo recuerda poner esa regla en su sitio: delante de la regla de drop del chain de input, la que dice “drop all not coming from lan”. El masquerade igual, se lo harías al segmento de la vpn

Luego, cuando lo tengas funcionando, se puede crear una lista de direcciones o algún otro tipo de filtro que restrinja algo más esa regla de input.

Saludos!
 
Correcto. Solo recuerda poner esa regla en su sitio: delante de la regla de drop del chain de input, la que dice “drop all not coming from lan”. El masquerade igual, se lo harías al segmento de la vpn

Luego, cuando lo tengas funcionando, se puede crear una lista de direcciones o algún otro tipo de filtro que restrinja algo más esa regla de input.

Saludos!

Uff, el orden no lo habría tenido en cuenta, pero sí, ahora le veo el sentido.

Así ha quedado el masquerade:

1631087358300.png


Y así el filter rules:

1631087471212.png
 
Si eres de Movistar/O2, yo no usaría una red 10.x.y.z en la vpn, que esos segmentos se usan a nivel interno para routing dinámico. Usa otro estilo el .89 que ya usas para otro tipo de vpn.

Saludos!
 
Buenos días,

Es interesante las pruebas que estáis haciendo con Wireguard, si todo va bien ya comentáis, lo mismo hasta se puede implementar también para Site to Site aparte de Roadwarrior.

Y digo yo, ¿Wireguard podría ser una alternativa mejorada a las VPN tipo IKEv2? lo digo por que así no tendríamos que depender de los certificados de los DDNS *.sn.mynetname.net con los problemas que hemos tenido estos días atrás, simplemente fijar como endpoint nuestros dominios tipo *.noip.com, *.duckdns.org, etc.

S@lu2.
 
Buenos días,

Es interesante las pruebas que estáis haciendo con Wireguard, si todo va bien ya comentáis, lo mismo hasta se puede implementar también para Site to Site aparte de Roadwarrior.

Y digo yo, ¿Wireguard podría ser una alternativa mejorada a las VPN tipo IKEv2? lo digo por que así no tendríamos que depender de los certificados de los DDNS *.sn.mynetname.net con los problemas que hemos tenido estos días atrás, simplemente fijar como endpoint nuestros dominios tipo *.noip.com, *.duckdns.org, etc.

S@lu2.
Ummm…. Me juntas peras con manzanas. Se puede usar WireGuard para un site to site? Sí, y se simplifica mucho la configuración de la VPN, puesto que tienes una interfaz con la que puedes jugar.
¿Afecta eso en algo al ddns o lo que pasó ayer? No, en absoluto, tienes exactamente el mismo problema.

Si tu cuestión va enfocada a la generación de certificados y al uso del dominio en ellos, muy sencillo: compra un dominio propio y genera los certificados con ese dominio. Apunta ese dominio propio con un CNAME al mikrotik (o al de no IP, duckdns o el que te plazca) y todo funcionando. ¿Que se te cae el ddns? Entras en la consola de admin de tu dominio y apuntas a la que sea en ese momento tu IP pública y andando. O mejor aún: si tus dispositivos finales lo admiten, ¡No uses certificados! Vas a tener mucha menos seguridad, puesto que vas con una clave compartida, pero se puede hacer igual.

Lo que no se debe hacer nunca es coger una funcionalidad que te dan gratuita y poner todo el peso en ella, sin tener un mero respaldo. Si queréis algo serio, comprad una IP pública estática. Si la cosa es para andar por casa, comprad un dominio que controléis vosotros y lo ponéis por encima. Y, si no quieres gastarte un duro, ten al menos otro ddns de respaldo, y los certificados listos para trabajar con alternative names, para esos otros dominios.

Este tipo de cosas fallan, en mikrotik, en noip, en duckdns (más que una escopeta de feria), etc etc etc. Lo que hay que tener siempre, es un respaldo. Y eso que lo que fallo ayer no fue la infraestructura, sino una denuncia por abuso al uso indebido del dns.

Te doy un dato: tengo unidos dos routers entre sí de dos localizaciones remotas que están 24/7 levantados con IKEv2. Pues bien, la conexión ayer NO se rompió. ¿Por qué? Porque los certificados están hechos con un dominio propio y, una vez levantada la conexión, salvo desconexión o reinicio de uno de los extremos, lo único que se hace es renegociar las SA’s.
A mi se me jodió la conexión del móvil al router principal usando WireGuard, pero tarde dos minutos en solventarlo: entras a la consola de admin del dominio y cambias a donde apunta ese subdominio concreto y listo. Pero insisto, esto fue ya a la tarde, toda la mañana los equipos que están conectados por IKEv2 siguieron conectados como si nada. ¿Acabaré cambiando IKEv2 por WireGuard? Muy probablemente, cuando soporten aceleración hardware. Pero no menospreciéis esta VPN, que es de lo mejorcito en Mikrotik.

Saludos!
 
Ummm…. Me juntas peras con manzanas. Se puede usar WireGuard para un site to site? Sí, y se simplifica mucho la configuración de la VPN, puesto que tienes una interfaz con la que puedes jugar.
¿Afecta eso en algo al ddns o lo que pasó ayer? No, en absoluto, tienes exactamente el mismo problema.

Si tu cuestión va enfocada a la generación de certificados y al uso del dominio en ellos, muy sencillo: compra un dominio propio y genera los certificados con ese dominio. Apunta ese dominio propio con un CNAME al mikrotik (o al de no IP, duckdns o el que te plazca) y todo funcionando. ¿Que se te cae el ddns? Entras en la consola de admin de tu dominio y apuntas a la que sea en ese momento tu IP pública y andando. O mejor aún: si tus dispositivos finales lo admiten, ¡No uses certificados! Vas a tener mucha menos seguridad, puesto que vas con una clave compartida, pero se puede hacer igual.

Lo que no se debe hacer nunca es coger una funcionalidad que te dan gratuita y poner todo el peso en ella, sin tener un mero respaldo. Si queréis algo serio, comprad una IP pública estática. Si la cosa es para andar por casa, comprad un dominio que controléis vosotros y lo ponéis por encima. Y, si no quieres gastarte un duro, ten al menos otro ddns de respaldo, y los certificados listos para trabajar con alternative names, para esos otros dominios.

Este tipo de cosas fallan, en mikrotik, en noip, en duckdns (más que una escopeta de feria), etc etc etc. Lo que hay que tener siempre, es un respaldo. Y eso que lo que fallo ayer no fue la infraestructura, sino una denuncia por abuso al uso indebido del dns.

Te doy un dato: tengo unidos dos routers entre sí de dos localizaciones remotas que están 24/7 levantados con IKEv2. Pues bien, la conexión ayer NO se rompió. ¿Por qué? Porque los certificados están hechos con un dominio propio y, una vez levantada la conexión, salvo desconexión o reinicio de uno de los extremos, lo único que se hace es renegociar las SA’s.
A mi se me jodió la conexión del móvil al router principal usando WireGuard, pero tarde dos minutos en solventarlo: entras a la consola de admin del dominio y cambias a donde apunta ese subdominio concreto y listo. Pero insisto, esto fue ya a la tarde, toda la mañana los equipos que están conectados por IKEv2 siguieron conectados como si nada. ¿Acabaré cambiando IKEv2 por WireGuard? Muy probablemente, cuando soporten aceleración hardware. Pero no menospreciéis esta VPN, que es de lo mejorcito en Mikrotik.

Saludos!
Entiendo lo que comentas. Cuando dices "ten certificados listos para trabajar con alternative names" ¿es que se pueden crear certificados para trabajar con dos dominios DDNS para que renegocie con el siguiente en caso de que falle uno de ellos?

Disculpa mi ignorancia, ¿pero sería algo así?

1631096982083.png


¿Y los clientes como sería?

S@lu2.
 
Correcto, algo así. No lo he probado, pero debería funcionar igual.

Saludos!
 
Correcto. Solo recuerda poner esa regla en su sitio: delante de la regla de drop del chain de input, la que dice “drop all not coming from lan”. El masquerade igual, se lo harías al segmento de la vpn

Luego, cuando lo tengas funcionando, se puede crear una lista de direcciones o algún otro tipo de filtro que restrinja algo más esa regla de input.

Saludos!
Pues ya está corriendo Wireguard :). Y bueno, comparado con la VPN que tenía antes, L2TP, seguro que ya te haces una idea de mi satisfacción jeje.

Cuando tengas un hueco, a ver si vemos el filtrillo ese para restringir la regla de input :)
 
Y qué problema tienes con el cliente que funciona correctamente en TODAS las plataformas, fijas y móviles?

Saludos!
Eso no es cierto, tu tienes que ser administrador en windows para poder usar wireguard, en una cuenta sin privilegios no puedes lanzar wireguard
 
Eso no es cierto, tu tienes que ser administrador en windows para poder usar wireguard, en una cuenta sin privilegios no puedes lanzar wireguard

Pero eso ya es una tema de permisos… Pero en cuanto a plataformas, funciona en todas las plataformas (Windows, Linux, Android, IOS,…)

Luego ya, si tienes que tener un perfil administrador en Windows, eso ya es un tema específico….
 
Eso no es cierto, tu tienes que ser administrador en windows para poder usar wireguard, en una cuenta sin privilegios no puedes lanzar wireguard

Y si tienes una cuenta sin privilegios de administrador, es tan sencillo como ejecutar esa app con privilegios de administrador (configurando unos parámetros sin que el usuario tenga que meter la clave ni nada) y listo… ya tienes la app ejecutándose con privilegios de administrador en una cuenta sin privilegios de administrador…
 
Y si tienes una cuenta sin privilegios de administrador, es tan sencillo como ejecutar esa app con privilegios de administrador (configurando unos parámetros sin que el usuario tenga que meter la clave ni nada) y listo… ya tienes la app ejecutándose con privilegios de administrador en una cuenta sin privilegios de administrador…
y eso como se hace?
 
No, la v6 no implementa WireGuard. Tienes que poner la v7 para montar esto.

Saludos!
Ok, entonces me pondré de momento con este post:

 
Arriba