Mi red hogareña – KVM, pfSense, OpenWRT, VLAN, etc.

19 junio, 2017 2 comentarios

Después de no haber publicado nada en el blog desde hace más tiempo del que quiero admitir, hoy les vengo a contar que hace tiempo que tengo una red hogareña, lo cual no es ningún secreto, que no es la típica red del común de la gente, sino que tiene ciertos toques que serían más necesarios y justificables en una pequeña empresa más que en una casa, pero … y bueno, ¿porque no? 🙂

Si bien hace tiempo que venía andando muy bien, tuve un llamado de atención hace unos días, cuando encontré un supuesto intruso en mi red, ya que había un lease DHCP que no pertenecía a ningún dispositivo de los que se conectan normalmente. Noté esto porque tengo las direcciones MAC asociadas a las IP que se le asignan a dichos dispositivos y justamente había un dispositivo con una dirección MAC desconocida.

Esto llevó a que decidiera cerrar aún más la seguridad de mi red, por la cual ya no se asignan direcciones IP a dispositivos que no tengan la dirección MAC habilitada en mi firewall y debido a esto me vi en la necesidad de implementar una red wifi para invitados, la cual fue implementada mediante una VLAN para mantener el tráfico separado de la WLAN y la LAN internas.

Antes de pasar a describir como está configurada mi red, si, ya se, el control de acceso por MAC no garantiza mucha seguridad. Pero también está la seguridad WPA2, por lo que hay una combinación de las dos para acceder, lo cual tampoco significa que sea 100% seguro, pero es mayor seguridad que utilizar solamente una de las dos opciones anteriores.

En cuanto a hardware hay unas cuantas cosas, nada muy espectacular, pero suficiente para hacer el trabajo requerido. Sin entrar en detalle de los clientes de la red, les comento el hardware que hay instalado:

  • Cisco 677
  • Arris Surfboard SBG6700-AC
  • PC comun y silvestre que se cree un server de virtualización con KVM, la cual virtualiza a:
    • una PC más común y silvestre aún que se cree un grade class firewall
    • a otra PC también de medio pelo, que se cree que es un server con Debian
  • Router Netgear R7000 AC1900 dual band Gigabit (esto es lo mejorcito de la red) con Xwrt-Vortex en lugar del firmware de Netgear
  • Router TP-Link WDR3600 N600 dual band Gigabit (este era bueno hace un tiempo pero ya evidencia su edad) con OpenWRT para poder usar VLANs
  • Switch genérico de 8 bocas que tiene no se cuantos años…. (por lo cual no, no es Gigabit)
  • HD de 2TB USB3
  • Varias cosas como Chromecast, RaspBerrys, teléfobnos celulares, tablet, notebooks, algún que otro server Sun muy añejo y algunas cosas más dando vueltas como módulos ESP8266 para Arduino, pero eso ya es para otro post.

Ahora bien, en lugar de seguir contándoles el porque de mis decisiones, les voy a mostrar en un diagrama como está configurada mi red y comentaré algunos detalles de la misma.

Network pablot

Mi red “hogareña”

Bien, vayamos por partes “dijo Jack”, como les decía no es la típica red hogareña, y en primera instancia vemos que tenemos dos proveedores de Internet, Fibertel (12Mb) y Arnet (3Mb), cable y ADSL respectivamente.

Esto es así porque mi esposa utiliza la red para trabajar y los proveedores de Internet en Argentina no son todo lo confiables que uno quisiera, por lo que al tener dos disminuye notablemente la posibilidad de quedarnos sin Internet en casa.

Como se ve en el diagrama, el vínculo de Arnet está conectado a través de un Cisco 677 en modo bridge, el cual es como decimos nosotros “un fierro”. Este “bichito” tiene más de 15 años funcionando 24 hs al día, casi 365 días al año (excepto vacaciones) y funciona a la perfección… por algo Cisco es Cisco en materia de networking.

