xorguy / Ubiquiti-EdgeRouter

A collection of enhancements for EdgeMax based devices

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Wiki Ubiquiti

Una colección de mejoras para los dispositivos basados en EdgeMax.

UbiquitiXEdgeMax
Ubiquiti networks x EdgeMax©

GitHub last commit


Índice de contenido


atencion Recordar que los pasos aquí expuestos son orientativos.atencion

Recomiendo su lectura y compresión antes de aplicarlo sobre un entorno de producción.

^ back to top ^

Acceso a la CLI y comandos básicos

Los lectores aprenderán cómo conectarse y configurar un EdgeRouter por primera vez. Hay muchos entornos diferentes en los que es posible que sea necesario realizar ajustes específicos. Este artículo muestra un escenario de instalación común, pero no es necesario aplicarlo en todos los entornos de red.

Comandos básicos

    commit:para activar los cambios.
    save: para almacenar la configuración "activa" en la configuración de inicio.
    compare: Para ver qué cambios se han realizado en la configuración.
    configure: modo configuración.
    show: mostrar -> Ejemplo: show firewall
    set: establecer configuración. -> Ejemplo: set firewall name TEST default-action drop
    edit: Para crear la misma acción y reducir la cantidad de repeticiones en la sintaxis completa. -> Ejemplo: edit firewall name TEST
    up: Para subir un nivel de edición -> Ejemplo: volver al set de configuración anterior
    top: Para volver al nivel de edición superior -> Ejemplo: Volver al ser de configuración incial
    discard: para deshacer los cambios no confirmados
    copy: Para crear una nueva acción existente -> Ejemplo: copy name WAN1_LOCAL to name WAN2_LOCAL
    rename: Para cambiar el nombre de la nueva acción -> Ejemplo: rename name WAN2_LOCAL to name WAN2_IN
    load: cargar configuración.
    ? o tecla de tab: para mostrar opciones para el nivel de edición especificado

Comandos básicos de VI

    wqGuardar y salir.
    :q!Salir sin guardar.
    uDeshace última acción.
    imodo inserción por la izquierda.
    amodo inserción por la derecha.
    ddElimina la línea actual.
    pCopia la palabra actual.
    APone le puntero al final de la línea.
    wSalta de palabra en palabra.
    DBorra desde el puntero hacia el final de la línea.
    oAgrera una línea debajo de la actual.
    OAgrega una línea encima de la actual.
    PCopia la palabra pegada.
    gwCopia la palabra actual.
    helpAyuda.

Acceso a la GUI

Mediante un navegador, accedemos a https://192.168.1.1. Cargara una web donde deberemos introducir unas credenciales. En este caso las que vienen de fábrica.

web.png

La contraseña por defecto:

    Usuario: ubnt
    Contraseña: ubnt

Una vez introducidas las credenciales, se cargará la web de gestión del EdgeRouter.

web1.png

Instrucciones de uso con Putty o similar:

CLI1

Instrucciones de uso con GUI:

  1. Acceda a la interfaz de usuario web de EdgeRouter
  2. Navegue a la parte superior derecha de la interfaz de usuario web.

CLI2

Solucionar problema con certificado inválido

En los comandos de OpenSSL a continuación, reemplace los nombres de archivo en TODAS LAS MAYÚSCULAS con las rutas y nombres de archivo reales con los que está trabajando.

Cuando intentamos acceder vía web, nos indica que el certificado es inválido al ser autofirmado:

cert0

Podemos ver el contenido del archivo de certificado .PEM:

openssl x509 -in CERTIFICATE.pem -text -noout

Para poder solucionar, debemos descargar el certificado del navegador. Nos descarga un archivo .pem:

cert1

cert2

Una vez descargado tenemos que cambiar el .pem a .crt con OpenSSL:

openssl x509 -outform der -in CERTIFICATE.pem -out CERTIFICATE.crt

cert3

Despues de haber cambiado el formato, procedemos a instalar el certificado en la raiz de confianza:

cert4

Una vez importado el certificado y borrado las cookies, ya no nos indicará que el certificado no es de confianza.

cert5

Tambien podemos migrar el .pem a .pfx con OpenSSL:

openssl pkcs12 -export -in CERTIFICATE.pem -inkey CERTIFICATE.key -out CERTIFICATE.pfx

Para ello necesitas la private key del certificado.


^ back to top ^

Configuración inicial del EdgeRouter:

Ubiquiti edgemax

Realización de un Hardware o Software Reset

El EdgeRouter se puede restablecer a los valores predeterminados de fábrica utilizando un hardware o software método de restablecimiento

Hardware Reset: Borra todos los archivos de configuración y del sistema, restableciendo el dispositivo al estado predeterminado de fábrica. Software Reset: Solo borra la configuración y deja intactos los demás archivos del sistema.

atencion ATENCIÓN: Los métodos de reinicio de hardware a continuación borrarán todos los archivos de configuración y del sistema.

Realización de un restablecimiento de hardware :

Instrucciones de uso para realizar reset button:

  1. Verifique que EdgeRouter esté completamente iniciado.
  2. Mantenga presionado el reinicio.
  3. Los LED del puerto comenzarán a encenderse en secuencia, comenzando por el puerto 1 y terminando en el último puerto.
  4. Continúe presionando el botón de reinicio durante aproximadamente 10 segundos hasta que el LED del puerto 1 se encienda nuevamente.
  5. Suelte el botón de reinicio.
  6. El EdgeRouter se reiniciará.
  7. Espere a que se complete el reinicio.
  8. Conéctese al eth0 y administre el dispositivo abriendo un navegador y navegando a la https://192.168.1.1 dirección IP predeterminada.

reset.gif

Instrucciones de uso para realizar un Power On Reset:

  1. Desconecte el cable de alimentación del EdgeRouter.
  2. Mientras vuelve a conectar el cable de alimentación al EdgeRouter, mantenga presionado el reinicio .
  3. Los LED del puerto comenzarán a encenderse en secuencia, comenzando por el puerto 1 y terminando en el último puerto.
  4. Continúe presionando el botón de reinicio durante aproximadamente 10 segundos hasta que el LED del puerto 1 se encienda nuevamente.
  5. Suelte el botón de reinicio.
  6. El EdgeRouter se reiniciará.
  7. Espere a que se complete el reinicio.
  8. Conéctese al eth0 y administre el dispositivo abriendo un navegador y navegando a la https://192.168.1.1 dirección IP predeterminada.

 

 
Realización de un reinicio de software:

Instrucciones de uso con GUI:

  1. Acceda a la interfaz de usuario web de EdgeRouter.
  2. Navegue a la Sistema en la parte inferior izquierda de la interfaz de usuario web.
  3. Restablezca la configuración a los valores predeterminados presionando el Restablecer a los valores predeterminados en la Restablecer predeterminados .
  4. El EdgeRouter solicitará que se reinicie el dispositivo para completar el restablecimiento.
  5. Espere a que se complete el reinicio.
  6. Conéctese al eth0 y administre el dispositivo abriendo un navegador y navegando a la https://192.168.1.1 dirección IP predeterminada

