WLAN

Linux.fista
Versio hetkellä 21. toukokuuta 2005 kello 11.49 – tehnyt 193.65.112.51 (keskustelu) (→‎Mistä ostan?)
Siirry navigaatioon Siirry hakuun

Mitä?

Wlan-korttien tuki ei ole Linuxissa yhtä kattavaa kuin Windows-maailmassa. Tämä johtuu pääosin piirivalmistajien haluttomuudesta julkaista koodia/rajapintoja/tietoa laitteistosta kehittäjille.

Kaikki Wlan-kortit eivät siis toimi Linuxissa. Muutoksia on tapahtumassa ja Linuxin Wlan-tuki tulee paranemaan huomattavasti lähiaikoina. Yhtenäistä 802.11 Wlan rajapintaa (802.11 stack) ollaan parhaillaan kehittämässä Jeff Garzikin johdolla ajurikehityksen helpottamiseksi.

Toisaalta Linuxin ajurit tarjoavat monia sellaisia ominaisuuksia, mitä ei ole Windows-versioissa.


Miksi?

Langaton verkkoyhteys on kätevä esimerkiksi hotelleissa, joihin yleensä yhteyksiä tarjoaa Sonera Homerun. Tämä on verkko jossa ei ole salausta, mutta tunnistautuminen (eng. authentication) vaaditaan yhteyden käyttämiseen. Päivän yhteysaikakortti maksaa noin 15€ ja kuukauden noin 80€. Tämä yhteystapa on kätevä jos matkustelee paljon.

Eräs nokkela Wlan-harrastaja kertoi että, jättämällä ping-komennon taustalle, voi yhdellä
yhteyskortilla käyttää nettiä rajattomasti. Tämä on vain kuulopuhetta, emmekä voi varmistaa
tiedon oikeellisuutta.

Toinen laaja WLAN-verkkototeutus on SparkNet. Se kattaa melkein koko Suomen.

Avoimia Wlan-pisteitä on myös muulla tarjolla, joskus avoimia verkkoja on myös kotikäyttäjillä tahallisesti tai osaamattomuuden takia. Kannattaa huomioida että toisten verkkoyhteyksien luvaton käyttäminen on rikos.


Langattoman verkon tietoturva

Langaton verkkoyhteys tuo myös omat ongelmansa tietoturvallisuuden suhteen, jos tieto kulkee ilman salausta voi siihen päästä käsiksi ilkeämieliset henkilöt.


Minkä kortin ostan?

Nykytietämyksen mukaan rt2500-piirisarjaiset Wlan-kortit ovat parhaita. Tilanne voi muuttua uusien piirisarjojen tullessa markkinoille. Lisäksi valmistajilla on ikävä tapaus nostaa tuotteiden katetta vaihtamalla käyttöön muiden valmistajien piirisarjoja jopa saman tuotteen sisällä. Linux-käyttäjälle tämä näkyy niin, että toimivaksi todettu tuote ei toimikkaan. Hyviä esimerkkejä tälläistä tuotteista ovat 3Com OfficeConnect versio 2.

Suositeltavat tuotteet:

Jos saat muita tuettuja kortteja edullisesti käytettynä, niin se voi olla ostamisen arvoista. Ei ole suositeltavaa ostaa muita kuin RT2500 piirisarjaisia laitteita uutena. Kun olet ostamassa kannettavaa, muista tarkistaa myös sen piirisarja.

Piirisarjojen tunnistaminen

Korttien piirisarjojen tunnistamisen kanssa voi olla joskus ongelmia. Voit käyttää lspci-komentoa tarkistaaksesi, mikä piirisarja kortissa on. Komento toimii pci ja pccard/cardbus korttien kanssa. Lspci-komento löytyy pci-tools paketista.

   [root@ap root]# lspci
   00:00.0 Host bridge: Intel Corp. 430HX - 82439HX TXC [Triton II] (rev 03)
   00:07.0 ISA bridge: Intel Corp. 82371SB PIIX3 ISA [Natoma/Triton II] (rev 01)
   00:07.1 IDE interface: Intel Corp. 82371SB PIIX3 IDE [Natoma/Triton II]
   00:09.0 Network controller: Intersil Corporation Prism 2.5 Wavelan chipset (rev 01)
   00:0a.0 VGA compatible controller: S3 Inc. 86c764/765 [Trio32/64/64V+] (rev 54)
   00:0b.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL-8139/8139C/8139C+ (rev 10)
   00:0c.0 PCMCIA bridge: Cirrus Logic CL 6729 (rev 07)

