Connettersi a una rete wifi da terminale

In questa guida impareremo a collegarsi ad una rete wifi manualmente, utilizzando i comandi da terminale. Sarà necessario disattivare i gestori di rete per GUI in uso.

Premesse

per semplificare la spiegazione si utilizzeranno i seguenti valori:

nome scheda wifi = wlan0
nome scheda ethernet = eth0
ip gateway = 192.168.0.1
indirizzo netmask = 255.255.255.0 ( /24 )
Nome ESSID rete wifi = ‘ReteWiFi’
Chiavi WEP e WPA = chiaveWEP’ – ‘chiaveWPA’

Operazioni preliminari

Il primo provvedimento da prendere, se si hanno in esecuzione manager di rete come wicd o network mamanger, è quello di arrestare l’esecuzione dei loro demoni con uno dei seguenti comandi:

# service network-manager stop
----------------------------------
# /etc/init.d/network-manager stop
----------------------------------
# systemctl stop network-manager

Se stiamo utilizzando wicd inserire il nome del demone corrispondente.
Successivamente a questa operazione, recuperare il nome della rete wifi a cui si desidera collegarsi:

# iwlist scan

Queto comando fornirà, oltre al nome ESSID della rete, diverse informazioni che potrebbero risultare inutili per il nostro scopo, se si desidera ottenere solo il nome ESSID senza ulteriori informazioni, digitare il seguente comando:

# iwlist scan | grep -i essid

se non si conosce il nome del proprio dispositivo wifi digitare uno dei seguenti comandi:

$ iwconfig
$ ip link

Se si sta utilizzando anche una scheda di rete cablata (via cavo) disattivarla tramite uno dei seguenti comandi:

# ip link set eth0 down
-----------------------
# ifconfig eth0 down

Il nome del dispositivo è recuperabile indifferentemente tramite i seguenti comandi:

$ iwconfig
$ ifconfig
$ ip link

In seguito, disattivare e riattivare il dispositivo wifi tramite uno dei seguenti comandi:

# ip link set wlan0 down
------------------------
# ip link set wlan0 up

# ifconfig wlan0 down
-----------------------
# ifconfig wlan0 up

Adesso si è pronti per connettersi alla rete desiderata.

Connessione a una rete aperta o con protezione WEP

La connessione a una rete aperta, non protetta da chiave WEP o WPA, o a una rete protetta da chiave WEP è il procedimento più semplice

Rete aperta:

digitare il seguente comando da terminale:

 # iwconfig  wlan0  essid 'ReteWiFi'

Rete protetta da chiave WEP:

digitare da terminale il seguente comando:

# iwconfig  wlan0  essid 'ReteWiFi'  key 'chiaveWEP'
connessione a una rete con protezione WPA

La connessione a una rete WPA prevede diverse possibilità

È possibile connettersi a una WPA nella maggior parte dei casi tramite il semplice comando:

# iwconfig  wlan0  essid 'ReteWiFi'  key restricted 'chiaveWPA'

Dove questo comando non funzionasse, è possibile utilizzare il software wpa_supplicant nel seguente modo:

# (wpa_supplicant -i wlan0 -c <(wpa_passphrase 'ReteWiFi'  'chiaveWPA')) &

In alternativa a questa procedura è possibile creare un file di configurazione tramite wpa_passphrase e salvarlo nella propria home:

$ wpa_passphrase  'ReteWiFi'  'chiaveWPA'  >  ∼/.nomerete_cfg

.nomerete_cfg  è un nome arbitrario.

Successivamente basterà utilizzare wpa_supplicant nel seguente modo:

# wpa_supplicant -i wlan0 -c ∼/.nomerete_cfg

È ulteriolmente possibile modificare il file /etc/wpa_supplicant/wpa_supplicant.conf  in modo da configurarlo con i nostri parametri di rete:

# nano /etc/wpa_supplicant/wpa_supplicant.conf
---------------------------------------------
ctrl_interface=/var/run/wpa_supplicant
network={
ssid='ReteWiFi'
key_mgmt=WPA-PSK
proto=WPA
psk='chiaveWPA'
}

Salvare e chiudere il file, quindi avviare wpa_supplicant nel seguente modo:

# wpa_supplicant -Dwext -iwlan0 -c./wpa_supplicant.conf -B

A qualunque rete ci si connetta, una volta terminata la procedura, sarà necessario impostare l’indirizzo IP e gli indirizzi dei server DNS da utilizzare.

Impostazione indirizi ip dinamici

Per impostare l’indirizzo ip tramite il servizio dhcp fornito dal router utilizzare i comandi dhcpcd o dhclient, secondo il pacchetto utilizzato:

# dhcpcd wlan0
----------------
# dhclient wlan0
Impostare un indirizzo ip statico

Per impostare un indirizzo ip statico digitare il seguente comando:

# ip addr add 192.168.0.10/24  dev wlan0

Specificare a questo punto il gateway della rete:

# ip route add default via 192.168.0.1

È possibile utilizzare anche il comando ifconfig  assieme al comando route  nel seguente modo:

# ifconfig wlan0 192.168.0.10 up
# route add default gw 192.168.0.1

Specificare quindi i DNS in /etc/resolv.conf:

# nano /etc/resolv.conf
-----------------------------
nameserver [indirizzo_ip_DNS1]
nameserver [indirizzo_ip_DNS2]
search [nome_dominio]

Se si vogliono utilizzare i DNS impostati sul router inserire l’idirizzo ip del gateway e il nome dominio del router in questo modo:

(nome dominio e ip puramente a scopo di esempio)

nameserver 192.168.0.1
search sitecom.modem

È anche possibile creare uno script bash in modo da automatizzare i comandi fino ad ora visti. Procedere nel modo seguente:

editare con un editor di testi il file nella posizione desiderata ed inserire i comandi necessari:

(esempio di script per connessione a una rete aperta)

# nano /home/nome_file.sh
-------------------------
#!/bin/bash
systemctl stop network-manager
ip link set eth0 down
ip link set wlan0 down
ip link set wlan0 up
iwconfig wlan0 essid 'ReteWiFi'
ip addr add 192.168.0.10/255.255.255.0 dev wlan0
ip route add default via 192.168.0.1

Salvare e chiudere il file, quindi per eseguire lo script digitare il seguente comando:

# bash /home/nome_file.sh

Un altro modo di collegarsi in modo automatico  senza l’ausilio dei comuni gestori di rete per GUI, è quello di utilizzare i profili netctl. È un modo pratico e assai semplice per gestire le reti cablate e le reti wifi; qui la guida alla configurazione di netctl

Ti potrebbe interessare anche...