Instrucciones de uso con CLI:

  1. acceda a la interfaz de línea de comandos de EdgeRouter.
  2. Sobrescriba el archivo de inicio actual (config.boot) con el archivo de inicio predeterminado (config.boot.default).
    sudo cp /opt/vyatta/etc/config.boot.default /config/config.boot
Haga clic para copiar 2. Reinicie EdgeRouter.
    reboot
    Proceed with reboot? [confirm]
3. Espere a que se complete el reinicio. 4. Conéctese al eth0 y administre el dispositivo abriendo un navegador y navegando a la https://192.168.1.1 dirección IP predeterminada

 

 

Actualizar EdgeRouter

Antes de Realizar cualquier cambio o configuración en los equipos Ubiquiti EdgeMax debe contar con la última versión del Firmware. download

Y seguir la guía que indica fabricante: Cómo actualizar el firmware de EdgeOS

Acceso a la interfaz de configuración EdgeOS

Opción 1:

Instrucciones de uso con IP ESTÁTICA:

  1. Conecte un cable Ethernet desde el puerto Ethernet del ordenador al puerto eth0 del EdgeRouter.
  2. Configure el adaptador de Ethernet en su sistema host con una dirección IP estática en la subred 192.168.1.x.
  3. Inicie el explorador web. Escriba https://192.168.1.1 en la barra de direcciones. Pulse Intro (PC) o Retorno (Mac).
  4. Introduzca ubnt en los campos de nombre de usuario y contraseña. Lea el acuerdo de licencia de Ubiquiti y marque la casilla junto a I agree to the terms of this License Agreement (Acepto los términos de este acuerdo de licencia) para aceptarlo. Haga clic en Login (Inicio de sesión).

 

 
Opción 2:

Instrucciones de uso con DHCP:

  1. Conecte un cable Ethernet de eth1 en el EdgeRouter a un segmento de LAN que ya tiene un servidor DHCP.
  2. Para comprobar la dirección IP del EdgeRouter, utilice uno de los métodos siguientes:
    2.1 Configure el servidor DHCP para que proporcione una dirección IP específica al EdgeRouter en función de su dirección MAC (en la etiqueta).
    2.2 Deje que el EdgeRouter obtenga una dirección IP y luego compruebe el servidor DHCP para ver qué dirección IP se asignó.
3. Inicie el explorador web. Introduzca la dirección IP correcta en el campo de dirección. Pulse Intro (PC) o Retorno (Mac). 4. Introduzca ubnt en los campos de nombre de usuario y contraseña. Lea el acuerdo de licencia de Ubiquiti y marque la casilla junto a I agree to the terms of this License Agreement (Acepto los términos de este acuerdo de licencia) para aceptarlo. Haga clic en Login (Inicio de sesión).

 

 

Configuración de copia de seguridad y restauración

Realizar una copia de seguridad y restaurar el archivo de configuración de un EdgeRouter.

Realización copia de seguridad y restauración vía GUI:

Instrucciones de uso para realizar vía GUI

  1. Navegue al sistema en la parte inferior izquierda de la GUI para descargar el archivo de configuración de la copia de seguridad.
    **Sistema** > **Gestión de configuración** y **mantenimiento de dispositivos** > **Back Up Config**
2. Descargue el archivo de configuración de la copia de seguridad haciendo clic en el Descargar . 3. EdgeRouter le pedirá que guarde el archivo en su ordenador.

backup

Instrucciones de uso para restaurar vía GUI

  1. Navegue al sistema en la parte inferior izquierda de la GUI para descargar el archivo de configuración de la copia de seguridad.
    **Sistema** > **Gestión de configuración** y **mantenimiento de dispositivos** > **Restore Config**
2. Cargue el archivo de configuración de la copia de seguridad haciendo clic en el **Upload a file** . 3. EdgeRouter solicitará que se reinicie el dispositivo para completar la restauración.

restore

Instrucciones de uso para realizar/restaurar vía UNMS

Para realizar o restaurar vía UNMS deben seguir los pasos de este artículo:

 

 
Realización copia de seguridad y restauración vía CLI:

Instrucciones de uso para realizar vía CLI

1. Puede hacerlo usando el botón CLI en la GUI o usando un programa como PuTTY.

2. Ingrese al modo de configuración y asegúrese de que todos los cambios en las configuraciones actualmente activas/en funcionamiento se guarden en la arranque/inicio.

    commit ; save

3. Guarde el archivo de configuración config.boot en una máquina remota mediante una de estas opciones: TFTP, SCP, FTP o SFTP.

  scp://<user>:<passwd>@<host>/<file>   Save to file on remote machine
  sftp://<user>:<passwd>@<host>/<file>  Save to file on remote machine
  ftp://<user>:<passwd>@<host>/<file>   Save to file on remote machine
  tftp://<host>/<file>                  Save to file on remote machine

Y con el comando save tftp://host/config.boot guardamos el archivo de configuración.

4. Verifique el contenido de la configuración de inicio abriendo el config.boot con un editor de texto y compare con el del equipo que se haya exportado correctamente.

    cat /config/config.boot

Instrucciones de uso para restaurar vía CLI

1. Puede hacerlo usando el botón CLI en la GUI o usando un programa como PuTTY.

2. Compare las diferencias entre la respaldo/funcionamiento y la activa.

3. Guarde el archivo de configuración config.boot en una máquina remota mediante una de estas opciones: TFTP, SCP, FTP o SFTP.

  scp://<user>:<passwd>@<host>/<file>   Load from file on remote machine
  sftp://<user>:<passwd>@<host>/<file>  Load from file on remote machine
  ftp://<user>:<passwd>@<host>/<file>   Load from file on remote machine
  http://<host>/<file>                  Load from file on remote machine
  tftp://<host>/<file>                  Load from file on remote machine

Y con el comando load tftp://host/config.boot guardamos el archivo de configuración.

4. Verifique que la restauración ha sido correcta y con el contenido de la configuración del config.boot con un editor de texto y compare con el del equipo que se haya importado correctamente.

    cat /config/config.boot y con el comando compare

5. Una vez asegurado de que todos los cambios en las configuraciones actualmente activas/en funcionamiento son correctas se procede a guardar en el arranque/inicio.

    commit ; save

 

 
  • También hay una opción que nos indican Ubiquiti, ellos la llaman desinfectar o limpiar las configuraciones de EdgeRouter para eliminar toda la información personal y confidencial. Ubiquiti nos dedica un articulo muy detallado para esta opción. Esta opción de desinfectar es cuando necesitas ayuda y quieres enviar la plantilla o "cachos" de la plantilla al foro o fabricante.

Gestión de UISP

Puede administrar el dispositivo mediante el UISP, que le permite configurar, supervisar, actualizar y realizar copias de seguridad de sus dispositivos a través de una sola aplicación.

  1. Para empezar, vaya a UISP - Guía de instalación
  2. Despues logarse en la web de UISP uisp.ui.com
  3. Pueden utilizar la aplicación móvil, enlace de configuración: UISP-Mobile-App

