Si algunos de nuestros foros, manuales, ALDOS, paquetería o proyectos te han resultado de ayuda, apreciaremos mucho nos apoyes con un donativo.

Conexión a redes inalámbricas (Wifi) desde terminal.

Autor: Joel Barrios Dueñas
Correo electrónico: darkshram en gmail punto com
Sitio de Red: http://www.alcancelibre.org/
Jabber ID: darkshram@jabber.org

Creative Commons Reconocimiento-NoComercial-CompartirIgual 2.1

© 1999-2014 Joel Barrios Dueñas. Usted es libre de copiar, distribuir y comunicar públicamente la obra y hacer obras derivadas bajo las condiciones siguientes: a) Debe reconocer y citar al autor original. b) No puede utilizar esta obra para fines comerciales (incluyendo su publicación, a través de cualquier medio, por entidades con fines de lucro). c) Si altera o transforma esta obra o genera una obra derivada, sólo puede distribuir la obra generada bajo una licencia idéntica a ésta. Al reutilizar o distribuir la obra, tiene que dejar bien claro los términos de la licencia de esta obra. Alguna de estas condiciones puede no aplicarse si se obtiene el permiso del titular de los derechos de autor. Los derechos derivados de usos legítimos u otras limitaciones no se ven afectados por lo anterior. Licencia completa en castellano. La información contenida en este documento y los derivados de éste se proporcionan tal cual son y los autores no asumirán responsabilidad alguna si el usuario o lector hace mal uso de éstos. Esta licencia deberá aparecer como primer texto del documento distribuido

Introducción.

Configurar y conectarse a una red Wifi desde la interfaz gráfica es un procedimiento relativamente trivial, dejando que todos los procedimientos los realicen NetworkManager o Connman. Sin embargo ha circunstancias en las cuales puede ser necesario conectarse a una red Wifi desde una terminal. A continuación describiré los procedimientos para conectarse a los dos tipos de redes Wifi más utilizados, WEP y WPA, con configuraciones básicas utilizadas en dispositivos como serían los puntos de acceso de los modem ADSL de Prodigy Infinitum.

¿Que es WPA? ¿Por qué debería usarlo en lugar de WEP?

WPA (Wi-Fi Protected Access) y WPA2 es una clase de sistemas para el aseguramiento de redes inalámbricas. WPA fue creado en respuesta a las serias debilidades de otros protocolos como WEP (Wired Equivalent Privacy). Implementa la mayoría de lo que conforma el estándar IEEE 802.11i y fue diseñado para funcionar con todas los dispositivos para redes inalámbricas, excepto los puntos de acceso de primera generación. WPA2 implementa todo el estándar IEEE 802.11i, pero no funciona con muchos dispositivos viejos.

WPA fue creado por el grupo industrial y comercial Alianza Wi-Fi, dueños de la marca registrada Wi-Fi y certificadores de los dispositivos que ostenten dicho nombre.

Los datos utilizan el algoritmo RC4 con una clave de 128 bits y un vector de inicialización de 48 bits. Una de las mejoras más sobresalientes sobre su predecesor, WEP, es TKIP (Temporal Key Integrity Protocol o Protocolo de integridad de clave temporal), el cual consiste en el cambio dinámico mientras se utiliza el sistema. Cuando se combina con Vectores de Inicialización mayores, hace considerablemente más difícil realizar ataques para la obtención de llaves, como ocurre con WEP.

Además de proporcionar autenticación y ciframiento, WPA proporciona mejor integridad de la carga útil. La verificación de redundancia cíclica (CRC o Cyclic Redundancy Check) utilizada en WEP es insegura porque permite alterar la carga útil y actualizar el mensaje de verificación de redundancia cíclica sin necesidad de conocer la clave WEP. En cambio WPA utiliza un Código de Integridad de Mensaje (MIC o Message Integrity Code) que es en realidad un algoritmo denominado «Michael», que fue el más fuerte que se pudo utilizar con dispositivos antiguos para redes inalámbricas a fin de no dejar obsoletos a éstos. El Código de Integridad de Mensaje de WPA incluye un un mecanismo que contrarresta los intentos de ataque para vulnerar TKIP y bloques temporales.