En cambio el vínculo de Fibertel desde el 2013 ya va por el tercer router, ya han pasado dos Motorola Surfboard SBG901 que han dejado de funcionar y ahora hay un Arris Surfboard SBG6700-AC. En todos los casos siempre también en modo bridge. Les recomiendo pedirle a Fibertel que se los pase a modo bridge y evitar así la aventura de hacerlo ustedes, ya que aparentemente vienen con el firmware modificado y si bien se puede poner en modo bridge si uno es lo suficientemente empecinado, se reniega bastante y no vale la pena tanto esfuerzo, pero si quieren experimentar, adelante!

Ambos vínculos están conectados a una PC con Linux, la cual tiene 3 placas de red, dos para los vínculos de internet y uno para la LAN. Esta PC hace las veces de server de virtualización gracias a KVM, en la cual tengo virtualizados un par de servers, uno de ellos es el firewall, el cual es pfSense y el otro un server Debian para experimentar un poco.

Dos notas al margen, la primera es que para este setup funcionan mucho mejor los drivers virtio tanto para los HD virtualizados como para las placas de red; la segunda es que tengo conectado a esta PC por el puerto paralelo una pequeña cajita con 8 leds que pueden configurarse para mostrar el estado de diferentes cosas del server, en mi caso el tráfico de red en las distintas placas de red, todo esto gracias a un viejo soft llamado portato.

Este server, no tiene monitor y se accede por SSH y de ahí mediante un server X11 instalado en cualquier cliente para levantar el software de configuración de KVM, en este caso el Virtual Machine Manager y libvirt como se ve en la siguiente imagen.

virt-manager

Virtual Machine Manager

Como más de uno ya se habrá dado cuenta, pfSense es el corazón de toda mi red, el cual recomiendo enfáticamente, ya que brinda una amplia gama de posibilidades en cuanto a configuración y es realmente muy seguro. Está basado en FreeBSD, el cual es uno de los S.O. con mejor seguridad que existen, incluso superior a Linux.

En mi caso tengo configurada una VPN mediante OpenVPN que me permite conectarme remotamente a mi red desde cualquier lado.

También como algunos habrán notado tengo configurado IPv6 en mi led local y un tunnel IPv6 con Hurricane Electric para poder navegar por Internet con IPv6 por lo sitios que lo soportan. Por lo que me conecto a Hurricane Electric mediante mi tunel y luego de ahi salgo por IPv6 a Internet. Por el momento lo tengo configurado solo sobre el vínculo de Fibertel, pero en un futuro lo configuraré para Arnet también.

Gracias a las posibilidades multi WAN de pfSense, tengo configurado balanceo de carga y failover, para que de esta manera cuando se cae uno de los dos vínculos de Internet, se sigue navegando de manera transparente sin que se corte la conectividad.

Cuidado que esto no es lo mismo que sumar los anchos de banda, eso es otra cosa que se conoce como bonding.

Por último, también en pfSense tengo configurada una VLAN sobre la LAN, la cual se extiende a dos routers inalámbricos. La VLAN para invitados me permite tener completamente aislada mi LAN de lo que los invitados puedan hacer en la VLAN, ya que la LAN es totalmente invisible para la VLAN de invitados.

Respecto a los routers, uno de ellos, conectado a la interface de la LAN de mi pfSense es un router Netgear R7000 con el firmware Xwrt-vortex que mejora notablemente las posibilidades del firmware original de Netgear. El R7000 es un excelente router AC1900 dual 802.11ac Gigabit.

De todas maneras el R7000 funciona como un AP, pero tiene configurada la VLAN para la red wifi de invitados, la cual es provista por un segundo router un poco más antiguo, un TP-Link WDR3600, también en modo AP, el cual es un N600 también dual band Gigabit, que tiene instalado el firmware OpenWRT que permite utilizar VLANs ya que el original no lo soporta.

En realidad no hay ninguna necesidad de tener dos routers para montar la VLAN de invitados, pero como el pobre WDR3600 se había quedado sin trabajo cuando llegó el R7000 de reemplazo, decidí que una buena tarea para el era ocuparse de la wifi para invitados.