atencion Cuidado con la opción cloud. Cuando creas la cuenta indica:

    Una consola en la nube de UISP gratuita requiere al menos 10 dispositivos Ubiquiti activos en total después del día 30 de la configuración.

^ back to top ^

Hardening del dispositivo

Ubiquiti edgemax

Habilitar funciones de rendimiento

Offloading se utiliza para ejecutar funciones del enrutador usando el hardware directamente, en lugar de un proceso de funciones de software. El beneficio de la descarga en EdgeOS es un mayor rendimiento y rendimiento al no depender de la CPU para las decisiones de reenvío. Enlace a la web oficial de Ubiquiti: EdgeRouter-Hardware-Offloading

UTILIZAR CON CUIDADO.

Para ER-X,ER-X-SPF,EP-R6

configure
set system offload hwnat enable
set system offload ipsec enable
commit ; save

Para todos los demás modelos de Edgerouter

configure
set system offload ipv4 forwarding enable
set system offload ipv4 gre enable
set system offload ipv4 pppoe enable
set system offload ipv4 vlan enable
set system offload ipv6 forwarding enable
set system offload ipv6 pppoe enable
set system offload ipv6 vlan enable
set system offload ipsec enable
commit ; save

Remover default user y crear un usuario

Antes de eliminar el usuario por defecto, crear un usuario, en la GUI en la pestaña USERS o por CLI:

set system login user <user>
set system login user <user> level admin
set system login user <user> authentication plaintext-password <contraseña>
set system login user <user> full-name <Nombre>
commit ; save

La contraseña se encripta una vez introducida en texto plano

Despues eliminarmos el usuario por defecto

configure
delete system login user ubnt
commit ; save

PD: Si creas un usuario como operador, no tiene acceso por ssh.

This account is currently not available.
Connection to 192.168.1.1 closed.

SSH

Añadir una clave ssh pública a EdgeRouter

Para poder generar una clave pública hay muchas opciones, pero os recomiendo con Putty.

Si no lo conocen, os dejo el tutorial: Generar SSH Keys (Llaves SSH) en PuTTY

$ scp ~/.ssh/id_rsa.pub <ip-of-edgerouter>:/tmp
    Pueden utilizar Filezilla o similar para enviar el archivo.

Accedemos al equipo y configuramos la clave pública generada:

configure  
loadkey <user> /tmp/id_rsa.pub  
sudo chown -R <user> /home/<user>
commit ; save

Comprobación de acceso

atencion Asegúrate de que puedes acceder con tu clave pública antes de salir de la sesión SSH actual. Probamos acceso sin salir de la sesión SSH por si tienes que hacer un rollback:

$ ssh <user>@<ip-of-edgerouter>
exit

Desactivar la autenticación de contraseñas en texto plano

Si puede iniciar sesión con éxito en el EdgeRouter, un paso para reforzar la seguridad de su EdgeRouter es eliminar la opción de utilizar una contraseña de texto simple.
atencion Asegúrate de que puedes acceder con tu clave pública antes de desactivar la autenticación en texto plano.

configure
set service ssh disable-password-authentication
commit ; save

Asegurar acceso a la GUI y ssh

Pueden asegurar el acceso al ssh o gui con vuestro rango de IPs, es opcional, pero seguro. (opcional)

configure
set service gui listen-address <lan ip address/range>
set service ssh listen-address <lan ip address/range>
commit ; save

Recomendado, cambiar el puerto de ssh y habilitar V2

configure
set service ubnt-discover disable
set service ssh protocol-version v2
set service ssh port <port>
delete service telnet
commit ; save

^ back to top ^

Firewall Edgerouter

Ubiquiti edgemax

TIPOS DE REGLAS

  • Para poder añadir una regla, deben saber que hay 3 WAN en Ubiquiti:

    • WAN_IN = es para paquetes externos que llegan a su enrutador y se dirigen a su LAN. Deje el destino en blanco. Solo debe preocuparse por el grupo de direcciones de origen BlockedIP. Coloque la regla DESPUÉS de que los dos primeros normales acepten establecidos/relacionados y eliminen los no válidos.
    • WAN_LOCAL = es para paquetes externos que llegan a su enrutador y se dirigen a su propio enrutador. El origen debe volver a ser el grupo de direcciones BlockedIP y dejar el destino vacío. También ponga después de las mismas dos reglas que arriba.
    • WAN_OUT = Para bloquear el saliente, debe crear un nuevo conjunto de reglas y adjuntarlo como OUT a ethX con la aceptación predeterminada. Luego agregue una sola regla para colocar con el grupo de direcciones de destino BlockedIP y nada en el origen.
  • Tipos de LAN

    • LAN_IN = Todo lo que ingresa al enrutador desde su LAN que está destinado a otro lugar WAN u otra LAN. En una configuración SMB o SOHO, esto probablemente sea explícitamente permisivo. En un entorno empresarial, esto puede ser permisivo o no (por ejemplo, bloquear todo el tráfico saliente excepto SFTP en un puerto no estándar)
    • LAN_LOCAL = Todo lo que ingresa al enrutador desde su LAN destinado al enrutador.

Las reglas se añaden en las WAN, dependiendo del sentido que queramos hacer. Si desea bloquear el entrante y saliente, debemos de añadir en la IN u OUT, y en el LOCAL para bloquear los accesos hacia el sentido del router.

Ejemplo para una WANcon pppoe,

  • Indicamos la interfaz a la WAN_IN la pppoe en modo IN
  • Indicamos la interfaz a la WAN_LOCAL la pppoe en modo LOCAL
  • Indicamos la interfaz a la WAN_IN la pppoe en modo OUT.
    • No olvidar poner la acción por defecto en ACCEPT, o denegará todo el tráfico desde la red interna.
  • Añadiríamos la regla en la IN u OUT y en el LOCAL.
  • Despues realizar una prueba para comprobar la acción deseada.

En EdgeMax no es necesario añadir la misma regla en IN y OUT. Denegará o permitirá la acción deseada en cualquiera de ellas.

Firewall básico

Aquí viene la parte más difícil. Si anteriormente no te has peleado con un Firewall algunos conceptos te serán extraños, pero intentare explicar cada paso con algún ejemplo, haciéndolo mas fácil de entender.

  • Configuración básica del firewall. Asignar la interfaz de la WAN que vayan a utilizar:
configure

set firewall name WAN_IN default-action drop
set firewall name WAN_IN description 'WAN to internal'
set firewall name WAN_IN rule 10 action accept
set firewall name WAN_IN rule 10 description 'Allow established/related'
set firewall name WAN_IN rule 10 state established enable
set firewall name WAN_IN rule 10 state related enable
set firewall name WAN_IN rule 20 action drop
set firewall name WAN_IN rule 20 description 'Drop invalid state'
set firewall name WAN_IN rule 20 state invalid enable

