Infraestructura de red doméstica

Ahora que ya tenemos nuestro sistema domótico en marcha podemos empezar a usarlo en productivo. ¿Cuál es el problema? Que no podemos acceder a él de forma remota, por lo que perdemos una gran funcionalidad del sistema y es el de operar nuestra casa sin estar físicamente en ella.

Antes de activar esta función, debemos tener en cuenta que, desde el punto de vista de la seguridad, el mero hecho de publicar un servicio hacia internet puede ser inseguro. Por tanto, para evitar disgustos o al menos, minimizar el riesgo, voy a dividir el trabajo en varios post en los que trataremos de preparar nuestra red local, firewall, router, servidor y sistemas de acceso.

En este primer post, vamos a ver un posible esquema de infraestructura de red y vamos a sustituir el router/firewall que nos suministra nuestro proveedor de internet por uno neutro con un sistema operativo de software libre que nos permitirá gestionar la seguridad y la red con mayor facilidad.

Si quieres navegar de forma rápida, este es el TOC:

  1. Infraestructura lan doméstica
  2. Instalar OpenWRT
  3. Conectar nuestro firewall/router al operador
  4. Reglas en el firewall
  5. DHCP y Static Leases

Infraestructura lan doméstica

El primer punto a tener en cuenta a la hora de diseñar una red lan doméstica es si disponemos de una red cableada y si esa red cableada tiene al menos cables de categoría 6 para darnos velocidades de 10 Gbps (Gigabit). Si nuestros cables son de categoría 5e la velocidad máxima que vamos a conseguir es 1Gbps, nos podría servir para un uso normal de navegación pero si en un futuro ponemos en marcha un media center y queremos ver películas o series en calidad 4K en streaming desde nuestro servidor, es recomendable que sustituyas estos cables por unos de categoría 6.

Teniendo en cuenta esto, os voy a dar una posible solución tanto para redes cableadas Gigabit como para una red completamente inalámbrica.

De todas formas quiero dejar claro que la infraestructura de red que vamos a implementar en ambos casos es algo simple, no vamos a utilizar segmentación por VLAN al menos por ahora, que aunque siendo un esquema más seguro, nos complica bastante la infraestructura, la instalación y encarece los equipos necesarios a utilizar. Si te interesa mucho este aspecto ya que vas a conectar muchos equipos IoT WiFi a tu red, te recomiendo que eches un ojo este post de mi amigo @FoRTu donde explica como crear segmentos de red sobre un router Ubiquiti EdgeRouter X.

De la misma forma, en nuestro servidor de unraid no vamos a implementar una segmentación de las redes internas de docker más allá de usar una red bridge en el mismo segmento de red que nuestra red LAN. Aunque esa segmentación es algo aconsejable, para un servidor doméstico es algo que podemos obviar para simplificar los accesos.

Estas dos decisiones aumentan el riesgo a sufrir algún tipo de ataque desde el exterior, por lo que será importante mantener nuestros servicios actualizados, utilizar contraseñas de acceso seguras (y a ser posible OTPs), y como vimos en la configuración básica de UnrRaid, no exponer los shares del servidor sin protección en nuestra red. Teniendo en cuenta que nuestros equipos IoT se encuentran en una red ZigBee aislada de nuestra red local y si seguimos estos consejos será algo más complicado que podamos sufrir ataques externos o que nuestros aparatos puedan ser usados en ataques DDoS mundiales coordinados.

También quiero comentar (antes de entrar a ver las posibles infraestructuras de red) que algunas operadoras están instalando equipos que integran el modem ONT fibra y el firewall/router en un solo aparato. En estos casos (por ejemplo, Movistar), si queremos hacer uso de un router neutro os recomiendo poner el equipo de la operadora en modo brigde ya que los protocolos de conexión ONT suelen variar según operadora y estas suelen ser bastante opacas en ofrecer información sobre estos protocolos y su autenticación.

Infraestructura con red cableada

Si ya tenemos una red cableada de cat6 ya tenemos una gran parte del trabajo hecho. En este caso vamos a entender la red en tres capas:

  • Red cableada PoE
  • Red cableada no PoE
  • Red inalámbrica

