Configuración de red avanzada

De Guía Ubuntu
Saltar a: navegación, buscar

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.

Configurar conexiones usando WPA

Todavía no es posible conectarse a redes inalámbricas que utilicen un cifrado 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 más 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.

Enlaces externos


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 filtrado MAC

De esta manera vamos a ver como configurar de manera manual distintas opciones, no sólo el uso de cifrado WPA. Primero hay que instalar mediante Synaptic por ejemplo, los siguientes paquetes:

  1. 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;
  2. wpagui maneja la asociación inalámbrica con un punto de acceso (accesspoint);
  3. guessnet herramientas para detectar a que red estamos conectados;
  4. 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.conf y añadir: RestartServices ifplugd

Nota clasica.png 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.

Nota clasica.png 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.

Enlaces externos