set firewall name WAN_LOCAL default-action drop
set firewall name WAN_LOCAL description 'WAN to router'
set firewall name WAN_LOCAL rule 10 action accept
set firewall name WAN_LOCAL rule 10 description 'Allow established/related'
set firewall name WAN_LOCAL rule 10 state established enable
set firewall name WAN_LOCAL rule 10 state related enable
set firewall name WAN_LOCAL rule 20 action drop
set firewall name WAN_LOCAL rule 20 description 'Drop invalid state'
set firewall name WAN_LOCAL rule 20 state invalid enable

set interfaces ethernet eth0 firewall in name WAN_IN
set interfaces ethernet eth0 firewall local name WAN_LOCAL

commit ; save

Configurar una interfaz PPPoE de Movistar u O2 en un EdgeRouter de Ubiquiti

atencion Asegúrate de cambiar los parámetros del ISP y utilizar los que el ISP os indique.

1. Lo primero es entrar en la web de gestión del Edgerouter y pulsar en la pestaña Wizards de la parte superior derecha. Esto nos cargara un grupo de asistentes de configuración en la parte izquierda. Pulsamos sobre el que se llama WAN + +2LAN2. Esto nos cargara un formulario que deberemos rellenar con los datos de acuerdo a nuestras necesidades.

pppoe_1.png

2. Internet port: En esta sección definiremos como está conectado nuestro Edgerouter al router HGU de Movistar o O2.

Port: En el menú despegable seleccionamos el puerto de ethernet con el que está conectado al router HGU de Movistar o O2, etho o eth4.

Internet connection type: Aquí seleccionamos PPPoE y rellenamos los campos de ls siguiente manera:

    Account name: adsl@telefonicapa

    Password: adslppp

pppoe_2.png

3. LAN ports: Desplegando está sección podremos configurar la IP que tendrá nuestro router y habilitaremos el DHCP por defecto para que asigne IPs a aquellos equipos que se conecten al router.

Tener en cuenta que el rango de IP debe ser distinto al que esta nuestro Edgerouter con el router HGU de Movistar o O2. La opción de DHCP viene habilitada por defecto, así que no la tocamos y la dejamos como está.

pppoe_3.png

4. User setup: Por último, es recomendable cambiar la contraseña del usuario ubnt que viene por defecto por otra más segura.

pppoe_4.png

Para aplicar la configuración definida, pulsamos sobre Apply.

atencion No toméis estos pasos al pie de la letra. Utilízalos como una guía, ya que la configuración de vuestra red puede diferir con la de aquí expuesta. Pudiendo causar un mal funcionamiento de vuestra red.

Puedes asignar la MAC del HGU a la WAN:

IPv6 on the EdgeRouter

El cortafuegos para IPv6 es independiente del cortafuegos de IPv4 y actualmente debe configurarse mediante la CLI ("establecer el nombre de ipv6 del cortafuegos...", etc.). O el árbol de configuración en la interfaz de usuario web, por lo que deberá crear reglas de IPv6 por separado y aplicarlas a la interfaz/dirección adecuada.

Firewall

Primero, es importante que configuremos el firewall ya que la política predeterminada es "aceptar" y sus clientes de LAN tendrán IP enrutables.

En comparación con nuestras reglas de firewall IPv4, hay una diferencia importante: debemos permitir ICMPv6 y DHCP para que DHCPv6-PD funcione.

  • Cree una política para clientes WAN->LAN:
edit firewall ipv6-name WAN6_IN
set default-action dropset rule 10 action accept
set rule 10 description "allow established"
set rule 10 protocol all
set rule 10 state established enable
set rule 10 state related enableset rule 20 action drop
set rule 20 description "drop invalid packets"
set rule 20 protocol all
set rule 20 state invalid enableset rule 30 action accept
set rule 30 description "allow ICMPv6"
set rule 30 protocol icmpv6
top
  • Ahora cree una política para WAN->Router (también conocido como local):
edit firewall ipv6-name WAN6_LOCAL
set default-action dropset rule 10 action accept
set rule 10 description "allow established"
set rule 10 protocol all
set rule 10 state established enable
set rule 10 state related enableset rule 20 action drop
set rule 20 description "drop invalid packets"
set rule 20 protocol all
set rule 20 state invalid enableset rule 30 action accept
set rule 30 description "allow ICMPv6"
set rule 30 protocol icmpv6set rule 40 action accept
set rule 40 description "allow DHCPv6 client/server"
set rule 40 destination port 546
set rule 40 source port 547
set rule 40 protocol udp
top
  • Ahora adjunte las políticas a su interfaz WAN:
set interfaces ethernet eth1 firewall in ipv6-name WAN6_IN
set interfaces ethernet eth1 firewall local ipv6-name WAN6_LOCAL
  • Ahora solicitaremos direcciones IPv6 a nuestro ISP. Es posible que deba descubrir manualmente la longitud del prefijo que proporciona su ISP. Las dos longitudes más comunes son /56 y /64.

Nota: Usaremos SLAAC (Configuración automática de direcciones sin estado) en lugar de DHCP con estado (que es como funciona DHCP IPv4).

edit interfaces ethernet eth1
set dhcpv6-pd pd 0 prefix-length /64
set dhcpv6-pd pd 0 interface eth0 host-address ::1
set dhcpv6-pd pd 0 interface eth0 prefix-id :0
set dhcpv6-pd pd 0 interface eth0 service slaac
top

En resumen, le estamos diciendo a eth1 (WAN) que proporcione delegación de prefijo a eth0 (LAN). Si también está usando eth2 para un segundo puerto LAN, necesitará usar el prefijo-id:1 para esa interfaz.

Para cualquiera que use vlans, lo siguiente también funciona:

set interfaces ethernet eth2 vif 17 ipv6 router-advert prefix ::/64

Opciones básicas del cortafuegos

Este cortafuegos básico permite a los usuarios hacer ping a un dispositivo IPv6 desde Internet. El resto del tráfico hacia el dispositivo está bloqueado (acción por defecto drop).

set firewall ipv6-name ipv6-fw default-action drop
set firewall ipv6-name ipv6-fw description 'IPv6 firewall'
set firewall ipv6-name ipv6-fw rule 1 action accept
set firewall ipv6-name ipv6-fw rule 1 log disable
set firewall ipv6-name ipv6-fw rule 1 protocol icmpv6
set firewall ipv6-name ipv6-fw rule 1 description 'allow ICMPv6 traffic'
set firewall ipv6-name ipv6-fw rule 10 action accept
set firewall ipv6-name ipv6-fw rule 10 state established enable
set firewall ipv6-name ipv6-fw rule 10 state related enable

Permitir que un host sea de acceso público

set firewall ipv6-name ipv6-fw rule 4 action accept
set firewall ipv6-name ipv6-fw rule 4 description 'allow access to host x'
set firewall ipv6-name ipv6-fw rule 4 destination address '2001:xxxx:xxxx:xxxx:xxxx:xxxx:xxxx:xxx

Dual-wan

Establecer nat para ambas interfaces

set load-balance group LB-GROUP interface eth3 failover-only
set load-balance group LB-GROUP interface eth3 route-test initial-delay 60
set load-balance group LB-GROUP interface eth3 route-test interval 10
set load-balance group LB-GROUP interface eth3 route-test type ping target 8.8.8.8

set load-balance group LB-GROUP interface pppoe0 route-test initial-delay 60
set load-balance group LB-GROUP interface pppoe0 route-test interval 10
set load-balance group LB-GROUP interface pppoe0 route-test type ping target 8.8.8.8

set load-balance group LB-GROUP lb-local enable
set load-balance group LB-GROUP lb-local-metric-change disable

Configuration NAT

Ejemplo de como configurar NAT:

configure
set service nat rule 5000 description NAT-TO-WAN
set service nat rule 5000 log disable
set service nat rule 5000 outbound-interface eth0
set service nat rule 5000 protocol all
set service nat rule 5000 source address 172.22.1.0/24
set service nat rule 5000 type masquerade
commit && save && exit

Port Forwarding

Seleccione las interfaces WAN y LAN que se utilizarán para el reenvío de puertos.

  • Pueden realizar el procedimiento mediante la GUI o mediante CLI.
  • Mediante CLI: Firewall/NAT > Port Forwarding

atencion Asegúrate de cambiar el rando de la red a la de tu red y la interfaz a modificar

configure

set port-forward auto-firewall enable
set port-forward hairpin-nat enable
set port-forward wan-interface eth0
set port-forward lan-interface eth1

set port-forward rule 1 description https
set port-forward rule 1 forward-to address 192.168.1.10
set port-forward rule 1 forward-to port 443
set port-forward rule 1 original-port 443
set port-forward rule 1 protocol tcp

commit ; save

^ back to top ^

ROUTING

Estos procediminetos son muy extensos y para que el README no sea muy extenso, añado el enlace a la web donde se configura. Están muy bien explicados y redactados.

Load Balancing

Load Balancing

OSPF

OSPF

BGP

BGP

VRRP

VRRP

Public Static IP Addresses

Public Static IP Addresses

Static Route

Static Route

LAN

atencion Asegúrate de cambiar el rando de la red a la de tu red y la interfaz a modificar

DHCP

Modificar DHCP mediante CLI

configure
set interfaces ethernet eth1 description LAN
set interfaces ethernet eth1 address 192.168.1.1/24
set service dhcp-server disabled false
set service dhcp-server shared-network-name LAN authoritative enable
set service dhcp-server shared-network-name LAN subnet 192.168.1.0/24 default-router 192.168.1.1
set service dhcp-server shared-network-name LAN subnet 192.168.1.0/24 dns-server 192.168.1.1
set service dhcp-server shared-network-name LAN subnet 192.168.1.0/24 lease 86400
set service dhcp-server shared-network-name LAN subnet 192.168.1.0/24 start 192.168.1.38 stop 192.168.1.243
set service dns forwarding listen-on eth3
commit ; save

Modificar DHCP mediante GUI

Lo primero es acceder a la web de gestión a la web de gestion del router. Una vez dentro en tramos en la pestaña Services y después en la sub-pestaña DHCP Server. Aquí se podrán ver los servicios DHCP que tenemos en marcha, si es la primera este listado estará vacío por lo que pulsamos en el botón + Add DHCP Server.

dhcp_1.png

Nos aparecerá un formulario que deberemos rellenar con los datos adecuados a nuestras necesidades.

dhcp_2.png

 DHCP Name: Podremos darle un nombre al servicio pero eso si, no se pueden utilizar espacios.

 Subnet: Definimos la subred que ya tengamos configurada en alguna interfaz de nuestro router.

 Range Start: metemos la dirección IP por la que empezara el rango que queremos que sirva nuestro DHCP.

 Range Stop: la dirección IP fin del rango de direcciones a repartir.

 Router: Este sería el Gateway, es decir, la salida a otras redes de nuestra LAN, ya sea internet o aotras redes.

 DNS 1: Dirección IP del servidor DNS primario.

 DNS 2:: Dirección IP del servidor DNS secundario.

 :Enable:* Marcamos este checkbox para que una vez pulsemos el botón Save, se guarde la configuración y esta empiece a funcionar. Si no lo marcamos, la configuración se guardará pero esta no estará habilitada, así que el servicio no empezara a repartir direcciones IP.

Por ultimo pulsamos en el botón Save. Desde ese mismo momento cualquier dispositivo que se conecte a la red de nuestro router y solicite una dirección IP, el servicio que acabamos de configurar le asignara una del rango predefinido.

Ver estado del DHCP

Ahora que está en marcha podemos interactuar con el servicio pudiendo cambiar su configuración o viendo el estado de asignaciones (leases) de direcciones IP.

Para ello en basta con pulsar en el menú desplegable Actions y después en Viewe Details.

dhcp_3.png

Se nos cargara las características del servicio pudiendo cambiarlas si es que lo deseamos. También aparecerá un resumen del estado del servicio, como la cantidad de IPs tiene de para repartir, cuantas estas asignadas, cuantas dispone para repartir etc.

dhcp_4.png

También hay opción de asignar una dirección del rango de manera estática a un dispositivo de nuestra red. Bastara con pulsar en Create New Mapping y asignar un IP del rango a la dirección MAC del dispositivo.

dhcp_5.png

En la pestaña Leases nos encontraremos con aquellas direcciones que ya están asignadas a algún dispositivo. Pudiendo ver cuánto tiempo les queda de asignación y pudiendo asignar de manera estática la IP que ya tienen asignada.

dhcp_6.png

  • Vía CLI: show dhcp leases muestre la dirección IP, la dirección MAC, el grupo y el nombre del cliente

Configurar IP estática para dispositivo

set service dhcp-server shared-network-name MGMT-VLAN subnet 10.10.99.0/24 static-mapping cgn-monitor ip-address 10.10.99.11
set service dhcp-server shared-network-name MGMT-VLAN subnet 10.10.99.0/24 static-mapping cgn-monitor mac-address '52:54:xx:xx:xx:xx'

Router switch

El router también puede actuar como un conmutador. Aquí hay un ejemplo:

set interfaces switch switch0 address 172.22.1.1/24
set interfaces switch switch0 mtu 1500
set interfaces switch switch0 switch-port interface eth2
set interfaces switch switch0 switch-port interface eth3
set interfaces switch switch0 switch-port interface eth4
set interfaces switch switch0 switch-port vlan-aware disable

DNS DINAMICO

Mediante interfaz GUI:

Instrucciones de uso con GUI:

ATENCIÓN: Para poder obtener el token y el dominio DuckDNS pueden obtenerlo desde este repositorio DuckDNS.

  1. Estando dentro de la web de gestión entramos en la pestaña Service y a continuación en DNS. Por ultimo en la sección Dynamic DNS pulsamos el botón + Add DDNS Interface.
  2. Se cargará un formulario vació que deberemos rellenar con los datos adecuados:
    Interface: Aquí hay que seleccionar la interfaz en la que está configurada nuestra IP pública.
    Service: En el menú desplegable hay varios servicios ya pre-configurados, pero entre ellos al no estar DuckDNS optamos por la opción custom.
    Hostname: Aquí hay que meter el subdominio DuckDNS que queremos asignar a nuestro router. Solamente el subdominio, no hace falta meter .duckdns.org.
    Login: poniendo nouser servirá, ya que nos identificaremos mediante nuestro Token.
    Password: Aquí deberemos introducir el Token de nuestra cuenta.
    Protocol: Seleccionamos el protocolo dyndns2.
    Server: por último metemos la url del servidor de DuckDNS, www.duckdns.org.