Volviendo al R7000, tiene un disco externo de 2TB conectado por USB3 que hace las veces de una mini NAS de los pobres para mi red. También hay un pequeño switch de 8 bocas para conectar algunos otros dispositivos.

Luego de esto pasamos a una variada gama de dispositivos que van y vienen, varios teléfonos celulares, notebooks, tabletas, chromecast, raspberrys, consolas de juego, smartTV, smartwatch, etc.

Aprovechando cuando se puede los 5GHz de la red y sino los 2.4GHz para los dispositivos que no lo soportan.

Como verán no es la típica red hogareña, pero es mi red hogareña y es bastante segura y versátil para las necesidades mías y de mi familia, siendo también lo bastante segura como para estar relativamente tranquilo en cuanto a la seguridad.

Se habrán dado cuenta que pasé por muchos temas los cuales casi no fueron detallados, ya que transformar esto en un tutorial lo haría muy extenso, pero sin llegar al extremo de dar explicaciones detalladas de como montar algo similar, estoy abierto a recibir las consultas que puedan tener sobre algunos detalles de la red, ya que como imaginaran hay mucha configuración sobre la que no me he explayado, sobre todo en el caso de pfSense que es donde más he trabajado para lograr la configuración actual y varias reglas del firewall en las distintas interfaces que tiene; que en realidad si bien son 3 físicamente, en la práctica son 5, como se ve a continuación en el Dashboard de pfSense, ya que el tunel IPv6 de Hurricane Electric está sobre la interface de Fibertel y la VLAN está sobre la interface de la LAN.

56279ac4-0cac-47cd-bacb-b83e817f7414.png

Los números de 2013

31 diciembre, 2013 Deja un comentario

Los duendes de las estadísticas de WordPress.com prepararon un informe sobre el año 2013 de este blog.

Aquí hay un extracto:

La sala de conciertos de la Ópera de Sydney contiene 2.700 personas. Este blog ha sido visto cerca de 34.000 veces en 2013. Si fuera un concierto en el Sydney Opera House, se se necesitarían alrededor de 13 presentaciones con entradas agotadas para que todos lo vean.

Haz click para ver el reporte completo.

Categorías:General

Linux virtual sever con KVM, pfSense, m0n0wall, FreeNAS y NAS4Free

23 abril, 2013 Deja un comentario
Screen Shot of Installing Ubuntu Server

English: Screen Shot of Installing Ubuntu Server (Photo credit: Wikipedia)

Finalmente luego de mucho tiempo encontré el tiempo para un viejo proyecto que tenía en mente desde hace mucho, montar servidores virtuales, lo cual fue posible gracias a Linux KVM.

Este proyecto me permitiò cumplir a la vez con 3 objetivos distintos. El primero era poder filtrar de alguna manera la navegación dentro de mi red hogareña, el segundo montar un server NAS, y el tercero, dejar abierta la posibilidad de seguir añadiendo servidores para distintos fines que pudieran surgir en el futuro, Asterisk por ejemplo.

Para esto, de ninguna manera iba a poder utilizar servidores reales, ya que no contaba con un lugar donde ubicar equipos físicos con espacio libre y por otro lado, estaba totalmente descartado destinar dinero para ir sumando equipos. Debido a esto, inmediatamente la mejor solución se planteaba por el lado de utilizar servidores virtuales gracias a la virtualización.

La idea de utilizar VMWare o Virtualbox quedó deshechada casi desde el comienzo, ya que el hardware que tenía disponible para utilizar estaría en un lugar de difícil acceso y sin monitor ni teclado, por lo que poder manejarlo remotamente desde una consola era uno de los requerimientos del proyecto. Por otra parte debido a los pocos recursos del hardware disponible (un viejo Athlon de 5 años de antiguedad!), la idea era instalar Ubuntu Server sin ningún entorno gráfico como Gnome que consuma recursos valiosos.