En resumen, WPA hace más difícil vulnerar las redes inalámbricas al incrementar los tamaños de las claves y Vectores de Inicialización, reduciendo el número de paquetes enviados con claves relacionadas y añadiendo un sistema de verificación de mensajes.

Además de poder utilizar una clave compartida (PSK o Pre-Shared Key), lo cual suple la complejidad de implementación de un servidor de autenticación 802.1X en hogares y oficinas pequeñas, WPA puede utilizar Protocolos Extensibles de Autenticación (EAP o (Extensible Authentication Protocol), como los siguientes:

  • EAP-TLS
  • EAP-TTLS/MSCHAPv2
  • PEAPv0/EAP-MSCHAPv2
  • PEAPv1/EAP-GTC
  • EAP-SIM
  • EAP-LEAP

Entre los diversos servidores que pueden utilizarse para este tipo de implementaciones, está FreeRADIUS. Alcance Libre cuenta con un modesto documento para la configuración de esta implementación.

Equipamiento lógico necesario.

Instalación a través de yum.

Se requieren los paquetes wireless-tools y wpa_supplicant. Para instalar o actualizar el equipamiento lógico necesario en CentOS, Fedora o Red Hat™ Enterprise Linux y versiones posteriores de éstos, sólo se necesita ejecutar como root lo siguiente:

yum -y install wireless-tools wpa_supplicant

Si utiliza openSUSE o SUSE Linux Enterprise, sólo se necesita ejecutar lo siguiente para instalar o actualizar el equipamiento lógico necesario, en caso de que éste estuviese ausente:

yast -i wireless-tools wpa_supplicant

Si utiliza Debian o Ubuntu y versiones posteriores, sólo se necesita ejecutar lo siguiente para instalar o actualizar el equipamiento lógico necesario, en caso de que éste estuviese ausente:

sudo apt-get install wireless-tools wpa_supplicant

Preparativos.

En sistemas operativos basados sobre CentOS, Fedora, Red Hat Enterprise Linux, openSUSE y SUSE Linux Enterprise, el primer paso consiste en cambiarse al usuario root:

su -l

Utilice sudo para todos los procedimientos en sistemas operativos basados sobre Ubuntu. Ejemplos:

sudo ifup lo
sudo iwconfig wlan0
sudo iwlist wlan0 scan

Debido a que seguramente el servicio NetworkManager hará conflicto con los procedimientos, se debe detener éste:

service NetworkMananger stop

Muchos componentes del sistema requieren que esté activa la interfaz de retorno del sistema (loopback), por lo que es importante iniciar ésta:

ifup lo

Ejecute iwconfig con el nombre de la interfaz como argumento para comenzar a utilizar la interfaz Wifi. Ejemplo:

iwconfig wlan0

Es buena idea realizar un escaneado de las redes Wifi disponibles para asegurarse se puede acceder a la red Wifi deseada y para determinar el protocolo a utilizar:

iwlist wlan0 scan

Autenticando en el punto de acceso.

A través de redes WEP.

Para redes inalámbricas con autenticación a través de cifrado WEP, que se caracterizan por tener una seguridad muy pobre, el procedimiento es simple. Ejecute lo siguiente para definir el nombre del punto de acceso a utilizar:

iwconfig wlan0 essid punto-de-acceso

Ejecute lo siguiente para definir la contraseña a utilizar —puede ser de 64 o 128 bits.

iwconfig wlan0 key contraseña

Si se utiliza una clave WEP tipo ASCII, se define de la siguiente manera:

iwconfig wlan0 key s:contraseña

A través de redes WPA.

Se procede a determinar el nombre de la red Wifi a utilizar y la contraseña. Ejecute wpa_passphrase con el nombre del punto de acceso y la contraseña cambiando la salida estándar para generar al archivo /root/wpa.conf:

wpa_passphrase punto-de-acceso contraseña > /root/wpa.conf

Si se realiza el procedimiento desde Ubuntu, lo anterior fallará debido a limitaciones de seguridad de sudo. En su lugar ejecute lo siguiente:

sudo bash -c "wpa_passphrase punto-de-acceso contraseña > /root/wpa.conf"

Ejecute wpa_supplicant con las opciones -B, para enviar el procesos a segundo plano -D, para especificar el controlador a utilizar y -c para especificar el archivo de configuración creado en el paso anterior e iniciar la autenticación hacia la red Wifi.

wpa_supplicant -B -Dwext -iwlan0 -c/root/wpa.conf

Configuración de valores de la interfaz de red.

Utilizando dhclient.

Lo más común es utilizar dhclient para dejar que el servidor DHCP del punto de acceso o la LAN se encargue de asignar los valores de red para la interfaz. Es buena idea indicar a dhclient que libere el préstamo que estuviera asignado en el servidor DHCP:

dhclient -r

Ejecute dhclient con el nombre de la interfaz WiFi como argumento para obtener una nueva dirección IP. Ejemplo:

dhclient wlan0

Asignación manual de los valores de la interfaz de red.

Si se conocen los datos para la configuración de red, también es posible asignarlos manualmente. En el siguiente ejemplo, se asigna a la interfaz wlan0 la dirección IP 192.168.70.50, con máscara de subred 255.255.255.128 (25 bit) y puerta de enlace 192.168.70.1:

ip addr add 192.168.70.50/25 dev wlan0

ip route add default via 192.168.70.1 dev wlan0

Edite el archivo /etc/resolv.conf y añada o modifique nameserver con la dirección IP del servidor DNS a utilizar como argumento. En el siguiente ejemplo se define 192.168.70.1 como servidor DNS:

echo "nameserver 192.168.70.1" > /etc/resolv.conf

Si se realiza el procedimiento desde Ubuntu, lo anterior fallará debido a limitaciones de seguridad de sudo. En su lugar ejecute lo siguiente:

sudo bash -c "echo 'nameserver 192.168.70.1' > /etc/resolv.conf"

Asignación permanente de valores de de la interfaz de red en CentOS, Fedora y Red Hat Enterprise Linux.

Solo es necesario crear el archivo de interfaz, dentro de /etc/sysconfig/network-scripts/ siguiendo el siguiente formato:

ifcfg-Auto_punto-de-acceso

Como ejemplo, si se desea conectar el sistema a un punto de acceso denominado alcance2, se debe crear el archivo /etc/sysconfig/network-scripts/ifcfg-Auto_alcance2:

vim /etc/sysconfig/network-scripts/ifcfg-Auto_alcance2

Si se va a conectar a través de DHCP y utilizar cifrado WEP, poner el siguiente contenido:

NAME="Auto alcance2"
ONBOOT=yes
TYPE=Wireless
BOOTPROTO=dhcp
ESSID=alcance2
MODE=Managed
SECURITY_MODE=open
DEFAULTKEY=1
PEERDNS=yes
PEERROUTES=yes
DHCP_CLIENT_ID=nombre-equipo
DHCP_HOSTNAME=nombre-equipo

Si se va a conectar a través de DHCP y utilizar cifrado WPA, poner el siguiente contenido:

NAME="Auto alcance2"
ONBOOT=yes
TYPE=Wireless
BOOTPROTO=dhcp
ESSID=alcance2
MODE=Managed
KEY_MGMT=WPA-PSK
PEERDNS=yes
PEERROUTES=yes
DHCP_CLIENT_ID=nombre-equipo
DHCP_HOSTNAME=nombre-equipo

Para la contraseña del punto de acceso, es necesario crear el archivo /etc/sysconfig/network-scripts/keys-Auto_alcance2:

vim /etc/sysconfig/network-scripts/keys-Auto_alcance2

Si se va a conectar por WEP, poner el siguiente contenido:

KEY_PASSPHRASE1=contraseña

Si se va a conectar por WPA, poner el siguiente contenido:

WPA_PSK=clave-de-acceso

Ejecute lo siguiente para iniciar la interfaz:

ip link set wlan0 up

Ejecute lo siguiente sólo si necesita detener la interfaz.

ip link set wlan0 down

Bibliografía.

Si algunos de nuestros foros, manuales, ALDOS, paquetería o proyectos te han resultado de ayuda, apreciaremos mucho nos apoyes con un donativo.

Última Edición: 29/05/2014, 12:28|Hits: 90,770 Ver la versión para imprimir