Dado que tenemos una red cableada, como veremos, vamos a aprovecharla para no solo llevar comunicación a los puntos de red de la casa, sino que vamos a llevar también la corriente eléctrica necesaria a algunos puntos de la casa usado PoE, donde colocaremos elementos de red que funcionaran con un solo cable.

El esquema de infraestructura que podríamos plantear es el siguiente:

Esquema 1

En este caso he dotado a la red de un Sistema de Alimentación Ininterrumpida (cables rojos), de forma que en caso de que se vaya la luz en casa nuestra infraestructura siga funcionando y sirviendo los servicios que para nosotros sean críticos.

Si, como en mi caso particular, tus equipos de red (módem de fibra, router, etc) están en una ubicación física diferente al servidor, puedes optar por añadir un segundo UPS de menor tamaño y adecuado al consumo de estos aparatos, con esquema tal que así:

Esquema 2

Como podéis ver, yo he optado por puntos de acceso WiFi externos al router distribuidos por casa en diferentes puntos de red para tener la mejor cobertura posible tanto en la banda de 5Ghz como en la de 2,4Ghz.

Este es el listado de equipos que os propongo:

Infraestructura con red inalambrica

Si no disponemos de una red cableada que nos permita distribuir los puntos de acceso en casa usando esa red cableada, la opción más interesante que tenemos es la de crear un red Mesh WiFi similar a la red ZigBee para nuestros equipos IoT.

Una red Mesh funciona con una antena maestra conectada al router y una serie de antenas distribuidas por casa que funcionarán como esclavos, conectados entre si y desde los más cercanos también al maestro. Esta configuración nos complica el uso de UPS ya que tendríamos que colocar uno por cada repetidor mesh. Mi propuesta como solución es la de conectar una de los esclavos mesh al UPS principal donde tenemos el servidor y la antena maestra conectarla al router, pero esto solo nos será útil si estas dos antenas se ven entre ellas (están relativamente cerca):

Esquema 3

En este caso el listado de equipos necesario sería:


Instalar OpenWRT

Lo primero que vamos a hacer cuando nos llegue a casa el Router MikroTik Hex es instalar OpenWRT ya que su sistema operativo RouterOS es bastante desagradable a la vista. Además OpenWRT es un software libre que podemos instalar en muchísimos tipos de routers, por lo que puedes usar otro router diferente al que os propongo que te guste más y/o en un futuro migrar el sistema a otro equipo nuevo importando la configuración.

Los pasos para instalar OpenWRT varían según el router elegido, por lo que lo mejor es seguir los pasos específicos para nuestro equipo. De forma resumida:

  1. Descargamos el archivo de instalación y el de upgrade ya que usaremos los dos.
  2. Encendemos el router, nos enchufamos con un cable de red desde el PC al puerto eth1, y utilizando el navegador entramos al 192.168.1.1
  3. Hacemos una copia del RouterOS key por si en un futuro queremos volver a instalarlo.
  4. Apagamos el router.
  5. Descargamos el tinyPXE server.
  6. Cambiamos la IP de nuestro PC a 192.168.1.10
  7. Abrimos el tinyPXE y aceptamos cualquier aviso del firewall de Windows.
  8. En boot file quitamos el check y en el file seleccionamos el archivo de instalación “intramfs-kernel.bin”
  9. Hacemos clic en Online.
  10. Enchufamos el cable de red en el puerto “Internet” o 1.
  11. Mientras mantenemos pulsado el botón de Reset con un palito, encendemos el router. Mantenemos pulsado el Reset hasta que escuches el primer beep. En ese momento veremos que en la consola del tinyPXE empezará a haber actividad y soltamos el botón.
  12. Esperamos SIN APAGAR EL EQUIPO NI TOCAR NADA hasta que los leds dejen de parpadear. En ese momento veremos que el equipo se reinicia.
  13. Cambiamos el cable de ethernet al puerto 2.
  14. Abrimos el navegador y entramos en 192.168.1.1
  15. Vamos a system > backup / flash software y en la zona de Flash new firmware image seleccionamos el archivo de update sysupgrade.bin y le damos a OK. Esto hará que la instalación ya sea permanente.
  16. Esperamos a que finalice el proceso SIN APAGAR EL EQUIPO NI TOCAR NADA y cuando se reinicie ya tendremos el router con OpenWRT listo.

