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.
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’
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.
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'
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.
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
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