Configuración de red avanzada
Este apartado esta pensado para aquellos usuarios que ya han instalado Ubuntu y una configuración de red básica pero ahora necesitan o quieren mejorar su configuración de red.
Contenido
Configurar conexiones usando WPA
Todavía no es posible conectarse a redes inalámbricas que utilicen un encriptamiento WPA usando sólo el administrador gráfico estándar de Ubuntu, para ello hay distintas formas de conseguirlo de manera genérica:
NetworkManager
Esta es la forma mas sencilla y rápida posiblemente de poder conectarse a distintas redes y poder usar una o varias configuraciones para redes inalámbricas encriptadas.
Para instalar sigue los siguientes pasos desde la terminal:
sudo apt-get update sudo apt-get install network-manager-gnome
O bien lo puedes instalar directamente desde Añadir o quitar programas buscando Network Manager.
Antes de reiniciar debe antes desactivar todas las conexiones de red desde el administrador de red estándar de Ubuntu. O bien editar en modo administrador el fichero /etc/network/interfaces, por ejemplo usando Terminal y ejecutando: sudo gedit /etc/network/interfaces y poner el símbolo almohadilla (#) en las líneas donde no aparezca el interfaz lo.
Una vez reiniciado verás un icono en la area de notificación desde donde podras configurar las redes.
Si en vez de eso te aparece el siguiente mensaje "La miniaplicación NetworkManager no pudo encontrar algunos recursos necesarios.. No se puede continuar." deberás ejecutar el siguiente comando:
sudo gtk-update-icon-cache -f /usr/share/icons/hicolor
Reinicia y el problema tendría que haber desaparecido.
- Página web del proyecto (en inglés)
- Preguntas frecuentes (en inglés)
Utilizando el Terminal
WPA-TKIP
Este es un ejemplo de conexión WPA-TKIP, en Terminal ejecute: sudo gedit /etc/network/interfaces e introduzca modificando según sus datos de acceso personales:
auto rausb0 iface rausb0 inet static address x.x.x.x netmask 255.255.255.0 gateway x.x.x.x wireless_essid tuessid wireless_channel canal wireless_mode Managed pre-up ifconfig rausb0 up pre-up iwpriv rausb0 auth 3 pre-up iwpriv rausb0 enc 3 pre-up iwconfig rausb0 channel canal pre-up iwconfig rausb0 essid tuessid pre-up iwpriv rausb0 wpapsk contraseñawpa pre-up iwconfig rausb0 essid elessidotravez
Tenga en cuenta que es un ejemplo, en este caso rausb0 es el nombre de la conexión habitual por un aparato por el puerto USB, en caso de una tarjeta de red inalámbrica estándar lo habitual es wlan0.
WPA con filtración MAC
De esta manera vamos a ver como configurar de manera manual distintas opciones, no sólo el uso de encriptamiento WPA. Primero hay que instalar mediante Synaptic por ejemplo, los siguientes paquetes:
- ifplugd, monitorea si se produce alguna conexión en la capa física, por ejemplo si se conecta un cable de red o si existe una asociación inalámbrica activa;
- wpagui maneja la asociación inalámbrica con un punto de acceso (accesspoint);
- guessnet herramientas para detectar a que red estamos conectados;
- resolvconf para configurar de los servidores de nombre en la ruta /etc/network/interfaces;
- Ahora procedemos detener el servicio y los dispositivos de red, introduciendo en el Terminal:
ifdown eth0 ifdown wlan0 /etc/init.d/wpasupplicant stop /etc/init.d/ifplugd stop
- Ahora introducimos sudo gedit /etc/default/wpasupplicant y añadimos:
ENABLED=1 OPTIONS="-D wext -i wlan0 -c /etc/wpa_supplicant.conf" /etc/wpa_supplicant.conf ctrl_interface=/var/run/wpa_supplicant ctrl_interface_group=0 eapol_version=1 ap_scan=1 fast_reauth=1 ### Example of basic WPA-PSK secured AP #network={ # ssid="ournet" # psk="w243sd5f324asdf5123sadf54324" #} ### Associate with any open access point ### Scans/ESSID changes can be done with wpa_cli network={ ssid="" key_mgmt=NONE }
- Esta es la configuración por defecto que nos permitirá asociarnos a uno o varios puntos de acceso. Ahora salimos del editor guardando los cambios y ejecutamos:
/etc/init.d/wpasupplicant start iwconfig
- Ejecutamos en Terminal sudo gedit /etc/network/interfaces y añadimos los parámetros para cada red, por ejemplo:
# The loopback network interface auto lo iface lo inet loopback # ifplugd se encarga de activar de manera automática las distintas conexiones a red, en este caso lo desactivamos noauto eth0 eth1 # Se manejan automáticamente la conexión por red local estándar (eth0) e inalámbrica (wlan0): mapping eth0 wlan0 script guessnet-ifupdown map default: outside map timeout: 3 map verbose: true # aquí es ahora donde introducimos los datos de configuración, ip, puerta de enlace, DNS, etc iface home inet static address 192.168.0.29 netmask 255.255.255.240 broadcast 192.168.0.31 gateway 192.168.0.17 dns-search manta.telconet.net dns-nameservers 192.168.0.2 test peer address 192.168.0.17 mac 00:30:48:72:9a:ba iface outside inet dhcp
Este ejemplo hace además que la red eth0 o wlan0 se configuren si el servidor o host 200.93.220.17 con dirección mac 00:30:48:72:9a:ba esta o no disponible. Si es positivo, se tomará una dirección estática, si no se encuentra tratará de conectarse por DHCP (ip dinámica), lo que se suele llamar filtrado por MAC.
NOTA: Para equipos portatiles (laptop), si usan suspend2 para hibernar el ordenador, habrá que ejecutar sudo gedit /etc/hibernate/hibernate.confy añadir: RestartServices ifplugd
Fuente Configurar la red para cualquier lado de RazaMetal |
Tarjetas con chip RT2500
En el mercado existe un chip que usan muchos fabricantes de tarjetas para acceso a redes inalámbricas, concretamente es el RaLink RT2500, se utiliza en muchas tarjetas de conexión PCI y en algunas (pocas) tarjetas de conexión USB. En Ubuntu Dapper en adelante NO es necesario instalar ningún driver o software extra para esta tarjeta, viene incluido de serie en el sistema operativo.
Por ejemplo el fabricante Conceptronic vende con este chip el modelo c54Ri, es España es muy facil de encontrar, cuesta alrededor de los 20€, y funciona perfectamente con el método descrito a continuación (más información sobre el modelo por ejemplo en la página del modelo c54Ri). (el modelo c54ri de conceptronic también se fabrica con el chip rt61, aunque eso no supondrá ningun problema a la hora de hacerla funcionar -> http://www.ubuntu-es.org/index.php?q=node/29467 )
WPA-PSK TKIP
El encriptamiento WAP-PSK ofrece mayor seguridad por sí solo que usar WEP (el cual es practicamente vulnerable, se puede forzar en Ubuntu incluso puedes encontrar programas para ello como aircrack) o versiones mas modestas de encriptamiento WAP. Para ello además utiliza la implementación del Protocolo de Integridad de Clave Temporal (TKIP, Temporal Key Integrity Protocol), es decir cambia claves dinámicamente a medida que el sistema es utilizado. Normalmente ofrece bastante seguridad que aún se puede mejorar utilizando otras medidas o cambiando por ejemplo el encriptamiento TKIP por AES (Advanced Encryption Standard, estándar de cifrado avanzado), no obstante de por sí es bastante seguro para redes domésticas o empresas medianas.
PSK, pre-shared key (literalmente clave precompartida) es un encriptamiento donde se instaura una clave o contraseña en formato ascii (recomendado, por ejemplo: estaes1contraseña) o en hexadecimal (por ejemplo: 001083123ABC). Esto debe de hacerse desde la pàgina web de configuración del router (en mi caso accedo desde Firefox a la dirección 192.168.2.1), cuidado deben de respetarse el uso de mayúsculas o minúsculas (CAsa no es la misma clave que caSA).
Instalación en cuatro pasos:
- Comprobamos si realmente tenemos una tarjeta con este chip, para ello se puede ver en el menú Administración - Administración de dispositivos de manera gráfica y sencilla o instalando el programa sysinfo disponible en repositorios oficiales (más información : http://sysinfo.r8.org/)
También se puede hacer desde Terminal:
$ lspci | grep RT2.00
Te saldrá algo como:
00:0b.0 Network controller: RaLink RT2500 802.11g Cardbus/mini-PCI (rev 01)
Si tienes un dispositivo USB que sospechas pueda usar el mismo chip prueba con:
$ lsusb | grep RT2.00
- Recopila la información necesaria que esta configurada o vas a configurar en el router, esto es necesario para cualquier sistema operativo:
- Nombre ESSID, es decir el nombre de la red inalámbrica (cuidado con mayúsculas y minúsculas) y canal de radio que utiliza (para evitar en lo posible interferencias con otras redes).
- Clave de acceso, y tipo de encriptación TKIP o AES (esta última no la he probado).
- Acceso por dirección IP de cada (o el único) ordenador, si es de manera dinámica (DHCP) o estática.
- Ahora modificar el archivo de configuración de los dispositivos de red, se encuentra en /etc/interfaces , puedes hacerlo desde el Terminal por ejemplo tecleando:
$ sudo gedit /etc/network/interfaces
Ahora elimina todo su contenido original (puedes hacer una copia de seguridad si lo deseas) y si usas DHCP copia y pega:
# Adaptador Wireless, por DHCP auto ra0 iface ra0 inet dhcp pre-up iwconfig ra0 essid NOMBREDELESSID pre-up iwconfig ra0 mode Managed pre-up iwpriv ra0 set Channel=10 pre-up iwpriv ra0 set AuthMode=WPAPSK pre-up iwpriv ra0 set EncrypType=TKIP pre-up iwpriv ra0 set WPAPSK=CONTRASEÑA pre-up iwpriv ra0 set TxRate=0
Si vamos a acceder por IP reservada o estática:
# Adaptador Wireless, por IP estática auto ra0 iface ra0 inet static address 192.168.1.2 netmask 255.255.255.0 gateway 192.168.1.1 pre-up iwconfig ra0 essid NOMBREDELESSID pre-up iwconfig ra0 mode Managed pre-up iwpriv ra0 set Channel=10 pre-up iwpriv ra0 set AuthMode=WPAPSK pre-up iwpriv ra0 set EncrypType=TKIP pre-up iwpriv ra0 set WPAPSK=CONTRASEÑA pre-up iwpriv ra0 set TxRate=0
Sustituimos por los valores correctos las variables NOMBREDELESSID (con el nombre de nuestra red inalámbrica), 10 (el valor de nuestro canal de radio elegido) y CONTRASEÑA (la contraseña elegida).
- Ya estaría instalada y funcionando (lo podeís comprobar desde Firefox), pero antes queda desactivar y volver activar la red ya configurada desde por ejemplo el menú Sistema - Administración - Red o bien desde Terminal escribiendo:
$sudo ifdown ra0 $sudo ifup ra0
Funciona correctamente (comprobado) en versiones de Ubuntu Breezy, Dapper y Edgy.
Fuente WifiDocs/Driver/RalinkRT2500 del Wiki Ubuntu oficial (en inglés) |
Tarjetas con chip Realtek RTL8185L
Ubuntu Dapper incorpora de forma nativa soporte para las tarjetas con chip Realtek RTL8185L como, por ejemplo, la tarjeta del fabricante SMC modelo SMCWPCI-G. El problema es que este soporte nativo sólo permite el uso de WEP. Para habilitar el funcionamiento con WPA, hay que deshabilitar el soporte nativo de la tarjeta incorporado en Dapper e instalar el driver de Realtek que se puede descargar desde la dirección http://www.realtek.com.tw. El fichero que se descarga en formato tar incluye un archivo readme con las instrucciones de instalación. A continuación vamos a describir un ejemplo con los pasos a realizar para utilizar WPA-PSK TKIP.
WPA-PSK TKIP
En primer lugar hay que comprobar que realmente tenemos una tarjeta con el chip Realtek RTL8185L. Esto se puede ver en el menú Administración – Administración de dispositivos de manera gráfica y sencilla. Si Ubuntu Dapper ha reconocido correctamente la tarjeta aparecerá bajo el dispositivo 0x8185 el WLAN interface. Desde el terminal se puede comprobar que los drivers están correctamente cargados con el siguiente comando:
$ lsmod
En la lista deben aparecer los drivers r818x y ieee80211_rtl. Para deshabilitar el soporte incluido en Ubuntu Dapper para el chip RTL8185L hay que añadir en el fichero /etc/modprobe.d/blacklist las referencias a los drivers r818x y ieee80211_rtl. Una vez guardado el fichero con estas modificaciones hay que rearrancar el equipo. De esta manera dejaremos el sistema preparado para instalar sin conflictos el driver proporcionado por Realtek.
Por otra parte, puesto que el mecanismo proporcionado para funcionar con WPA es a través de wpa_supplicant con una versión posterior a la que incorpora Ubuntu Dapper, hay que desinstalar la versión de wpa_supplicant que pueda haber instalada, por ejemplo a través de Synaptic.
Para instalar el driver hay que seguir básicamente las instrucciones indicadas en el readme. En primer lugar hay que generar los drivers con el comando:
$ sudo ./makedrv
A continuación hay que cargar los drivers con el comando:
$ sudo ./wlan0up
Una vez cargados los drivers, podemos comprobar que la carga ha sido correcta volviendo al menú Administración – Administración de dispositivos y vemos que vuelve a aparecer el WLAN interface bajo el dispositivo 0x8185. Adicionalmente con el comando lsmod podemos comprobar si se han cargado los drivers r8180, ieee80211_rtl, ieee80211_crypt_ccmp_rtl, ieee80211_crypt_tkip_rtl, ieee80211_crypt_wep_rtl y ieee80211_crypt_rtl.
Si todo funciona correctamente se deben poder ejecutar los mandatos típicos de wireless, tales como iwconfig y iwlist para el interface wlan0. Por tanto, podemos proceder a especificar el essid al cual nos vamos a conectar utilizando el siguiente comando:
$ sudo iwconfig wlan0 essid tuessid
Para poder utilizar el mecanismo WPA-PSK hay que seguir las instrucciones del readme de Realtek y para evitar errores con el comando make hay que asegurarse de tener instalado, por ejemplo a través de Synaptic, el paquete libssl-dev. Una vez finalizada la ejecución del comando make ya podemos ejecutar el wpa_supplicant suministrado con el driver de Realtek de la forma siguiente:
$ sudo ./wpa_supplicant –D ipw – c wpa1.conf –i wlan0
El fichero wpa1.conf contiene la información necesaria para poder realizar la conexión mediante WPA. Un ejemplo del contenido de este fichero es el siguiente:
ctrl_interface=/var/run/wpa_supplicant ap_scan=1 network={ ssid=”tuessid” scan_ssid=1 proto=WPA key_mgmt=WPA-PSK pairwise=CCMP TKIP group=CCMP TKIP WEP104 WEP40 psk=”tuclavesecreta” priority=2 }
Si se ejecuta el comando wpa_supplicant desde el terminal, hay que señalar que dicha sesión de terminal no será utilizable mientras no detengamos la ejecución del wpa_supplicant.
Por último, si queremos obtener una dirección IP por DHCP, desde otra sesión de terminal hay que ejecutar el siguiente comando:
$ sudo ./wlan0dhcp
Uno de los mensajes que aparece al ejecutar este comando nos indica la dirección IP asignada. A partir de ahí podemos comprobar el funcionamiento correcto desde Firefox.