3. Para terminar pulsamos en Apply para guardar todo lo que hemos metido.

GUI1

GUI2

 
 
Mediante interfaz CLI:

Instrucciones de uso con CLI:

Esto podemos realizarlo conectando al router mediante el protocolo SSH o usando el intérprete CLI incorporado en la propia web de gestión. En todo caso ya sea mediante un método u otro, deberemos iniciar sesión utilizando las mismas credenciales que usamos para acceder vía web.

  1. Accedemos por ssh o cli web.

atencion ATENCIÓN: Teneis que cambiar el "SUBDMIONIO" y "TOKEN".

configure
set service dns dynamic interface INTERFAZ service custom-duckdns
set service dns dynamic interface INTERFAZ service custom-duckdns host-name SUBDMIONIO
set service dns dynamic interface INTERFAZ service custom-duckdns login nouser
set service dns dynamic interface INTERFAZ service custom-duckdns password TOKEN
set service dns dynamic interface INTERFAZ service custom-duckdns protocol dyndns2
set service dns dynamic interface INTERFAZ service custom-duckdns server www.duckdns.org
commit ; save
  1. Periódicamente el router ira actualizando nuestra IP pública en el DNS de DuckDNS. En caso de querer forzar la actualización, se puede realizar lanzando el siguiente comando.
    update dns dynamic interface INTERFAZ
4. Si hemos realizado bien todos los pasos anteriores, ejecutando el siguiente comando veremos si todo está funcionando como debería. show dns dynamic status
    interface : INTERFAZ ip address : xxx.xxx.xxx.xxx host-name : SUBDOMINIO last update : Tue Sep 29 22:28:09 2020 update-status: good

Si en el apartado update-status: vemos que aparece good es que todo está funcionando perfectamente.

 

 

^ back to top ^

Añadir listas de seguridad al firewall

Ubiquiti edgemax

Crear script

Escoger script a utilizar

Antes de crear el script, asegurar que lista van a escoger, si IPv4 o IPv6. Una vez sepan que lista, escoger el script correspondiente:

  • SCRIPT_IPv4:

      list

  • SCRIPT_IPv6:

      list

Creamos el grupo y agregamos una regla de firewall a la WAN:

  • Creamos un nuevo grupo y modificamos nombre de grupo.

Para ver los grupos que tenemos: show firewall group network-group.

set firewall group network-group SPAMHAUS_DROP
commit
  • Para añadir la regla en el firewall, modificamos el número de regla y cambiamos el network-group con el nombre del grupo creado.

Para ver la regla y el orden: show firewall name WAN_IN.

set firewall name WAN_IN rule 10 source group network-group SPAMHAUS_DROP
set firewall name WAN_IN rule 10 description "networks to drop from spamhaus.org list"
set firewall name WAN_IN rule 10 action drop
set firewall name WAN_IN rule 10 state established enable
set firewall name WAN_IN rule 10 state related enable
set firewall name WAN_IN rule 10 protocol all
commit ; save

Crear y Añadir el script /config/scripts/post-config.d/update-spamhaus

Modificamos en el script el nombre de los argumentos: NETGROUP, con el nombre del grupo creado.

Las listas a añadir tienen que tener formato .raw o .txt.

EDIT: Crear el script en /config/scripts/post-config.d mejor que en /config/scripts/ porque después de un reinicio el grupo de firewall volverá a estar vacío, pero si el script está en ese directorio /config/scripts/post-config.d, se ejecutará automáticamente después del arranque.

sudo vi /config/scripts/post-config.d/update-spamhaus

Importante sustituir las listas si son IPv4 o si son IPv6, en los siguientes ejemplos son IPv4.

El comando VI del equipo no está completo, por lo que para guardar, utilizar ZZ o :wq

Hazlo ejecutable:

sudo chmod +x /config/scripts/post-config.d/update-spamhaus

EJECUTAR:

sudo /config/scripts/post-config.d/update-spamhaus

No pensar que se ha quedado bloqueado al insertar el comando, tarda un poco si la lista es muy grande.

Resultado:

    Added 561 entries to SPAMHAUS_DROP

PROGRAMAR TAREA:

OPCIÓN 1:

