1· Nos conectamos via SSH a nuestro EdgeRouter.
2· Nos generamos un fichero con nuestras claves de autenticación del servidor OpenVPN en la siguiente ruta:
/config/auth/auth.txt
**Este paso de las claves, nos lo podríamos saltar... pero lo mas lógico es que nuestro proveedor o bien un servidor vuestro en destino, disponga de autenticación por medio de usuario y clave.
Por tanto nuestro fichero .ovpn que luego cargaremos deberá disponer de las siguientes lineas ("en el caso de usuario/clave"), debemos indicar al final del fichero el "auth-user-pass", en el caso de no tener (pues no la ponemos), y luego importante metemos la linea de "route-nopull", no es necesario eliminar la linea "redirect-gateway def1" (la de redireccionar todo el trafico) esto ultimo nos permitirá evitar problemas posteriores con las rutas.
3· Lo siguiente que haremos via WinSCP es subirnos el fichero (.ovpn) al router, o bien crearnos un fichero con el vi, tanto si lo subimos con el winscp o lo creamos, lo depositamos en la ruta /config/auth/XX.ovpn
4· En este paso ya teniendo ambos ficheros creados (autenticación y config del servidor Openvpn), nos vamos a establecer la configuración.
**Antes de empezar, indicar que en mi caso ya dispongo de un servidor Openvpn funcionando tambien en el mismo equipo, por lo que en vez de comenzar por la vtun0, continuo con la vtun1.
##Creamos la interfaz
set interfaces openvpn vtun1 config-file /config/auth/ES.ovpn
set interfaces openvpn vtun1 description 'OpenVPN VPN SPA'
##Configuramos el Nateo (reenvio)
commit (Vamos aplicando ... :) )
set service nat rule 5000 description 'OpenVPN SPA'
set service nat rule 5000 log disable
set service nat rule 5000 outbound-interface vtun0
set service nat rule 5000 source address 10.90.90.0/24
set service nat rule 5000 type masquerade
##Configuramos las rutas estaticas
commit (Vamos aplicando ... :) )
set protocols static table 1 interface-route 0.0.0.0/0 next-hop-interface vtun1
set firewall modify SOURCE_ROUTE rule 10 description 'traffic from 10.90.90.0/24 to vtun1'
##Establecemos la regla de modificación a nuestra politica
set firewall modify SOURCE_ROUTE rule 10 source address 10.90.90.0/24
set firewall modify SOURCE_ROUTE rule 10 modify table 1
##IMPORTANTE ANTES DE PASAR CON LO SIGUIENTE##
Si estamos definiendo una única ruta de salida, si mañana por alguna circunstancia se cae el tunel, esa red quedaría sin trafico, la solución seria establecer un ruta con un blackhole y con la ruta administrativa mas alta, para que en el caso de caída de tunel busque la siguiente disponible.
set protocols static table 10 route 0.0.0.0/0 blackhole distance 255
## Definimos la interfaz donde opera nuestra red... (Aquí podemos tener configurado un bridge, un bridge con vlans, un bonding..., aqui ya un poco tendremos que cambiarlo por lo de cada uno...)
Ejemplos: (Solo se pone una eee.. cada uno lo suyo XD)
set interfaces switch switch0 firewall in modify SOURCE_ROUTE
set interfaces bridge br0 firewall in modify SOURCE_ROUT
commit; save (Aplicamos y guardamos :) )
Le echamos un veo después de finalizar la configuración, para ver que esta levantada y operativa la vpn…
show log | grep openvpn
Y si todo va bien a funcionar... :)