Finalmente la solución ideal resulto ser Ubuntu server con KVM (kernel based virtual machine), que resultó ser ideal debido a su fácil utilización por medio de la consola y su bajo consumo de recursos. Una vez decidido esto, ahora había que pasar a la elección de los S.O. a instalar en las máquinas virtuales. La idea original fue utilizar mi viejo y querido amigo, IPCop, pero realmente creo que el desarrollo de IPCop se ha quedado en el tiempo y como los recursos de hardware disponible para el servidor eran muy modestos, el candidato ideal parecía ser m0n0wall, un firewall de muy modestos requerimientos de hardware.

PfSense

Luego de analizarlo un poco, finalmente decidí ir por pfSense, que si bien está basado en m0n0wal, es más flexible ya que permite el agregado de varios paquetes adicionales que le brindan mucha funcionalidad extra, pero mantiene el bajo consumo de recursos de hardware para funcionar. Esa posibilidad de adicionar paquetes de software realmente permite agregar funcionalidad al producto original, y parte la funcionalidad principal que buscaba, el poder filtrar la navegación en mi red, era brindada jutamente por uno de esos paquetes no soportados por m0n0wall.

En cuanto al NAS, en principio pensé en FreeNAS, pero no funcionaba bien en la máquina virtual ya que era muy lento. Nunca logré descubrir el porque, ya que también se supone que funciona con pocos recursos, pero finalmente probé con Nas4Free que es una evolución del primero y funciona muy bien, por lo que fue el elegido.

freenas

freenas (Photo credit: cerami)

Una vez llegado a este punto, solo fue cuestión de probar y configurar un poco, resolviendo algunos problemas menores, como colisiones en la red, que eran debidos a los drivers de las placas de red virtuales. Simplemente cambiando la el driver por otro fue posible solucionarlo.

A estas alturas ya llevo cerca de un mes con pfSense gestionando la conexión a Internet sin mayores problemas que ocasionales picos de carga del pobre Atlhon (totalmente previsible!), pero solo cuando se corren algunas tareas programadas, por lo que el próximo paso será invertir en un buen hardware para ser utilizado como host del KVM.

He vuelto a las andadas… esta vez, virtualización

6 abril, 2013 3 comentarios

Para todos los que les pueda interesar he estado trabajando bastante en implementar algunos servidores virtuales en mi red local con muy buenos resultados utilizando KVM en Linux para instalar un firewall basado en BSD (pfSense) y un server NAS también basado en BSD (Nas4Free). También estoy pensando en instalar Asterix, pero aún no le ha llegado el turno.

Les gustaría que grabe un podcast comentando detalles de todo esto?, aguardo sus respuestas.

2012, adiós y buena suerte… 2013, bienvenido, te estábamos esperando…

31 diciembre, 2012 Deja un comentario

2013

No es mi intención hacer un post largo, ni usar palabras gastadas de tanto repetirlas en estas fechas, sino solo reflexionar un poco por el cambio de año.

El que se va no ha sido un año bueno ni tampoco un año malo, ha sido un año más en el que pasaron cosas buenas y malas, pero por algún motivo hay un sabor algo amargo que me hace sentir que no fue de los mejores, no todo salió como esperaba, ni fue como lo pensé, pero tampoco pasó nada tan malo como para decir que fue un mal año.

No se quienes de mi entorno lo habrán notado, seguramente los más cercanos lo han hecho, pero francamente la he pasado mejor otros años y no tengo una clara explicación de que es lo que “no estuvo bien”, simplemente algo faltó.

Solo fue un año más, con muchas cosas francamente olvidables, pero sin dudas con muchas cosas positivas también, de las que doy gracias por haberlas vivido, pero con un “no se que” que en el balance general me hace preferir terminar el año para darle un cierre.

Por otro lado, el nuevo año se presenta con nuevos desafíos para mi y mi familia, los que no me cabe duda podremos enfrentar como siempre lo hemos hecho, a veces con más ganas que otras y esta vez creo que yo tengo las ganas que se necesitan y soy optimista respecto al nuevo año. Realmente creo que las cosas van a mejorar en lo personal, familiar y laboral.