Este es el programador de tareas, configura para ejecutar un cron diario cada 12h:

    set system task-scheduler {task update_spamhaus {crontab-spec "00 12 * * *"ejecutable {path /config/scripts/post-config.d/update-spamhaus}

También puede colocar su configuración para que sobreviva a una actualización cada 24h:

    set system task-scheduler SPAMHAUS {crontab-spec "00 24 * * *" executable {path /config/scripts/post-config.d/update-spamhaus}}

OPCIÓN 2:

Simplemente agregue el script al programador de tareas tal como está, cambiando el nombre del task y el path de su script:

    set system task-scheduler task update-spamhaus executable path /config/scripts/post-config.d/update-spamhaus
    Las tareas se programan en horas:24h,48h...
    set system task-scheduler task update-spamhaus interval 24h
  • Ajustes de system task-scheduler interval

    minutes Execution interval in minutes

    minutes m Execution interval in minutes

    hours h Execution interval in hours

    days d Execution interval in days

--> Despues vemos las tareas

    show system task-scheduler

Buenas prácticas.

Buenas prácticas para un correcto funcionamiento del firewall:

  • Coloque la regla spamhaus en primer lugar en WAN_IN y WAN_LOCAL (es decir, antes de la regla de permiso para conexiones establecidas y relacionadas). Esto es para evitar la situación "rara" de que un host interno (por ejemplo, infectado con malware) de alguna manera establezca una conexión con un host listado de spamhaus, dando la oportunidad de usar la conexión establecida para fines de spam.
  • Ponga la regla de spamhaus en WAN_OUT, otra vez antes que cualquier otra cosa.
  • Hoy noté en mis registros que el WAN_OUT coincidió (y rechazó) con el tráfico saliente a la dirección IP 185.3.135.146 (búsqueda de spamhaus aquí, listado desde el 29/2/2016). Este tráfico se originó en el cliente bittorrent que se ejecuta en mi NAS. No sé si los spammers usan bittorrent para infiltrarse en hosts posiblemente vulnerables, pero lo considero como un paso de protección adicional que funcionó.
  • Debería asignar las reglas de firewall solo en el pppoe

README con listas de IPs públicas

He realizado un README en la carpeta list con listas de IPs públicas y mis listas creadas.

Dejo enlace a la carpeta del README:

list

REVISIÓN

Listar

    sudo /sbin/ipset list update-spamhaus o sudo /sbin/ipset list -L update-spamhaus
  • Sin que muestre las ips: sudo /sbin/ipset list -t

Comprobar una ip

    sudo /sbin/ipset test update-spamhaus 192.168.1.100

Limpiar grupo de IPs

    sudo /sbin/ipset flush update-spamhaus

Utilice este comando a través de la CLI para ver las entradas:

    show firewall group SPAMHAUS_DROP

Despues vemos las tareas

    show system task-scheduler

Ver log

    cat /var/log/messages

Monitorización de IPs bloqueadas

He creado un script para poder informar al telegram de las IPs bloqueadas por una regla desde el log.

    Modificar en el script la WAN con la regla a buscar y añadir vuestro ID CHAT y token del bot.

    El scrip pueden descargarlo o verlo desde la carpeta del repositorio en este enlace:

    download

EJEMPLO DE REGLAS:

    name WAN_IN {
        default-action drop
        description "WAN to internal"
        enable-default-log
        rule 10 {
            action drop
            description "Networks to drop from spamhaus.org list"
            log enable
            source {
                group {
                    network-group SPAMHAUS_DROP
                }
            }
        }
.........................
.........................

 name WAN_LOCAL {
        default-action drop
        description "WAN to router"
        enable-default-log
        rule 10 {
            action drop
            description "Networks to drop from spamhaus.org list"
            log enable
            source {
                group {
                    network-group SPAMHAUS_DROP
                }
            }
        }
.........................
.........................

    name WAN_OUT {
        default-action accept
        description "WAN OUT firewall rules"
        rule 10 {
            action reject
            description "Networks to drop from spamhaus.org list"
            destination {
                group {
                    network-group SPAMHAUS_DROP
                }
            }
            log enable
        }

EJEMPLO DE INTERFAZ WAN:

ethernet eth1 {
        description "Internet (PPPoE)"
        duplex auto
        firewall {
            in {
                name WAN_IN
            }
            local {
                name WAN_LOCAL
            }
        }
        pppoe 0 {
            default-route auto
            firewall {
                in {
                    name WAN_IN
                }
                local {
                    name WAN_LOCAL
                }
            }

^ back to top ^

POSIBILIDAD DE AÑADIR UN CERTIFICADO A LOCALHOST

Ubiquiti edgemax

Añadir certificado CA para localhost

Usando mkcert por Filippo Valsorda para crear un certificado CA para localhost.
Opción de ir a la ruta de certificados SSL con Let's Encrypt hay varios diferentes para elegir. Por ejemplo, ubnt-letsencrypt por Jesse Miller

configure
set system static-host-mapping host-name <hostname> inet <ip-of-edgerouter>
commit ; save

Crear certificado

$ mkcert <ip-of-edgerouter> <hostname>
cat <ip-of-edgerouter>+1-key.pem <ip-of-edgerouter>+1.pem > server.pem

Copia de seguridad del archivo de certificado existente

sudo cp /etc/lighttpd/server.pem /etc/lighttpd/.server-OLD.pem
exit

Copie el nuevo archivo de certificado en la dirección del usuario de su router

scp /path/to/server.pem <user>@<ip-of-edgerouter>:/home/<user>/server.pem

Copiar el nuevo archivo de certificado desde la dirección del usuario y habilitar el certificado

sudo cp /home/<user>/server.pem /etc/lighttpd/server.pem
# Kill webserver service by PID
sudo kill -SIGINT $(cat /var/run/lighttpd.pid)
# Start webserver
sudo /usr/sbin/lighttpd -f /etc/lighttpd/lighttpd.conf
exit

Comprueba tu conexión con curl
Si se hace correctamente, una forma de comprobarlo es utilizar curl. Si obtiene una redirección a un puerto de protocolo SSL, es decir, 443, el certificado está instalado correctamente en su router.

$ curl -I http://<ip-of-edgerouter>/
HTTP/1.1 301 Moved Permanently
Location: https://<ip-of-edgerouter>:443/
Date: Sun, 11 Jan 2015 07:46:13 GMT
Server: Server

^ back to top ^

OpenVPN

Este tutorial describe como configurar un servidor OpenVPN en un EdgeRouter.

Configuración EdgeRouter como servidor OpenVPN. (Servidor)

Crear certificados

Aqui hay una lista con los archivos que necesitas. Puedes usar el Software XCA para eso

  • ca.crt (CA Raíz)
  • server.crt (Certificado del Servidor)
    • Para prevenir ataques MITM asegúrese de configurar
      • Uso de claves X509v3: Firma digital, cifrado de claves
      • Uso extendido de claves X509v3: Autenticación de servidor web TLS
  • server.key (Archivo de claves para el certificado del servidor)
  • dh.pem (clave de intercambio de claves Diffie-Hellman; la buena es de 2048 bits)
  • revocation-list.crl (Opcional; Lista de revocación de certificados)

Una vez creados los archivos, cópielos todos en /config/auth/.

Para la configuración del cliente: Asegúrese de que remote-cert-tls server está activado.

Configuración básica de OpenVPN

configure
set interfaces openvpn vtun0
set interfaces openvpn vtun0 mode server
set interfaces openvpn vtun0 server name-server 1.1.1.1 # change to your prepered one
set interfaces openvpn vtun0 server domain-name example.com # change to your prefered one
# set your network
set interfaces openvpn vtun0 server push-route 192.168.178.0/24 
# set the ranche for the openvpn clients. Clients will receive a IP address from this subnet
set interfaces openvpn vtun0 server subnet 192.168.177.0/24

Configuración del certificado

Como se ha descrito anteriormente. Asegúrese de que su clave privada tiene chmod 600.

set interfaces openvpn vtun0 tls ca-cert-file /config/auth/ca.crt
set interfaces openvpn vtun0 tls cert-file /config/auth/server.crt
set interfaces openvpn vtun0 tls dh-file /config/auth/dh2048.pem
set interfaces openvpn vtun0 tls key-file /config/auth/server.key
# optional: set revocation list
set interfaces openvpn vtun0 tls crl-file /config/auth/revocation-list.crl

Configurar el registro

set interfaces openvpn vtun0 openvpn-option "--log /var/log/openvpn.log"
set interfaces openvpn vtun0 openvpn-option "--status /var/log/openvpn-status.log"
set interfaces openvpn vtun0 openvpn-option "--verb 7"

Configuración del cortafuegos

No olvides configurar NAT para los clientes openvpn

set firewall name XXX rule XX action accept
set firewall name XXX rule XX description 'Allow OpenVPN'
set firewall name XXX rule XX destination port 1194
set firewall name XXX rule XX log disable
set firewall name XXX rule XX protocol udp

Configuración EdgeRouter como Cliente OpenVPN. (Cliente)

Este tutorial describe cómo configurar el EdgeRouter como Cliente OpenVPN.

Usefull links:

Configuración básica

Primero necesita hacer ssh en su EdgeRouter. A continuación, cree un directorio donde almacenar sus archivos OpenVPN.

sudo su
mkdir -p /config/auth/example

En este ejemplo tengo los siguientes archivos:

  • ca.crt (CA raíz)
  • client.key (Clave privada del usuario)
  • client.crt (Certificado de usuario)
  • openvpn-static-key-v1.key (para tls-auth)
  • example.ovpn (configuración del cliente OpenVPN (ver más abajo))

Asegúrese de que key.pem tiene chmod 600

Ejemplo del archivo de configuración OpenVPN

Este archivo puede variar dependiendo de la configuración de su servidor openvpn.

client
dev tun 
proto udp
remote vpn.example.com
resolv-retry infinite
nobind
persist-key
persist-tun
key-direction 1
remote-cert-tls server
auth-nocache
auth SHA512
cipher AES-256-GCM

# files
ca /config/auth/example/ca.crt
cert /config/auth/example/client.crt
key /config/auth/example/key.pem
tls-auth /config/auth/example/openvpn-static-key-v1.key 1

Configurar la interfaz

Si ya ha configurado su EdgeRouter como un servidor OpenVPN, entonces usted necesita cambiar la interfaz de red de vtun0 a otra cosa (por ejemplo, vtun1)

configure
set interfaces openvpn vtun0 description 'example vpn'
set interfaces openvpn vtun0 config-file /config/auth/example/example.ovpn
commit
save

Setup an extra VLAN for clients

# create a new vlan (VLAN 10)
set interfaces switch switch0 vif 10 address 192.168.40.1/24
set interfaces switch switch0 vif 10 description 'example VLAN'
set interfaces switch switch0 vif 10 mtu 1500

Setup a DHCP server

set service dhcp-server shared-network-name EXAMPLE-LAN authoritative disable
set service dhcp-server shared-network-name EXAMPLE-LAN subnet 192.168.40.0/24 default-router 192.168.40.1
set service dhcp-server shared-network-name EXAMPLE-LAN subnet 192.168.40.0/24 dns-server 1.1.1.1
set service dhcp-server shared-network-name EXAMPLE-LAN subnet 192.168.40.0/24 domain-name example.com
set service dhcp-server shared-network-name EXAMPLE-LAN subnet 192.168.40.0/24 lease 86400
set service dhcp-server shared-network-name EXAMPLE-LAN subnet 192.168.40.0/24 start 192.168.40.10 stop 192.168.40.100

Setup NAT & routing

# setup NAT
set service nat rule 5020 description NAT-EXAMPLE-VPN
set service nat rule 5020 log disable
set service nat rule 5020 outbound-interface vtun0
set service nat rule 5020 source address 192.168.40.0/24 
set service nat rule 5020 type masquerade

# setup routing
set protocols static table 1 interface-route 0.0.0.0/0 next-hop-interface vtun0

set firewall modify VPN_EXAMPLE_ROUTE rule 10 description 'Subnet to VPN'
set firewall modify VPN_EXAMPLE_ROUTE rule 10 source address 192.168.40.0/24
set firewall modify VPN_EXAMPLE_ROUTE rule 10 modify table 1

# apply the firewall route to VLAN 10
set interfaces switch switch0 vif 10 firewall in modify VPN_EXAMPLE_ROUTE

^ back to top ^

squidguard proxy

Puede utilizar su router Edge como un servidor proxy para bloquear ciertas categorías, por ejemplo, anuncios o malware.

requisito previo

  • SSH en su enrutador Edge.
  • Descargue las categorías disponibles. Dependiendo de su dispositivo, esto puede tardar unos minutos (en mi dispositivo tardó unos 100 minutos).
  • Actualizar y configurar webproxy
update webproxy blacklists

ejemplo de configuración

set service webproxy cache-size 0
set service webproxy default-port 3128
set service webproxy listen-address 172.22.3.1
set service webproxy mem-cache-size 5
set service webproxy url-filtering squidguard block-category ads
set service webproxy url-filtering squidguard block-category porn
set service webproxy url-filtering squidguard default-action allow
set service webproxy url-filtering squidguard redirect-url 'https://brainoftimo.com/not-for-you'

possible categories to block

  • ads
  • adult
  • aggressive
  • agressif
  • arjel
  • associations_religieuses
  • astrology
  • audio-video
  • bank
  • bitcoin
  • blog
  • celebrity
  • chat
  • child
  • cleaning
  • cooking
  • cryptojacking
  • dangerous_material
  • dating
  • ddos
  • dialer
  • download
  • drogue
  • drugs
  • educational_games
  • filehosting
  • financial
  • forums
  • gambling
  • games
  • hacking
  • jobsearch
  • lingerie
  • liste_blanche
  • liste_bu
  • local-ok-default
  • local-ok-url-default
  • mail
  • malware
  • manga
  • marketingware
  • mixed_adult
  • mobile-phone
  • phishing
  • porn
  • press
  • proxy
  • publicite
  • radio
  • reaffected
  • redirector
  • remote-control
  • sect
  • sexual_education
  • shopping
  • shortener
  • social_networks
  • special
  • sports
  • strict_redirector
  • strong_redirector
  • translation
  • tricheur
  • update
  • violence
  • warez
  • webmail

^ back to top ^

Syslog

Configure el dispositivo para iniciar sesión en un SYSLOG Nuestro Servidor Syslog tiene la ip de: 10.10.99.111

Estamos registrando todo: (level debug) pero puede establecer otro nivel de registro, por ejemplo level err.

configure
set system syslog global facility all level notice
set system syslog global facility protocols level debug
set system syslog host 10.10.99.111 facility all level debug

commit
save
exit

WireGuard

Este tutorial describe como configurar un servidor WireGuard en un EdgeRouter. Adjunto el enlace al repositorio de GitHub:

Herramientas de diagnostico de red

BGP:

 Pagina para comprobar tu BGP

  https://isbgpsafeyet.com/

 
test IPv6/IPv4:

 Pagina para comprobar IPv6/IPv4

  http://www.test-ipv6.com/

  https://www.whatismyip.com/

 
Test velocidad:

 Pagina para comprobar la velocidad de conexión

  https://speedsmart.net/

 
Test DNS:

 Pagina para comprobar las DNS de cloudfare

  https://1.1.1.1/help

Conclusión

Con esta información puedes configurar un EdgeMax© para sustituir un router neutro. Aquí podrás encontrar todo lo que he conseguido hacer con este router. Los pasos anteriormente explicados están basados en una red que puede diferir de la que tú tienes montada. Si sigues al pie de la letra todos los pasos, pueden no coincidir con la configuración de tu red y dejarla inservible. Adapta en todo momento la documentación que se ha expuesto para que cuadre con tu red.

Estos archivos/textos se proporcionan "TAL CUAL", sin garantías de ningún tipo, expresas o implícitas, incluidas, entre otras, las garantías de comerciabilidad, idoneidad para un fin determinado y no infracción. En ningún caso los autores o los titulares de los derechos de autor serán responsables de ninguna reclamación, daño u otra responsabilidad derivada de, o relacionada con los archivos o el uso de los mismos.

Todas y cada una de las marcas registradas son propiedad de sus respectivos dueños.

Iré actualizando información y añadiendo procedimientos cuando tenga tiempo libre.

About

A collection of enhancements for EdgeMax based devices


Languages

Language:Shell 100.0%