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áin los puntos de acceso de los modem ADSL de Prodigy Infinitum.
Preparativos.
El primer paso consiste en cambiarse al usuario root:
su -lósudo cualquier mandato utilizado
Ejemplos:
sudo ifup lo sudo iwconfig wlan0 sudo iwlist wlan0 scan
Debido a que el servicio NetworkManager hará conflicto con los procedimientos, se debe detener este servicio:
service NetworkMananger stop
Muchos componentes del sistema requieren que esté activa la interfaz de retrono del sistema (loopback, por lo que es importante iniciar ésta:
ifup lo
Para poder comenzar a utilizar la interfaz Wifi, solo basta ejecutar el mandato iwconfig sobre dicha interfaz:
iwconfig eth1 # En mis caso es eth1 en otros puede ser Wlan0
Es buena idea realizar un escaneado de las redes Wifi disponibles para asegurarse se puede acceder a la red Wifi deseada, y para determinarl el protocolo a utilizar:
iwlist eth1 scan
Autenticando en el punto de acceso.
A través de redes WEP.
Para redes WEP, que se caracterizan por tener una seguridad muy pobre, es muy simple. Solo basta utilizar dos mandatos. El primero define el nombre del punto de acceso a utilizar:
iwconfig eth1 essid nombre-punto-de-acceso
El segundo mandato se utiliza para definir la clave de acceso a utilizar, sea de 64 o 128 bit.
iwconfig eth1 key clave-de-acceso
Si se utiliza una clave WEP tipo ASCII, se define de la siguiente manera:
iwconfig eth1 key s:clave-de-acceso
A través de redes WPA.
Se procede a determinar el nombre de la red Wifi a utilizar y la clave de acceso. El mandato wpa_passphrase se utilizará para generar un fichero de configuración a utilizar posteriormente:
wpa_passphrase nombre-punto-de-acceso clave-de-acceso > /root/wpa.conf
Si se realiza el procedimiento desde Ubuntu Linux, el mandato anterior fallará si se utiliza sudo debido a limitaciones de seguridad de sudo, y deberá utilizarse entonces el siguiente:
sudo bash -c "wpa_passphrase nombre-punto-de-acceso clave-de-acceso > /root/wpa.conf"
Lo anterior generará el fichero wpa.conf dentro del directorio de inicio del usuario root.
Para iniciar la autenticación con la red Wifi, se utiliza el mandato 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 fichero de configuración creado en el paso anterior.
wpa_supplicant -B -Dwext -ieth1 -c/root/wpa.conf
Asigando parámetros de red a la interfaz.
Utilizando dhclient.
Lo más común es utiliziar el mandato dhclient para dejar que el servidor DHCP del punto de acceso o la LAN se encargue de asignar los parámetros 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
Para obtener una nueva dirección IP, se utiliza el mandato dhclient de la siguiente manera:
dhclient eth1
Asignando manualmente los parámetros de red.
Si se concocen 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.1.50, con máscara de subred 255.255.255.0 y puerta de enlace 192.168.1.254:
ifconfig eth1 192.168.1.50 netmask 255.255.255.0 route add -net 0.0.0.0 netmask 0.0.0.0 gw 192.168.1.254 eth1
Para definir el servidor DNS, como el usuario root, se edita el fichero /etc/resolv.conf y se define la dirección IP del servidor DNS a utilizar. En el siguiente ejemplo, se define 192.168.1.254 como servidor DNS:
echo "nameserver 192.168.1.254" > /etc/resolv.conf
Si se realiza el procedimiento desde Ubuntu Linux, el mandato anterior fallará si se utiliza sudo debido a limitaciones de seguridad de sudo, y deberá utilizarse entonces el siguiente:
sudo bash -c "echo 'nameserver 192.168.1.254' > /etc/resolv.conf"
Fuente: alcancelibre.org