Lihavoidusta kohdasta löytyy Prism2.5 piirisarjainen PCI Wlan-kortti.

Vanhemmista pccard/pcmcia korteista saa tietoa 'cardctl ident' komennolla. Kuitenkaan 'cardctl ident' ei kerro pcmcia kortin piirisarjaa, vaan lähinnä valmistajan ja tuotteen id:n jne. Näillä tiedoilla voi yrittää "Googlettaa" mahdollista Linux ajuria.

  [root@ap root]# cardctl ident
  Socket 0:
    product info: "Compaq", "WL200_11Mbps_Wireless_PCI_Card", "", ""
    manfid: 0x0138, 0x0002
    function: 6 (network)
  Socket 1:
    no product info available

Pcmcia-korttipaikasta '0' löytyy WL200 Wlan-kortti, joka on 16-bit pccard/pcmcia-kortti istutettuna pci-kortille yhdessä Cirrus Logic:n pcmcia bridge-piirin kanssa. Ko. kortti on Prism2 piirisarjainen, mutta ident komento ei sitä kerro.


Conexant (ent. Intersil) Prism GT/Duette/Indigo/Frisbee

Näistä suositeltavin kortti on Zyair G-100. Sen hinta on noin 50 €. Laitteessa toimii wep-salaus hyvin, mutta wpa tuen kehitys on vielä vaihteessa ja se valmistuu joskus. Suhtaudu asiaan varauksella.

"Prism54 Fullmac" piirisarjaa ei enää tiettävästi valmisteta, mikä tarkoittaa että
prism54 Linux ajuria tukevien korttien ostaminen kaupoista voi olla erittäin hankalaa.
Uudet "Prism54 Softmac" piirisarjat (Prism Xbow/Javelin) eivät toimi Linuxissa.

Prism54 kortti tarvitsee ajurin lisäksi firmwaren, joka ladataan korttiin sen alustuksen yhteydessä.

Zyair G-100 on perinteisesti toiminut prism54 ajurilla, mutta Intersilin "Prism" liiketoiminnan ostanut Conexant on lopettaunut/lopettamassa ns. "FullMac" piirien tuotannon ja siirtynyt "SoftMac" piireihin. SoftMac piireissä on vähemmän muistia ja suurin osa toiminnoista on siirretty ajurin hoidettavaksi. Conexant ei ole kuitenkaan halunnut antaa teknistä tietoa tai koodipohjaa Prism54 kehittäjille, joten Linuxissa ei tällä hetkellä ole toimivaa ajuria Prism 54Mbit/s SoftMac piirille.

SoftMac ajuria yritetään kehitää ns. reverse-engineering menetelmällä. Menetelmä on työläs ja nähtäväksi jää syntyykö työn tuloksena toimivaa ajuria.

Siksi kannattaakin pitää mielessä, että yhä useampi uusi Prism 54Mbit/s kortti saattaakin olla
SoftMac piirisarjainen (Prism Xbow/Javelin) ja pettymys voi olla suuri kun se ei toimi.

Ralink Rt2500

Ralink rt2500-piirisarjaiset ovat parhaiten toimivia. Näistä edullisin (~29 €) kortti on A-link WL54PC. Tälle tuotteelle on saatavana täysin avoimet ajurit (GPL). A-Link kortin saatavuus on heikkoa, koska Linux-käyttäjät ovat niitä massiivisesti ostaneet.

Tässä kortissa on myös toimiva WPA-tuki, joka on monelle tärkeä ja kätevä työkalu salauksen käyttöönottamiseen (RaConfig2500). Työkalulla voi myös ottaa käyttöön useita profiileja, jolloin kortti osaa kytkeytyä automaattisesti tukiasemiin WPA-salauksen kanssa.

Kannattaa huomata, että ajuri toimii vain 8kb stackseilla käännetyssä ytimessä.
Kortin kanssa kannattaa käyttää CVS-versiota ajurista, se toimii paremmin kuin julkaistu versio.
Sen asentaminen on myös helpompaa.

Atheros AR5210, AR5211, AR5212 & AR5213

Atheros piirisarjalaiset ovat myös testaamisen arvoinen juttu, mutta ne vievät paljon prosessoritehoa. Näitä voi löytää edullisesti Gigantin "palautuskorista" ja Huuto.netistä. Uutena näitä ei kannata ostaa.

WPA-tuki on mahdollinen wpa_supplicantin avulla.

Ajuri tukee myös bonding tilaa eli suurempia nopeuksia (108Mbit/s) kuin standardoitu 54 Mbi/s. Tämä on kuitenkin valmistajakohtainen (Atheros) ratkaisu ja sellaiseksi taitaa myös jäädä. Eli toimii vain muiden samanlaisten saman valmistajan laitteiden kanssa.

Intel IPW2100 & IPW2200BG

Intel Centrino piirsarjan sisältävistä kannettavista löytyy yleensä ipw2100 sarjan piiri tai sen jälkeläinen ipw2200BG. Salaamattomat ja WEP yhteydet todettu toimiviksi. WPA-tuki on mahdollinen wpa_supplicantin avulla.


Klassikot

Agere (ent. Lucent)/Avaya/Proxim Hermes I (Orinoco Gold/Silver)

Käytettynä on saatavilla edullisesti myös vanhoja wlan-kortteja. Hyvänä esimerkkinä "Classic" Orinoco-kortit jotka toimivat hyvin, vaikka eivät ihan modernia nykytekniikkaa edustakaan. Osta jos saat kantohintaan.

Orinoco "Classic" korttiin saa myös WPA-tuen käyttämällä Ageren Version 7.18 ajuria ja wpa_supplicantia.

Näistä korteista on myös olemassa versioita, jotka eivät perustu Hermes I piirisarjaan, mutta
joita kuitenkin kutsutaan Orinoco korteiksi. Nämä eivät kuitenkaan ole tuettuna orinoco_cs
ajurissa. Tämä ikävä "sanaleikki" alkoi Proximin ostettua Lucentin Orinoco liiketoiminnan. Proxim
käyttää Orinoco "Classic" nimitystä tarkoittaessaan näitä "vanhoja aitoja" Hermes I pohjaisia
Orinoco kortteja.

Intersil Prism2/2.5/3

Prism2/2.5/3 piirisarjaisia Wlan-kortteja on ehkä ollut maailmalla eniten. WPA-tuki on mahdollinen wpa_supplicantin avulla. WPA-tuki vaatii, että kortin firmware on 1.7.0 tai uudempi.


Ndiswrapper

Jos kortillesi ei löydy Linux-ajuria aina voit kokeilla ndiswrapper emulointirajapintaa, joka käyttää Windows-ajureita ja toimii melko hyvin.

Ndiswrapper on ytimen moduuli, joka emuloi Microsoftin NDIS rajapintaa. Suorituskyky ei ole aivan alkuperäisen veroinen. WPA-tuki on mahdollinen wpa_supplicantin avulla. WPA:n toimivuus voi olla riippuvainen käytettävästä NDIS ajurista tai jopa sen versiosta.


WEP, WPA & WPA2-salaus

WEP

Nykyisin tuki WEP-salaukselle löytyy kaikista Linux ajureista ja toimii yleensä hyvin. Osassa ajureista (esim. hostap), voidaan jopa valita käytetäänkö kortin firmwarea vai ajuria kryptaamiseen. Johtuen RC4-salausalgoritmin virheellisestä toteutustavasta WEP-salauksessa (ei siis suoranaisesti RC4-algoritmista itsestään), WEP-salausta ei enää pidetä turvallisena. WEP salauksessa salausavaimen pituuden kasvattaminen (64->128->256) ei oleellisesti paranna salauksen tehoa. Uudehkoissa tukiasemissa ja Wlan-korteissa on firmwaressa paikkailtu WEP-salauksen heikkouksia (weak keys avoidance), estämällä "heikkojen" avainten generointi. Koska heikkoja avaimia ei synny, WEP-salauksen murtamiseen tarvitaan enemmän dataa. Salauksen murtamiseen tarvitaan noin 2GB liikennettä, jonka jälkeen salausavaimen selvittäminen yleensä onnistuu. Riippuu hieman tuurista, mutta esim. 64-bit avain voi murtua 2 minuutissa ja 128-bit 20 minuutissa.

WPA

Yleensä Wlan-kortin driverin lisäksi tarvitaan wpa_supplicant (poikeuksena on Ralink rt2500, jossa supplicant on ajurissa "sisään rakennettuna" ), jotta saadaan wpa/wpa2-salaus toimimaan. Valitettava tosiasia kuitenkin on, että joidenkin korttien ajurit ovat vielä "vaiheessa" wpa_supplicantin suhteen joten toimivuus ei siten välttämättä ole täydellinen.

