cs:uzivatel:sw:nix:xsupplicant

ZASTARALY NAVOD NEPOUZIVEJTE

Konfigurace Xsupplicantu pro připojení k eduroamu

Tento návod popisuje konfiguraci počítače s OS Linux (zkoušeno na distribuci Slackware 9.1, jádro 2.6.7) pro připojení do bezdrátové sítě zabezpečené pomocí 802.1x. Návod uvažuje použití čipsetu Intersil Prism 2.5 s driverem HostAP (verze 0.2.4) a xsupplicantu - ke stažení na adrese open1x.org. Ovladač HostAP není součástí standardní distribuce jádra a je potřeba jej stáhnout ze stránky autora. Při konfiguraci HostAP driveru a xsupplicantu postupujeme podle návodu přiloženého v balíčcích. Nyní tedy k vlastní konfiguraci připojení k síti.

Nejprve je potřeba změnit mod karty na „managed“ a nastavit požadované SSID:

iwconfig wlan0 mode managed
iwconfig wlan0 essid eduroam

Ovladač karty může pracovat ve třech modech: MANAGED - karta se asociuje k nějakému aktivnímu access pointu, MASTER - karta sama plní funkci access pointu a konečně AD-HOC - slouží pro spojení několika radiových karet bez nutnosti použít AP.

Dále aktivujeme bezdrátový interface:

ifconfig wlan0 up

Příkazem iwconfig wlan0 zkontrolujeme, zda se karta skutečně asociovala k access pointu, pokud ano, vypadá výpis zhruba takto:

wlan0     IEEE 802.11b  ESSID:"eduroam"
          Mode:Managed  Frequency:2.412GHz  Access Point: 00:0D:BD:92:72:6C
          Bit Rate:11Mb/s   Sensitivity=1/0
          Retry min limit:8   RTS thr:off   Fragment thr:off
          Encryption key:off
          Power Management:off
          Link Quality:41/0  Signal level:-28 dBm  Noise level:-70 dBm
          Rx invalid nwid:0  Rx invalid crypt:0  Rx invalid frag:0
          Tx excessive retries:0  Invalid misc:0   Missed beacon:0

Pokud k asociaci nedošlo, bude v políčku „Access Point“ hodnota 44:44:44:44:44:44. K této situaci by dojít nemělo, ale může se to stát (např. při hustém pokrytí signálem, kdy se karta neustále přepíná z jenoho AP na druhé). Řešením pak může být tato posloupnost příkazů, která zajistí, že se karta nebude automaticky asociovat k nejsinějšímu AP, ale spojí se pouze s tím, který explicitně zadáme příkazem iwconfig.

iwpriv wlan0 host_roaming 2
iwconfig wlan0 ap xx:xx:xx:xx:xx:xx

Hodnota xx:xx:xx:xx:xx:xx zde představuje mac adresu access pointu.

Dalším důležitým krokem je konfigurace xsupplicantu. Ta se provádí v konfiguračním souboru, který se umístí zpravidla do adresáře /etc. Zde je příklad takového konfiguračního souboru pro Xsupplicant verze 1.0:

network_list = all
default_netname = eduroam
startup_command = <BEGIN_COMMAND>echo "START"<END_COMMAND>
reauth_command = <BEGIN_COMMAND>echo "authenticated user %i"<END_COMMAND>
logfile = /var/log/xsupplicant.log
allow_interfaces = wlan
eduroam
{
  type = wireless
  allow_types = eap_ttls
  identity = <BEGIN_ID>uzivatelske_jmeno@realm<END_ID>
  eap-ttls {
  root_cert = /etc/1x/cert.pem
  chunk_size = 1398
  random_file = /dev/urandom
  phase2_type = pap
  pap {
        username = <BEGIN_UNAME>uzivatelske_jmeno@realm<END_UNAME>
        password = <BEGIN_PASS>XXXXXXXXXXXXXX<END_PASS>
      }
  }
}

Samotný konfigurační soubor je dobře zdokumentován pomocí vložených komentářů. Zde jsem uvedl příklad autentizace přes metodu EAP-TTLS s vnořeným PAPem. Krom uživatelského jména a hesla je potřeba zadat také certifikát, který se použije pro ověření RADIUS serveru (je to certifikát certifikační autority, která vydala certifikát RADIUS serveru). Nyní již zbývá jen spustit samotný suplikant a modlit se, že bude vše fungovat tak jak má. Parametry jsou opět popsány v dokumentaci k xsupplicantu („c“ .. konfigurační soubor, „i“ .. použitý interface, ..).

xsupplicant -c /etc/1x/ttls-pap.conf -i wlan0 -d 99

Pokud je vše nastaveno správně, dojde k výměně WEP klíčů a access point umožní spojení do sítě. Z výpisu příkazu iwconfig je vidět, že se klíč opravdu změnil:

wlan0     IEEE 802.11b  ESSID:"eduroam"
          Mode:Managed  Frequency:2.412GHz  Access Point: 00:0D:BD:92:72:6C
          Bit Rate:11Mb/s   Sensitivity=1/
          Retry min limit:8   RTS thr:off   Fragment thr:off
          Encryption key:5BCA-4C27-995E-474E-B335-0234-88 [4]   Security mode:open
          Power Management:off
          Link Quality:42/0  Signal level:-29 dBm  Noise level:-71 dBm
          Rx invalid nwid:0  Rx invalid crypt:0  Rx invalid frag:
          Tx excessive retries:0  Invalid misc:12   Missed beacon

Nyní je potřeba přidělit wlan interfejsu IP adresu. To se provede buďto pomocí DHCP příkazem dhclient wlan0 nebo statickým přidělením pomocí příkazu ifconfig wlan0 x.x.x.x netmask y.y.y.y, kde x.x.x.x je IP adresa adaptéru a y.y.y.y maska sítě.

Na této stránce lze nalézt dokumentaci k nastavení Xsupplicantu.

Pozn. Může se stát, že pokud použijete kartu Prism 2.5 se starším firmwarem, nebude suplikant správně fungovat (problémy nastaly především s asociací k SSID, které nebylo broadcastováno - při station firmware 1.4.9). Na stránce linux.junsun.net/intersil-prism/ naleznete detailní popis pro upgrade firmware. Vyzkoušená je verze primárního firmware 1.1.1 a station firmware 1.8.0. Tento krok však doporučuji podstoupit teprve v případě, že karta nebude korektně fungovat.

Last modified:: 2017/03/10 14:10