Cómo conectarse a una red wifi usando el terminal

¿No disponés de un servidor gráfico y precisás conectarte a tu red inalámbrica? ¿Sos un fan del terminal y querés aprender cómo depender cada vez menos de toda interfaz gráfica? ¿Tu máquina tiene pocos recursos como para correr Network Manager o similar? ¿Tenés ganas de aprender algo nuevo? Bueno, conectarse a una red inalámbrica usando el terminal es bien fácil. Veamos cómo hacerlo… 

Los pasos a seguir

Usaremos 4 herramientas:

  • ifconfig: para habilitar el dispositivo inalámbrico (wireless).
  • iwlist: para listar todos los puntos de acceso detectados.
  • iwconfig: para configurar la conexión inalámbrica.
  • dhclient: para asignarle a nuestra compu una dirección IP a través de DHCP.

El primer comando que vamos a utilizar es ifconfig. Con este comando vamos a habilitar el dispositivo inalámbrico (o sea, la tarjeta wireless). Dependiendo del tipo de dispositivo que utilices, su nombre puede variar (generalmente es wlan0 o ra0). En caso de que sea wlan0, abrí un terminal y escribí:

sudo ifconfig wlan0 up

En caso de que todo vaya bien no debería salir ningún mensaje de error.

El siguiente paso consiste en buscar la red inalámbrica a la que queremos conectarnos:

iwlist wlan0 scan

Deberías ver un listado de todas las redes disponibles. Vamos a suponer que la red a la que queremos conectarnos es la siguiente:

Cell 01 - Address: 00:21:43:4E:9B:F0
ESSID:"Red Bar Falucho"
Mode:Master
Channel:5
Frequency:2.432 GHz (Channel 5)
Quality=100/100? Signal level:-45 dBm? Noise level=-95 dBm
Encryption key:on
IE: WPA Version 1
Group Cipher : TKIP
Pairwise Ciphers (1) : TKIP
Authentication Suites (1) : PSK
IE: IEEE 802.11i/WPA2 Version 1
Group Cipher : TKIP
Pairwise Ciphers (1) : CCMP
Authentication Suites (1) : PSK
Bit Rates:1 Mb/s; 2 Mb/s; 5.5 Mb/s; 11 Mb/s; 22 Mb/s
6 Mb/s; 9 Mb/s; 12 Mb/s; 18 Mb/s; 24 Mb/s
36 Mb/s; 48 Mb/s; 54 Mb/s
Extra:tsf=000002f1d9be01b7

De los datos mostrados, lo que nos interesa es saber el ESSID. Por otra parte, al usar encriptación WPA2, necesitaremos una contraseña para conectarnos.

Lo que sigue es configurar nuestra conexión:

sudo iwconfig wlan0 essid ESSID key CONTRASEÑA

Donde ESSID es el essid de la red (no te olvides de ingresarla entre comillas, en caso de que el nombre  incluya espacios) a la que queremos conectarnos y CONTRASEÑA la contraseña que se precisa para poder conectarnos a ese punto de acceso.

Nota: iwconfig maneja contraseñas en formato hexadecimal. En caso de que quieras ingresar una contraseña ascii, utilizá el prefijo “s:”.

sudo iwconfig wlan0 essid ESSID key s:CONTRASEÑA

Una vez que ya está lista la configuración del dispositivo, es hora de obtener nuestro IP:

sudo dhclient wlan0

En caso de que no se muestre ningún mensaje de error, se supone que todo fue bien. 🙂

Cómo hacer de esto un script

Escribir todo esto cada vez que quieras conectarte puede resultar bastante tedioso. En vez de ello, es mejor convertir todos estos pasos en un lindo script:

#! /bin/bash
ifconfig wlan0 up
iwconfig wlan0 essid ESSID key CONTRASEÑA
dhclient wlan0

Reemplazá ESSID por el essid de la red y CONTRASEÑA por la contraseña requerida para conectarse. Guardá este archivo con el nombre wireless_up.sh y otorgale permisos de ejecución:

chmod u+x wireless_up.sh

Para que sea un script global (que podés ejecutar desde cualquier lado) colocalo en /usr/local/bin. Finalmente, ejecutá el comando wireless_up.sh desde donde te plazca y dejá que el script haga su magia.

Para más información visitá el wiki de Ubuntu.

Fuente | Ghacks.net