Yritys- ja kotiverkoissa on syytä käyttää vähintään WPA/WPA2-salausta, mikäli se suinkin on mahdollista. WPA-salaus käyttää salaukseen vaihtuvaa avainta (TKIP=Temporal Key Integrity Protocol). TKIP on "johdettu" WEP:stä lisättynä MIC=Message identity check:llä. Kummassakin käytetään RC4 salausalgoritmia.

Laajemmissa verkoissa on yleensä käytössä WPA-Enterprise (Radius+IEEE802.1X+TKIP). Tällöin käyttäjien autentikointi tapahtuu omalla protokollalla (EAP=Extensible authentication protocol) Radius-palvelimelta.

Yksityisten verkoissa ei yleensä ole Radius-palvelinta (tosin Linux maailmassa tälläisenkin saa helposti pystyyn esim. FreeRADIUS:lla), jolloin joudutaan käyttämään WPA-PSK:ta (Preshared Key, "WPA-Personal") eli sama avain jaetaan kaikille verkon laitteille, jota vasten autentikoidaan. Tämä periaatteessa mahdollistaisi esim. sanakirjoihin perustuvat hyökkäykset.

WPA2

WPA2 on seuraavan sukupolven WPA. Myös siitä on Personal ja Enterprise muodot. Erona WPA:han on, että WPA2 käyttää salaukseen vahvempaa AES-salausalgoritmia RC4:n sijaan.

WPA/WPA2 salaus on toista luokkaa kuin WEP:ssä. WPA2:ssa voidaan käyttää esim. 256-bit AES-algoritmia, johon ei ole tunnettua hakkerointimenetelmää olemassa.

MUUT

Muita suojausmentelmiä ovat esim. MAC-suodatus, jossa tukiasemassa kerrtotaan wlan-asiakkaiden(client) MAC osoitteet. Vain näiden sallitaan liikennöidä tukiaseman kautta. MAC-suodatuksen tuoma lisäsuoja on kuitenkin lähinnä marginaalinen, koska wlan-kortin MAC voidaan helposti ohjelmallisesti vaihtaa.

Tukiasemassa voidaan kertoa, että verkon-nimeä (ssid) ei lähetetä automaattisesti (hide ssid). Tästä saatu hyöty on niin ikään marginaalinen, koska käytännössä tukiasema joutuu paljastamaan ssid:n enemmin tai myöhemmin, jolloin verkkoa passiivisesti kuunteleva sen näkee.

Lähetystehon pudottaminen voi olla järkevää. Myös Wlan-liikenteen VPN-tunnelointi voi olla perusteltua joissain tapauksissa.

HYÖKKÄYSTYÖKALUT

Airsnort ja Wepcrack ovat yleisimpiä työkaluja WEP-salauksen murtamiseen. Uusien salaustekniikoiden (WPA/WPA2) yleistyessä, nämä työkalut alkavat olla jo melko hyödyttömiä.

Toinen mielenkiintoinen hyökkäys on käyttää HostAP ajuria emuloimaan tukiasemaa ja päästä syöttämään (inject) omaa dataa muille.


Mistä ostan?

Tuotteita on saatavissa esimerkiksi verkkokauppa.com:sta

Jos haluat säästää rahaa, niin MBnetin hintaseuranta kertoo edullisimat ostospaikat.

Asetukset

Langattoman verkon asetukset määritellään yleisesti työkalulla jonka nimi on iwconfig. Tämä ohjelma tulee yleensä wireless-tools paketin mukana. Myös wlan-kortin ajurin täytyy tukea wireless rajapintaa (WE=Wireless Extension). Nykyään WE tuki löytyy useimmista ajureita. Moni levitysversio tarjoaa myös graafisia työkaluja asetusten määrittelyyn.

Lisätietoja komennon käytöstä saat komennolla man iwconfig.

Tietoa Linux "Wireless" rajapinnasta: Wireless Extension (WE) ja Wireless Tools (WT)

Lisäksi on tyypillistä, että aloittelijat törmäävät ongelmaan, että ajuria ei ole vielä valmiiksi paketoitu levitysversion pakettiin, vaan se pitää kääntää käsin. Joskus ajurit ovat vielä pahasti kehitysvaiheessa ja niiden asentaminen vaatii kokemusta järjestelmän ytimen korjaamisesta (eng. patch) ja kääntämisestä.


Linkit

  • Ajurisivustot 802.11b, 11Mbit/s

HostAP driver for Intersil Prism2/2.5/3 Chipsets, hostapd, and WPA Supplicant
Linux driver for Intersil Prism2/2.5/3 Chipsets
Linux driver for Hermes I (ORiNOCO) Chipset
Linux driver for Intel® PRO/Wireless 2100 Chipsets
Linux driver for ADM8211 Chipset
Linux driver for Atmel AT76C5XXx Chipsets
Linux driver for Hermes I (Version 7.18) Chipsets from Lucent/Agere
Linux driver for Texas Instruments' ACX100 Chipset

  • Ajurisivustot 802.11g, 54Mbit/s

Linux driver for Texas Instruments' ACX111 Chipset
Linux driver for Hermes II (Version 7.22) Chipsets from Agere
Linux driver for Intel® PRO/Wireless 2200BG Chipsets
Linux driver for the 802.11g Prism GT/Duette/Indigo/Frisbee Chipsets
Linux driver for Ralink rt2x00 Chipset
Linux driver for Atheros 802.11a/b/g Chipsets

  • Jakelukohtaiset: Suse

Suse Forum: Network/Internet

  • Artikkelit

raja-antura: ndiswrapper
raja-antura: wlan

  • Muut

panOULU Wlan Yhteensopivuus
Linux wireless LAN support
Wireless LAN resources for Linux


Tukiasemat

Kaupalliset

Epäyhteensopivuusongelmia voi olla myös tukiasemien suhteen. Oman kokemukseni mukaan voin suositella mm. Zyxelin, Linksysin (Cisco), Cisco aironet ja Topcomin tukiasemia. Ongelmien välttämiseksi käytä uusinta ohjelmistoversioita (firmware/bios) myös tukiasemissa. Telewell-pohjaisissa (Conexant-piirisarja) tukiasemissa on ollut paljon ongelmia ja siksi niitä kannattaa välttää ostamasta. Suuria ongelmia on myös ollut D-Link tukiasemien kanssa.

Yleinen ongelma halvoissa tukiasemissa on se, että niiden prosessoriteho on alimitoitettu jolloin jos on käytössä useita WPA-salausta käyttävää korttia, voi laitteen prosessoriteho loppua kesken ja laite kaatua tai toimia aliteholla. Tämä yleinen ongelma vaivaa muitakin edullisia tuotteita.

Jos haluat tukea Linuxin suosiota, suosittelen ostamaan WLAN-tukiaseman, jossa on Linux. Tälläisiä tuotteita ovat mm. Linksys-tukiasemat.

"Tee se itse"

Prism2/2.5/3-piirisarjassa on ns. Host AP -tila, jossa prism-kortti voi toimia tukiasemana, ilman erikoista AccessPoint-firmwarea. Tällöin kortin ajuri (hostap_xxx) hoitaa ei-aikakrittiset tapahtumat ja wlan-kortin firmware aikakriittiset. Periaatteessa tarvitsee vain ladata HostAP ajurija antaa komento 'iwconfig wlan0 mode Master', joka laittaa kortin AP-tilaan. Tukiasemakoneeksi käy jokin vanha PI tai PII ja wlan-kortiksi esim. 3COM 3CRDW696 WIRELESS PCI CARD.

HostAP-tukiasema toimii hyvin myös sellaisten korttien kanssa, joissa on jokin muu kuin Prism2/2.5/3-piirisarja, esim. Intel® PRO/Wireless 2100 tai Orinoco-kortit.

Lisäksi 802.11g-korteille ainakin Atheros- ja Prism54 (Prism GT/Duette/Indigo) -ajureista löytyy Master-tila.

HostAP-ajurin tapaan Prism54-ajuri tukee myös WDS:ää (Wireless distribution system) AP-tilassa, jolla kortti voi liittyä langattoman sillan osaksi ja näin laajentaa verkon katetta (HostAP + WDS) tai toimia siltana wlan-verkon ja lan-verkon välillä.

OpenWrt

OpenWRT on oma Linux-jakelu WLAN-tukiasemille. Esimerkiksi osiin Linksys-tukiasemasta saa laitettua avoimenlähdekoodin Linux-järjestelmän. Tämä mahdollistaa paljon monimuotoisemman käytön tukiasemalle. Toiminta menee aika virittelyksi, mutta voi olla haasteiden arvoinen kokeilu.

Avoimen OpenWRT-jakelun etuna on se, että halvasta tukiasemasta saa tehtyä esimerkiksi täysiverisen kaistanrajoittimen tai erittäin hiljaisen palomuurin. Se myös on avointa lähdekoodia ja mahdollistaa jatkokehittämisen helposti.

OpenWRT-jakelun kotisivu