Difference between revisions of "WPA supplicant (Italiano)"

From ArchWiki
Jump to: navigation, search
m (Undo revision 278841 by Hilinus (talk))
Line 19: Line 19:
  
 
È inoltre possibile installare {{Pkg|wpa_supplicant_gui}}; un frontend grafico per {{ic|wpa_supplicant}} che utilizza il toolkit {{Pkg|qt4}}.
 
È inoltre possibile installare {{Pkg|wpa_supplicant_gui}}; un frontend grafico per {{ic|wpa_supplicant}} che utilizza il toolkit {{Pkg|qt4}}.
 +
 +
==Associazione==
 +
 +
Per associarsi ad un Access Point wireless utilizzando {{ic|wpa_supplicant}}, utilizzare il tool a riga di comando {{ic|wpa_cli}}, incluso nel pacchetto. Per utilizzare {{ic|wpa_cli}} è necessario specificare una interfaccia di controllo nel file di configurazione, aggiungendo una linea simile a {{ic|1=ctrl_interface=/var/run/wpa_supplicant}}.
 +
 +
Per abilitare il salvataggio delle modifiche effettuate tramite {{ic|wpa_cli}}, si aggiunga {{ic|1=update_config=1}} al file di configurazione, quindi si avvii {{ic|wpa_supplicant}} come segue:
 +
 +
# wpa_supplicant -B -i ''interface'' -c ''/percorso/al/file/di/configurazione''
 +
 +
Si invochi {{ic|wpa_cli}} senza argomenti per ottenere un prompt interattivo ({{ic|>}}). Il prompt supporta la tab completion e contiene le descrizioni dei comandi autocompletati. Ad esempio, il comando {{ic|scan}} avvia una scansione delle reti wireless vicine ed invia una notifica una volta che l'operazione è stata completata.
 +
 +
Si esegua quindi:
 +
 +
{{bc|<nowiki>
 +
> scan_results
 +
bssid / frequency / signal level / flags / ssid
 +
00:00:00:00:00:00 2462 -49 [WPA2-PSK-CCMP][ESS] MYSSID
 +
11:11:11:11:11:11 2437 -64 [WPA2-PSK-CCMP][ESS] ANOTHERSSID
 +
</nowiki>}}
 +
 +
Per associarsi con ''MYSSID'' sarà necessario informare {{ic|wpa_supplicant}}. Ogni rete è numerata a partire da zero ed è possibile inserire la [http://en.wikipedia.org/wiki/Pre-shared_key PSK] senza apici, alternativamente all'inserimento della passphrase proposto nell'esempio sotto:
 +
 +
{{bc|<nowiki>
 +
> add_network
 +
0
 +
> set_network 0 ssid "MYSSID"
 +
> set_network 0 psk "passphrase"
 +
> enable_network 0
 +
<2>CTRL-EVENT-CONNECTED - Connection to 00:00:00:00:00:00 completed (reauth) [id=0 id_str=]
 +
</nowiki>}}
 +
 +
Il messaggio di notifica indica l'avvenuta associazione con l'Access Point scelto: sarà ora possibile ottenere un indirizzo IP tramite {{Pkg|dhcpcd}} o {{Pkg|iproute2}}.
 +
 +
Si leggano gli articoli correlati per ulterori informazioni.
 +
 +
Per salvare le informazioni di rete nel file di configurazione si esegua:
 +
 +
> save_config
 +
OK
  
 
==Configurazione==
 
==Configurazione==
Line 62: Line 101:
  
 
  # dhcpcd ''interfaccia''
 
  # dhcpcd ''interfaccia''
 
===Utilizzare wpa_cli===
 
 
È possibile controllare ''wpa_supplicant'' a runtime utilizzando l'utility ''wpa_cli'' e per farlo, sarà necessario configurare ''wpa_supplicant'' affinchè crei un'interfaccia di controllo (socket).
 
Questo comportamento è ottenibile agendo sulla variabile {{ic|ctrl_interface}}. L'esempio che segue creerà un socket in {{ic|/run/wpa_supplicant/}} e permetterà ai membri del gruppo {{ic|adm}} di accedervi:
 
 
ctrl_interface=DIR=/run/wpa_supplicant GROUP=adm
 
 
È possibile consentire a ''wpa_supplicant'' di modificare il proprio file di configurazione tramite le direttive impartite da ''wpa_cli''. Questo comportamento è particolarmente utile qualora si desideri aggiungere nuove reti wireless al file di configurazione senza riavviare il demone.
 
Si aggiunga quanto segue al file di configurazione:
 
 
update_config=1
 
 
Una volta avviato ''wpa_supplicant'', sarà possibile avviare anche ''wpa_cli''. Se quest'ultimo non è in grado di individuare il socket, si utilizzi il parametro {{ic|-p}} per specificarlo manualmente. È inoltre possibile specificare l'interfaccia da utilizzare tramite l'opzione {{ic|-i}}; in caso contrario sarà controllata quella in uso da ''wpa_supplicant''.
 
Dopo l'avvio di ''wpa_cli'' si otterrà un prompt interattivo ({{ic|>}}) con supporto alla tab completion e descrizione dei comandi autocompletatai.
 
 
====Aggiungere una nuova rete====
 
 
Si inizi una scansione delle reti disponibili; verrà inviata una notifica una volta che il processo sarà terminato:
 
 
> scan
 
 
Si esaminino i risultati della scansione:
 
 
> scan_results
 
bssid / frequency / signal level / flags / ssid
 
00:00:00:00:00:00 2462 -49 [WPA2-PSK-CCMP][ESS] MYSSID
 
11:11:11:11:11:11 2437 -64 [WPA2-PSK-CCMP][ESS] ANOTHERSSID
 
 
Per associarsi con ''MYSSID'', si istruisca ''wpa_supplicant'' di conseguenza. Ogni rete è identificata da un numero crescente, con l'indice che parte da zero. È possibile fornire la [[Wikipedia:Pre-shared key|PSK]] senza i doppi apici, oppure è possibile inserire direttamente la passphrase, come nell'esempio di cui sotto:
 
 
> add_network
 
0
 
> set_network 0 ssid "''MYSSID''"
 
> set_network 0 psk "''passphrase''"
 
> enable_network 0
 
<2>CTRL-EVENT-CONNECTED - Connection to 00:00:00:00:00:00 completed (reauth) [id=0 id_str=]
 
 
Si scrivano le modifiche sul file di configurazione:
 
 
> save_config
 
OK
 
  
 
==Avvio tramite systemd==
 
==Avvio tramite systemd==
  
La configurazione più comune consiste nell'abilitazione di ''wpa_supplicant'' e ''dhcpcd'' su un'interfaccia specifica (si veda a tal proposito [[Systemd (Italiano)#Usare le unità]]):
+
Una possibile configurazione consiste nell'abilitazione di ''wpa_supplicant'' e ''dhcpcd'' su un'interfaccia specifica (si veda a tal proposito [[Systemd (Italiano)#Usare le unità]]):
  
 
  # systemctl enable wpa_supplicant@''interfaccia''
 
  # systemctl enable wpa_supplicant@''interfaccia''

Revision as of 18:41, 16 October 2013

Template:Article summary start Template:Article summary text Template:Article summary heading Template:Article summary wiki Template:Article summary wiki Template:Article summary end

wpa_supplicant è un Supplicant WPA con supporto a WEP, WPA e WPA2 (IEEE 802.11i / RSN (Robust Secure Network)) adatto all'uso con PC desktop, portatili e persino in sistemi embedded. wpa_supplicant è il componente IEEE 802.1X/WPA utilizzato dai client, implementa la negoziazione della chiave con un WPA Authenticator, controlla il roaming e l'associazione / autenticazione del driver wireless.

Installazione

Si installi wpa_supplicant dai repository ufficiali.

È inoltre possibile installare wpa_supplicant_gui; un frontend grafico per wpa_supplicant che utilizza il toolkit qt4.

Associazione

Per associarsi ad un Access Point wireless utilizzando wpa_supplicant, utilizzare il tool a riga di comando wpa_cli, incluso nel pacchetto. Per utilizzare wpa_cli è necessario specificare una interfaccia di controllo nel file di configurazione, aggiungendo una linea simile a ctrl_interface=/var/run/wpa_supplicant.

Per abilitare il salvataggio delle modifiche effettuate tramite wpa_cli, si aggiunga update_config=1 al file di configurazione, quindi si avvii wpa_supplicant come segue:

# wpa_supplicant -B -i interface -c /percorso/al/file/di/configurazione

Si invochi wpa_cli senza argomenti per ottenere un prompt interattivo (>). Il prompt supporta la tab completion e contiene le descrizioni dei comandi autocompletati. Ad esempio, il comando scan avvia una scansione delle reti wireless vicine ed invia una notifica una volta che l'operazione è stata completata.

Si esegua quindi:

> scan_results
bssid / frequency / signal level / flags / ssid
00:00:00:00:00:00 2462 -49 [WPA2-PSK-CCMP][ESS] MYSSID
11:11:11:11:11:11 2437 -64 [WPA2-PSK-CCMP][ESS] ANOTHERSSID

Per associarsi con MYSSID sarà necessario informare wpa_supplicant. Ogni rete è numerata a partire da zero ed è possibile inserire la PSK senza apici, alternativamente all'inserimento della passphrase proposto nell'esempio sotto:

> add_network
0
> set_network 0 ssid "MYSSID"
> set_network 0 psk "passphrase"
> enable_network 0
<2>CTRL-EVENT-CONNECTED - Connection to 00:00:00:00:00:00 completed (reauth) [id=0 id_str=]

Il messaggio di notifica indica l'avvenuta associazione con l'Access Point scelto: sarà ora possibile ottenere un indirizzo IP tramite dhcpcd o iproute2.

Si leggano gli articoli correlati per ulterori informazioni.

Per salvare le informazioni di rete nel file di configurazione si esegua:

> save_config
OK

Configurazione

wpa_supplicant fornisce un file di configurazione d'esempio situato in /etc/wpa_supplicant/wpa_supplicant.conf che documenta in modo dettagliato tutte le opzioni disponibili e relative configurazioni.

Il contenuto minimo richiesto dal file di configurazione è un network block; ad esempio:

/etc/wpa_supplicant/foobar.conf
network={
    ssid="..."
  }

Quanto sopra può essere facilmente generato utilizzando il tool wpa_passphrase:

$ wpa_passphrase essid passphrase
network={
   ssid=essid
   #psk=passphrase
   psk=f5d1c49e15e679bebe385c37648d4141bc5c9297796a8a185d7bc5ac62f954e3
}
Suggerimento: È possibile utilizzare un file di testo come input per l'inserimento di alcune passphrase particolarmente complesse:
# wpa_passphrase essid < passphrase.txt > /etc/wpa_supplicant/wpa_supplicant-interfaccia.conf

Una volta ottenuto un file di configurazione, sarà possibile avviare il demone wpa_supplicant e collegarsi alla rete wireless richiesta:

# wpa_supplicant -B -i interfaccia -c file_di_configurazione

Potrebbe essere necessario specificare il driver da utilizzare: per una lista di quelli supportati, eseguire il comando wpa_supplicant -h. Si noti che il driver nl80211 è da preferirsi rispetto al vecchio wext, da ritenersi deprecato. Il driver viene specificato tramite il parametro -D:

# wpa_supplicant -B -i interfaccia -c file_di_configurazione -D driver
Suggerimento: È possibile combinare l'utilizzo di wpa_supplicant e wpa_passphrase per connettersi a quasi tutte le reti WPA2 (Personal):
# wpa_supplicant -B -i interfaccia -c <(wpa_passphrase essid passphrase)

Una volta autenticati, non rimane che connettersi utilizzando un IP statico oppure tramite DHCP. Ad esempio:

# dhcpcd interfaccia

Avvio tramite systemd

Una possibile configurazione consiste nell'abilitazione di wpa_supplicant e dhcpcd su un'interfaccia specifica (si veda a tal proposito Systemd (Italiano)#Usare le unità):

# systemctl enable wpa_supplicant@interfaccia
# systemctl enable dhcpcd@interfaccia

La sezione [Install] del servizio di systemd fornito da wpa_supplicant è sbagliata (si veda questo bug report). Se la propria interfaccia di rete non si chiama wlan0, sarà necessario copiare il servizio in /etc/systemd/system e modificare la sezione [Install] in questo modo:

[Install]
WantedBy=multi-user.target

Si consulti Systemd (Italiano)#Rimpiazzare le unità fornite per ulteriori informazioni sulla modifica delle unità.

Nota: Se si utilizza il servizio dhcpcd@.service è possibile sostituire il parametro -w con -b, in modo che dhcpcd non aspetti di ricevere un indirizzo prima di essere messo in background.
Suggerimento: dhcpcd contiente un hook (abilitato di default) per l'avvio automatico di wpa_supplicant su tutte le interfacce wireless, che viene attivato solamente se è presente il file di configurazione /etc/wpa_supplicant.conf e se non vi è nessun processo di wpa_supplicant in ascolto su quella specifica interfaccia. Per questo motivo è possibile utilizzare semplicemente il servizio dhcpcd@interfaccia per la configurazione della rete, senza abilitare wpa_supplicant@interfaccia.

Link correlati