Os dejo un video en el que se llevan a cabo los mismos pasos para otro modelo de router de Miktrotik (salvo el paso 11 y 12):

Una vez finalizada la instalación procederemos a poner una contraseña segura al usuario Root.


Conectar nuestro router al operador

Antes de seguir adelante, tendremos que buscar en internet los protocolos de conexión para que podamos configurar el puerto WAN de nuestro mikrotik acorde a nuestra operadora.

Una vez hecho esto procederemos a quitar el router de nuestro operador y conectar el modem ONT de fibra(o el router del operador en modo brigde) al puerto 1 del mikrotik y encenderlo.

Como ejemplo, vamos a configurar una conexión de O2 que es la operadora que tengo contratada(los pasos para movistar son exactamente los mismos). Lo primero, es crear la VLAN en la que trabaja O2. En el router vamos a Network > Switch y lo dejamos así:

VLAN

Ahora vamos a Network > Interfaces y en WAN seleccionamos EDIT. Introducimos los siguientes datos:

  • Protocolo: PPPoE
  • PPP Username / nombre de usuario: adslppp@telefonicanetpa
  • PPP Password / contraseña: adslppp

En las pestañas Physical Settings y Firewall settings elegimos la VLAN 6 de la siguiente forma:

ppoe1 ppoe2

Guardamos y al activar, si hemos hecho todo bien, veremos que recibimos una IP pública y empezamos a tener paquetes en subida y bajada:

ppoe3

Por cierto, en caso de que nuestra operadora utilice el protocolo CGI-NAT como por ejemplo pepephone, es el momento de solicitar a la operadora que nos lo desactive (o de cambiarte de operadora) ya que en cuando vayamos a publicar los servicios para acceder desde el exterior necesitaremos una IP pública propia y no compartida.


Reglas en el firewall

Para finalizar nuestra configuración vamos a ir a Network > Firewall y vamos a dejar la conexión de esta forma:

firewall

Con esta configuración tendremos la salida abierta pero la entrada bloqueada hasta que lo configuremos expresamente en el siguiente post.


DHCP y Static Leases

En este paso lo que vamos a hacer es familiarizarnos con la parte del router donde vamos a configurar el pool DHCP y las reservas de IPs estáticas para equipos concretos a los que queramos o necesitemos ponerles una IP fija.

Lo primero es configurar la red LAN, que aunque ya estará con una configuración inicial activa, la vamos a repasar. Para ello vamos a Network > Switch y editamos la red LAN. Vamos a la columna DHCP Server y lo configuramos así:

dhcp1

En este caso, la IP más pequeña del pool será 192.168.1.100 hasta el 192.168.1.250. Lo hago así para tener el rango desde 192.168.1.1 hasta el 192.168.1.100 libre para poder asignarlos como IPs estáticas.

En la pestaña Advanced Settings lo único que tendremos que activar es el Dynamic DHCP tal que así:

dhcp2

Guardamos y aplicamos. Ahora vamos a Network > DHCP and DNS y a la pestaña Static Leases donde podremos añadir una reserva de IP estática para nuestro servidor unraid. Hacemos click en add y seleccionamos nuestro servidor en MAC address, le ponemos un nombre de Host y escribimos la IP deseada:

static

Guardamos y aplicamos. Para que el servidor coja la nueva IP tendremos que o bien quitarle el cable y volver a conectarlo o bien reiniciarlo.


Con esto ya tendríamos la red preparada para poder empezar a publicar servicios hacia el exterior. Lo único que queda pendiente es crear los Port Forwarding necesarios, algo que veremos en el siguiente post junto a la instalación y configuración de un proxy reverso y un servicio de DDNS.

Más adelante profundizaremos en las opciones de OpenWRT instalando paquetes como un QoS para priorizar el tráfico de algunos servicios sobre otros, etc.


Suscríbete

Nota: algunos de los enlaces a productos o servicios pueden ser enlaces referidos con los que podemos obtener una comisión de venta.