42 comentarios

  1.   Joan Navarrete dijo

    Man, cuando puse el comando sudo ifconfig wlan0 up me sale error W4rL0cK.site le puse en vez de wlan0 eth0 e igualmente el mismo error, sabras por q es?

  2.   diego dijo

    Magnífico tutorial pero aqui nos enseñas a como conectarnos pero…
    ¿hay alguna manera de desconectarnos de la red inalambrica desde la terminal?

    saludos (:

  3.   Usemos Linux dijo

    Hola Diego!
    Probaste con:

    sudo ifconfig wlan0 down

    ??

    saludos! Pablo.

  4.   Victor dijo

    ¿ En el script final la llamada a ifconfig no debería incluir el parámetro “up” para que levante el interfaz ?

  5.   cvargasc dijo

    excelente tutorial, consulta como seria para acceder a una red wifi con servidores tipo Mikrotik, ya que lo proveedores Internet wifi que usan estos servidores proporcionar un user y pasword.

  6.   Usemos Linux dijo

    Claro que podés transformar el script en un demonio.
    Para IPs estáticas, te recomiendo leer el siguiente artículo: http://www.thelinuxdaily.com/2010/02/setup-static-ip-address-in-linux/

  7.   Chemo dijo

    usuario:~$ sudo ifconfig wlan0 up
    SIOCSIFFLAGS: Operación no permitida

    usuario:~$ sudo ifconfig ra0 up
    ra0: ERROR mientras se obtenían las banderas de interfaz: No existe el dispositivo

    acabo de instalar Ubuntu 10.04 y si busco controladores de hardware no me sale nada
    tengo una laptop sony
    Ayudaa por favor

    1.    Anónimo dijo

      :v

  8.   kirtash1197 dijo

    Habia un script que facilitaba mucho eso. En español ademas.

  9.   kirtash1197 dijo

    Voy a buscarlo, a ver si lo encuentro.

  10.   Usemos Linux dijo

    Ok. Dale! Si lo encontrás lo incluyo en el post.
    Saludos! Pablo.

  11.   SnocK dijo

    Funciona en la 10.04 ? por que desde interfaces es imposible no conecta 🙁

  12.   Usemos Linux dijo

    Sí. A mí me funciona de maravilla. Fijate si tu interfaz es wlan0. Para ello, escribí ifconfig en un terminal y fijate el nombre de tu interfaz de red inalámbrica. Una vez que tengas el nombre, reemplazá wlan0 por ese nombre en todos los comandos utilizados en el post.

  13.   Usemos Linux dijo

    Sí! Gracias! Fue un error de tipeo. 🙂
    Abrazo! Pablo.

  14.   Usemos Linux dijo

    Debería funcionar igual. Avisame si tenés éxito. 🙂
    Abrazo! Pablo.

  15.   JaD! | Ferrer dijo

    Muy buen tutorial; para no depender de la Ethernet cada vez que quiero navegar cómodamente en mi sillón con Links 😛

    Saludos!
    JaD!

  16.   Aldobelus dijo

    Hola. He seguido todos tus pasos y me responde:
    RTNETLINK answers: File exists
    y no se conecta. ¿Me puedes ayudar? Estoy desesperado ya. Entre hoy y otros días llevo horas con esta historia. Quizá es porque soy un novato pero…

  17.   Usemos Linux dijo

    Probá dando de baja primero y luego dando de alta.
    ifdown lo_que_sea_que_ponias
    ifup lo_que_sea_que_ponias

    Por ejemplo:
    ifdown wlan0
    ifup wlan0

    Abrazo! Pablo.

  18.   aldobelus dijo

    Quizá me he pasado, esto parece muy largo! Debería haberte incluido un documento para no ocupar. Lo siento, no volverá a suceder…

  19.   Usemos Linux dijo

    Aldo:
    Probaste ejecutando los comando que te pasé por correo precediéndolos con “sudo” para correrlos con privilegios de administrador?
    Quedaría así: sudo ifdown wlan0, lo mismo para ifup
    Saludos! Pablo.

  20.   DarkTux dijo

    Y para claves WPA? …

  21.   anymex dijo

    en caso de que usemos ip fija en lugar de dinámica hay sustituir
    dhclient
    por

    ip addr add 192.168.1.2/24 dev wlan0

    ip addr add / dev
    nota: la mascara de subred la elegimos según http://en.wikipedia.org/wiki/CIDR_notation

  22.   urKh dijo

    Puedo colocar el script como un demonio para que haga esto automaticamente al encender el ordenador? Y como haria en el caso de necesitar una ip estatica, al igual que los dns? ya que no puedo hacerlo por dhcp.

    Gracias.

  23.   cedric dijo

    hola, sabes he seguido los pasos pero me sale un error al hacer el primer paso jaja este es error “” wlan0: ERROR while getting interface flags: No existe el dispositivo””
    al poner esto en comandos

    su -c ‘lspci | grep -i network’

    me sale esto, y segun es el driver que le falta.

    06:00.0 Network controller: Broadcom Corporation BCM43142 802.11b/g/n (rev 01)
    me podrias ayudar por favor!

  24.   rafael dijo

    Tengo un problema en este paso

    sudo dhclient wlan0

    se queda colgado cuanto tiempo tengo que esperar o así?

    otra pregunta, mi clave tiene letras y números tengo que poner “s:” o no? ya que si lo pongo me sale un error de
    SET failed on device wlan0 ; Invalid argument

    gracias

  25.   Elaieeh dijo

    Tras
    sudo iwconfig wlan0 essid ESSIDTAL key CONTRASEÑACUAL
    o
    sudo iwconfig wlan0 essid ESSIDTAL key s:CONTRASEÑACUAL

    me dice:
    Error for wireless request “Set Encode” (8B2A) :
    invalid argument “CONTRASEÑACUAL”

    ¿Qué falla?

    Saludos

  26.   Yakeshyue dijo

    Parece que para WPA hay que usar wpa_supplicant . Saludos

  27.   nixho dijo

    Genial tanks por el aporte

  28.   Christian dijo

    Hola, tengo un problema con la configuracion de la interfaz de red. desde que Instalé Lubuntu 14.04 mi netbook sólo reconoce la red con la que instale el sistema operativo, pero el monitor de red no muestra ninguna otra red cuando uso la interfaz grafica. si lo escaneo desde la terminal encuentra las redes, pero cuando ingreso el ESSID y la contraseña me aparece algo como:

    Error for wireless request “Set Encode” (8B2A) :
    SET failed on device wlan0 ; Invalid argument.
    christian@christian-AOD255:~$ sudo iwconfig wlan0 essid MOVISTAR_22196434 key 00991902638
    Error for wireless request “Set Encode” (8B2A) :
    SET failed on device wlan0 ; Invalid argument.
    christian@christian-AOD255:~$

    Necesito ayuda ¿qué puedo hacer?

  29.   Mandel dijo

    Estoy probando en Ubuntu 10.04 LTS Server y no me funciona, todos los comandos funcionan correctamente, pero al tratar de conectarme, me da un error.

    iwconfig wlan0 essid MAXNET key s:Contraseña

    Error for wireless request “Set Encode” (8B2A) :
    SET failed on device wlan0 ; Invalid argument.

  30.   eeduardorj dijo

    Magnifico, muy util para cuando instalas debian netinstall en una portatil. Saludos.

  31.   Marcos dijo

    Como puedo hacer desde el ordenador de mi facultadad, donde tengo que introducir mi nombre de usuario y contraseña.

    Un saludo
    Gracias
    Ha sido de gran utilidad

  32.   rodrigo garbarino dijo

    La opción de dejar esto como un script, es buena, pero mejor que quede todo dentro del archivo /etc/network/interfaces, en mi caso es una red wifi con seguridad WEP, se agrega
    auto wlan0
    iface wlan0 inet dhcp
    wireless-essid nombre_ssid
    wireless-key pass_wifi #en hex
    wireless-mode managed

  33.   Fernando dijo

    Un artículo interesante y muy práctico para los novatos en esto de Linux, gracias por el aporte de información para testearlo a modo práctico en mi máquina 🙂
    Saludos!

  34.   Emi dijo

    Hola! iwconfig sirve para WPA2? por q no logro hacerlo andar…. cuando pongo la contraseña s:contraseña me tira error
    “Error for wireless request “Set Encode” (8B2A) :
    SET failed on device wlan0 ; Invalid argument.”

    Estoy tratando de hacer un script que me devuelva conexión exitosa… o no es para usarlo en nagios…
    Pretendo hacer un monitor de estado de Wifi para que me avise cuando un AP se colgo…
    si alguien tiene alguna idea q me puede ayudar con el proyecto bienvenido sea

    Saludos

    1.    Yukiteru dijo

      No puedes usar iwconfig para usar WPA2, en esos casos debes usar wpa_supplicant.

  35.   Repetidor dijo

    Iwconfig a mi algunas veces me va y otras no, por que podría ser?

  36.   omar dijo

    muchas gracias amigo,, me sacaste de un apuro…

  37.   Chequel dijo

    No me funciona el comando iwlist

  38. por favor aclarar para wpa2 sin utilizar archivos ya que este post que es el más popular confunde para los de wpa2 y los pone hacer una gran labor

  39.   logancox dijo

    como se hace para los wpa2, soy novato y no se nada de wpa_supplicant

  40.   wifi dijo

    Me ocurre lo mismo que al usuario Mandel y no sé cómo solucionarlo, lo he intentado durante varios dias con mi wifi

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

*

*

  1. Responsable de los datos: Miguel Ángel Gatón
  2. Finalidad de los datos: Controlar el SPAM, gestión de comentarios.
  3. Legitimación: Tu consentimiento
  4. Comunicación de los datos: No se comunicarán los datos a terceros salvo por obligación legal.
  5. Almacenamiento de los datos: Base de datos alojada en Occentus Networks (UE)
  6. Derechos: En cualquier momento puedes limitar, recuperar y borrar tu información.