Como ven esto es algo totalmente centrado en mi mundo, mi familia, mi trabajo. Claro que mis deseos son de paz y felicidad para todos, palabras desgastadas por el uso si las hay!, pero como les decía, esta es una reflexión sobre mi mundo y mi entorno.

Igual, ¡Feliz año para todos!, y que el 2013 nos de un poco más de sabiduría, comprensión, tolerancia, paciencia y optimismo, seguramente con un poco de todo esto, mi 2012 habría sido un poco mejor.

¡Los veo el año que viene!

 

Categorías:actualidad, General Etiquetas: , , ,

2012 in review

30 diciembre, 2012 Deja un comentario

The WordPress.com stats helper monkeys prepared a 2012 annual report for this blog.

Here’s an excerpt:

4,329 films were submitted to the 2012 Cannes Film Festival. This blog had 57,000 views in 2012. If each view were a film, this blog would power 13 Film Festivals

Click here to see the complete report.

Categorías:actualidad

pablot version 4.4

17 diciembre, 2012 1 comentario

El próximo sábado 22 de diciembre (si no se acabó el mundo el viernes 21) voy a liberar la versión 4.4 de pablot. Ya todo está listo,

pablot

pasó las rondas de QA y los bugs que se detectaron ya no son posibles de arreglar sin una reingeniería casi completa, por lo que como en general está bastante bien, así seré lanzado a la nueva versión.

No hay grandes modificaciones visibles respecto a la versión 4.3 del año pasado, excepto algunos cambios “under the hood” que serán notorios probablemente con el tiempo. Pueden llegar a ser cambios importantes, ya veremos, pero eso lo decidirán los usuarios finales.

Para quien no tenga la menor idea de lo que estoy hablando, la realidad es que prefiero hablar de la versión 4.4 en lugar de decir que voy a cumplir 44 años!

Si, ya estoy bastante crecidito respecto a la edad promedio de la gente que anda por acá, pero bueno, todos creceran eventualmente y verán las cosas desde otra óptica. La de la mayor experiencia, que nos permite a los veteranos ver las cosas más tranquilos y serenos; sin tanto fanatismo ni parcialidad.

Tal vez no haya muchos cambios de un año a otro, pero en los últimos 10 y algo de años, si que han habido cambios en mi vida!. Mudanza, casamiento, 2 hijos, 2 cambios de trabajo, cambios de autos e innumerables cambios de tecnologías y dispositivos!!!

Hablando extrictamente de tecnología, pasé de tener todo en una desktop desconectada del mundo, a estar 24 horas online desde varios dispositivos y lugares con mucho o casi todo en “la nube”.

Y eso es bueno?, podríamos preguntarnos, bueno, depende. La verdad que es práctico y fácil, todo a la mano siempre desde cualquier lado y con cualquier dispositivo, pero … eso es bueno?. Y, no se, uno termina estando disponible 24 hs. para todo el mundo, en cualquier lado y en todo momento. Como decía la propaganda de una empresa de telefonia móvil, “todos juntos, todo el tiempo y en todos lados”… no suena medio invasivo?, al menos a mi me suena así, aunque probablemente sea producto de mis años, que hacen que eso ya no me parezca tan atractivo como cuando tenía 10 o 15 años menos.

Resulta que todo esto me parece invasivo ya que es como que “ya no podrás estar solo nunca más”, y la verdad a veces es necesario estar solo, disfrutar un rato de soledad y tranquilidad, y si, ya se, apagá el celu y listo, pero no me digan que no se siente un cachito de culpa por “borrarse temporalmente” del radar de todos los demás?

En fin, como les decía, probablemente este ya medio viejo y esta versión 4.4 ya no pueda modificarse en su comportamiento sin una seria reingeniería que por el momento no esta planificada, ya que si llegué a esta versión madura, creo que el core del producto original que soy no debe ser nada malo, por lo que entonces así se quedará, aunque claro, los cambios seguirán seguramente a lo largo de mis nuevas versiones, mejorando y puliendo lo que sea necesario.

A %d blogueros les gusta esto: