miércoles, 23 de julio de 2014

Mejorando las capacidades de nuestro router Wifi con Linux

Si bien muchos ISP ofrecen el servicio de Internet inalámbrico a través de Wifi, somos muchos los que preferimos tener nuestro propio router para tener Internet inalámbrico en nuestros espacios, tener un mayor control de la red, para mayor seguridad o simplemente por no desechar un dispositivo con el que ya contamos.

Los modelos que se venden en el mercado para la línea de hogares cuentas con las características necesarias para prestar un servicio completo y seguro con funciones de firewall, filtrado de contenido, redirección de puertos, entre otras; sin embargo, existen algunos usuarios como yo que nos gusta ir un poco más allá con las cosas y ampliarles su capacidad :)

Para "liberar" nuestro router existen algunos proyectos como DD-WRT u OpenWRT, cuyo objetivo es el desarrollo y mantenimiento de firmware para routers inalámbricos basados en Linux, que cuentan con una amplia variedad de funciones y un alto grado de personalización de la configuración gracias a que son proyectos libres que se distribuyen bajo la misma licencia GPL de Linux. La sigla WRT viene del famoso router Linksys WRTG54G del cual se basan. puesto que su firmware al ser basado en Linux tuvo que ser liberado por el fabricante.


¿Para qué liberar nuestro router inalámbrico?

Aunque ya es claro que los modelos de routers inalambricos que encontramos en el mercado cuentan con las funciones necesarias para tener una red inalámbrica funcional y segura, que cuentan con unos asistentes de configuración muy amigables, y que cubren la mayoría de las necesidades; tener un router "libreado" nos permite:

  1. Ampliar las capacidades de nuestro dispositivo, incluso habilitando  funciones que no vienen por defecto de fabrica.
  2. Configuración y mantenimiento más avanzado del dispositivo, gracias a las bondades que nos ofrece GNU / Linux.
  3. Posibilidad de crear scripts y programas en lenguajes de programación como python o pearl por ejemplo, para facilitar y automatizar tareas de administración y seguridad.
  4. Posibilidad de instalar programas adicionales gracias a los paquetes que ofrecen los propios proyectos.
  5. Tener un control total de nuestro sistema y realizar las tareas que se pueden realizar en un sistema Linux ya que se cuenta con una distribución totalmente funcional.
  6. Tener las mismas ventajas que se tiene con un sistema Linux.

¿Cómo liberar nuestro router inalámbrico?

La tarea de librerar un router no es compleja, solo basta con consultar primero en la página del proyecto (DD-WRT o OpenWRT por ejemplo) si soporta nuestra marca y modelo de router, descargar la versión del firmware que nos recomienden, y actualizar desde la página de administración del router el firmware que viene en un archivo .bin; en caso de tener problemas es posible revertir los cambios ya que estas páginas suelen ofrecer una copia del firmware original del dispositivo.

Es importante especificar en las búsquedas además de la marca y modelo del router la versión del mismo, ya que muchos modelos cuentan con diferentes versiones que varían en algunas características. Esta información la podemos visualizar en los sticker que tiene el router o en la propia página de administración del aparato.


Liberando el router TP-LINK TL-WR841N con OpenWRT

En mi casa cuento un router TP-LINK TL-WR841N versión 8, cuyas prestaciones no son nada despreciables para una red hogareña y el cual actualmente funciona con OpenWRT. A continuación explicaré como instalar OpenWRT en este modelo de router, la tarea en otras marcas y modelos no varia mucho salvo que las páginas de administración de cada router varían en función del fabricante.

¿Por qué OpenWRT? Porque provee una amplia variedad de paquetes para ampliar sus capacidades, una interfaz de usuario amigable y finalmente por un gusto meramente personal.

Paso 1: Descargar el firmware

A través de esta lista podemos comprobar la compatibilidad de OpenWRT con nuestro dispositivo, que para el caso del TL-WR841N Versión 8 está soportado por el proyecto. 

Una vez sepamos que nuestro dispositivo está soportado usamos el buscador de la página y colocando el modelo del router como palabra clave debemos llegar a una página similar a está dónde nos ofrecen una descripción técnico del dispositivo que tenemos y la posibilidad de descargar el firmware adecuada para el dispositivo que tenemos:


Descargando OpenWRT
Desde allí procedemos a descargar el firmware que viene en un archivo binario con extensión .bin, que para el caso del TL-WR841N es la 12.09.

Paso 2: Instalando el firmware

Antes que nada recomiendo que al hacer esta operación el computador desde el que lo estemos haciendo este conectado por cable al router, ya que hay una mayor fiabilidad en la transmisión de la información y en mi caso la red inalámbrica una vez cambie el firmware estaba desactivada.

Nos vamos a la página de administración del router, que se puede acceder a través de la URL http://tplinklogin.net o a través de la dirección http://192.168.0.1 sino hemos cambiado la configuración IP del dispositivo, en caso de haberla cambiado solo basta con reemplazar la anterior IP con la de la puerta de enlace. Una vez accedemos a la página de administración nos pide el usuario y contraseña de administración del router, que  por defecto es admin - admin salvo que lo hayamos cambiado (cosa que debería ser así por cuestiones de seguridad). 

Desde esta página nos vamos al menú izquierdo a la opción System Tools, luego a Firmware Upgrade, desde esta página hacemos clic en el botón Seleccionar archivo y seleccionamos el archivo .bin que descargamos en el paso anterior y por último damos clic en el botón Upgrade:

Página de administración del router TP-LINK TL-WR841N
Página de administración del router TP-LINK TL-WR841N  

Así comenzará el router actualizar su software por OpenWRT, una vez se concluya la operación el dispositivo se reiniciará:

Actualización del firmware del router TP-LINK TL-WR841N
Actualización del firmware del router TP-LINK TL-WR841N

Finalmente una vez se actualice el software del router se perderá la conexión ya que además de haber cambiado el software también cambió la configuración IP del dispositivo.

Paso 3: Configuración básica del router

El paso a seguir es acceder a la página de administración del router que ahora se accede a través de la URL http://192.168.1.1, allí nos pedirá usuario y contraseña:

Página de administración de OpenWRT
Página de administración de OpenWRT

Por defecto el usuario es root y la clave está en blanco, una vez ingresados tendremos acceso a toda la configuración del dispositivo para administras las opciones de red, de seguridad y del propio dispositivo. El paso a seguir es configurar las interfaces de red para lo cual nos vamos a la pestaña Network dónde nos aparecerán dos interfaces WAN y LAN:

Interfaces de red en OpenWRT
Interfaces de red en OpenWRT

Para editar la configuración de una interfaz solo basta con hacer clic en el botón Edit que aparece al frente de cada interfaz y desde allí ingresar la configuración IP como la dirección IP del dispositivo, mascara de subred, boradcast, entre otras.

Desde la opción Wifi que se encuentra en la parte superior podemos revisar que la red inalámbrica esté habilitada y en caso de que no (porque aparece en color rojo) simplemente la habilitamos haciendo clic en la opción Enable:

Red Wifi en OpenWRT
Red Wifi en OpenWRT

Para configurar la red inlámbrica hacemos clic en el botón Edit y desde allí podemos establecer su nombre (ESSID), clave, tipo de seguridad y demás parámetros:

Confguración de red Wifi en OpenWRT
Confguración de red Wifi en OpenWRT

Confguración de red Wifi en OpenWRT
Confguración de red Wifi en OpenWRT

Para guardar todos los cambios se debe hacer clic en el botón Save & Apply. Finalmente un cambio importante es establecer una contraseña para acceder a la administración del router ya que como se mencionó al principio esta por defecto viene en blanco. Para hacerlo debemos ir a la opción System y luego Administration, y allí hacemos el cambio desde la opción Router Password:

Configurando OpenWRT
Configurando OpenWRT

Para conocer las disitintas opciones que ofrece OpenWRT y como se pueden confirgurar podemos recurrir a la documentación oficial en inglés o a la documentación oficial en español. Si en algún momento falló la instalación o queremos regersar al firmware anterior solo basta con seguir estas instrucciones.


Conclusiones

Estas distribuciones de Linux son sin duda una excelente opción para ampliar de las capacidades de nuestros router inalámbricos o simplemente para aprender a administrar sistemas basados en Linux. Proyectos como OpenWRT o DD-WRT proveen un kenel de linux con todos los comandos y utilidades básicos para trabajar en entornos de red y para crear scripts que permiten automatizar tareas de administración.

De igual forma el grado de seguridad puede aumentar considerablemente al implementar estas distribuciones ya que proveen herramientas como iptables (el firewall de linux), VPN, y demás utilidades que permiten asegurar más las comunicaciones para proteger nuestra red y datos.

Gracias a que están basados y distribuidos como software libre, estos proyectos proveen una muy buena documentación que son creadas y mantenidas por comunidades entusiastas de compartir información, lo cual permite a principiantes instruirse de la mejor manera en su uso y mantenimiento.