802.1x
Wikipedia
802.1x Port Based Authentication, eli porttikohtainen autentikointi on IEEE 802.1x standardi, jota käytetään IEEE 802 lähiverkoissa. 802.1x:n tarkoituksena on estää luvattoman asiakaslaitteen (supplicant) kommunikointi lähiverkon liityntäpisteenkautta. IEEE 802.3 tai IEEE 802.5 verkoissa liityntäpiste on esim. kytkimen portti ja IEEE 802.11 verkoissa tukiaseman (Access Point) looginen portti.
Sisällysluettelo |
[muokkaa] Historia ja kehityksen motivaattorit
Tietoturvavaatimusten kasvaessa ja 802.11 verkkojen yleistyminen sekä heikko tietoturva ovat luoneet todellisen tarpeen 802.1x:n kehittämiselle. Lähiverkkojen datasiirto on siirtynyt fyysisestä siirtotiestä käyttämään radiotaajuuksia, jolloin verkkoon pääsyä ei voida rajata tiettyyn fyysiseen pisteeseen. Tästä syystä verkkojen omistajatahoilla on syntynyt selkeä tarve kontrolloida verkkoon pääsyä, koska kuka tahansa pystyy hyödyntämään langattomanverkon resursseja kytkemällä WLAN-verkkokortin tietokoneeseen ja kytkeytymään verkkoon ollessaan tukiaseman kantomatkan sisäpuolella. Sama ongelma on myös langallisen IEEE 802 -verkon liityntäpisteissä, jotka sijaitsevat julkisissa tiloissa.
Koska kytkimen portti tai langattoman verkon liityntäpiste (AP) toimii käyttäjälle lähiverkon pääsykohtana, on se luonnollinen paikka kontrolloida verkkoon pääsyä sekä suodat-taa datavirrasta protokollia ja paketteja.
Monet organisaatiot ovat kyllästyneet hajautettuihin käyttäjätietokantoihin. Internet palveluiden lisääntyessä operaattorit ovat joutuneet kasvattamaan soittosarjojen ja palveluiden lukumäärää, jonka seurauksena käyttäjätunnus/salasana tietokantoja on jouduttu monistamaan ja niitä on useita. Käyttäjätunnus/salasanatietokantojen hallinnointi on paisunut mahdottomaksi, jonka takia organisaatiot ovat tarvinneet keskitetyn käyttäjätunnusten hallinnoinnin. Tämä on tarkoittanut investointeja Authentication, Authorization ja Accounting (AAA-protokolla) -palvelun toteuttaviin protokolliin. Eräs tunnetuimmista protokollista on Remote Authentication Dial-In User Service (RADIUS). Avainidea on tuottaa yksi keskitetty tietokanta, jonka avulla käyttäjät voidaan tunnistaa turvallisesti kaikissa olosuhteissa, jossa AAA–protokollat kuljettavat verkon reunalta autentikointiliikenteen turvallisesti verkon autentikointipalvelimelle.
Pian langattomien verkkojen julkaisun jälkeen, niiden ensimetreillä, todettiin langattoman verkon Wireless Encryption Protocol (WEP) -protokollan suojauksen purun olevan helppoa. WEP:n tarkoitus oli turvata päätelaitteen ja liityntäpisteen välinen dataliikenne. Protokollan toteutus oli heikko ja siinä ei ollut ominaisuuksia, jolla salausavaimien jakelu ja hallinnointi olisi voitu toteuttaa helposti. Monet tahot ovat esittäneet 802.1x:n tavaksi jolla avainten jakelu voidaan toteuttaa turvallisesti liityntäpisteelle ja päätelaitteille.
[muokkaa] Terminologia
Portti
Portti on liityntäpiste, jonka kautta kytkeydytään verkkoon. Portti voi olla fyysinen portti, kuten keskitin tai kytkin. Se voi olla myös looginen portti, kuten 802.11 verkoissa – liikkuvan päätelaitteen ja tukiaseman välinen assosiaatio, jossa loogiset portit kommunikoivat aina asiakkaan portin kanssa.
Asiakas
Asiakas (Supplicant) fyysiseen porttiin tai virtuaaliporttiin kytketty päätelaite, joka on velvollinen vastaamaan autentikaattorin lähettämiin pyyntöihin.
Autentikaattori
Autentikaattori (Authenticator)arkkitehtuurikehyksen mukaan laite, joka sisältää portin tai portteja, jotka ovat liityntäpisteitä. Liityntäpisteen laite toimii autentikaattorina. Virtuaaliseen porttiin kytketyn asiakkaan on kerrottava tarvittavat tiedot autentikaattorille ennen kuin se voi kommunikoida muun verkon kanssa autentikaattorin kontrolloidusta portista. Autentikaattori vastaa asiakkaan ja autentikaattorin välisestä keskustelusta, sekä autentikointitietojen välittämisestä autentikointipalvelimelle, joka suorittaa autentikoinnin ja välittää tiedon onnistuneesta autentikoinnista takaisin autentikaattorille ja sallii asiakkaan liikennöinnin kontrolloidun portin kautta. Portin tila muutetaan tällöin kontrolloidusta kontrolloimattomaksi.
EAP
Extensible Authentication Protocol (EAP) -protokollaa käytetään Asiakkaan ja Autentikaattorin välisessä autentikointitiedon siirrossa. EAP -protokollaa käytetään yleensä jonkun AAA-protokollan kanssa, jolloin saadaan automaattisesti todentamis-, valtuutus- ja tilastointipalvelut käyttöön verkkotyppistä riippumatta.
Proxy
Autentikaattorin ja Autentikontipalvelimen välissä voi sijaita proxy -palvelin, jonka tehtävänä on välittää EAP-viestit edelleen autentikoinnin osapuolille.
EAPOL
Extensible Authentication Protocol Over LAN (EAPOL) on paketointitekniikka, jolla EAP-viestit kuljetetaan Autentikaattorin ja Autentikointipalvelimen välillä.
AAA-PALVELIN
Autentikointipalvelin, joka sisältää keskitetyn käyttäjätietokannan asiakkaista ja käyttöoikeuksista, jotka liikennöivät verkon reunalueen portin kautta.
[muokkaa] Arkkitehtuuri
802.1x perusajatuksena on luoda kaksi erillistä porttia autentikoituvalle asiakkaalle – auktorisoitu ja auktorisoimaton looginen portti verkkoon pääsyn tarjoavalta laitteelta. Autentikaattori toimii arkkitehtuurin kannalta autentikoijana. Alkuvaiheessa asiakas voi liikennöidä ainoastaan auktorisoimattoman portin kautta, mikä tarkoittaa sitä, että autentikoija ohjaa liikenteen autentikointipalvelimelle. Auktorisoimattoman portin (uncontrolled port) kautta välitetään vain autentikointiviestit (EAP) autentikoinpalvelimelle. Autentikoija ja autentikointipalvelin voivat olla sama fyysinen laite, mutta käytännössä joustavuus- ja skaalautuvuussyistä niiden toiminnallisuudet sijaitsevat yleensä eri laitteissa. Autentikointipalvelimen tehtävänä on puolestaan tehdä varsinainen päätös verkkoon pääsyn sallimisesta tai kieltämisestä. Asiakkaan täytyy siis autentikoida itsensä onnistuneesti autentikointipalvelimelle, jonka jälkeen autentikoijan looginen portti (controlled port) voidaan muuttaa auktorisoituun tilaan ja asiakas voi aloittaa normaalin liikennöinnin ja palveluiden käytön.
[muokkaa] Autentikointi langattomissa verkoissa
802.1x arkkitehtuurissa on langattoman verkon kannalta kaksi merkittävää ominaisuutta, jotka keskittyvät porttikohtaiseen hallintaan langattomissa verkoissa:
- Virtuaaliportit: Virtuaaliportti muodostetaan asiakkaan MAC-osoitteen perusteella, jolloin EAPOL -viestin lähdeosoitteena on laitteen oma osoite ja kohdeosoitteena vastapuolen MAC-osoite. Jos taas käytössä on tekniikka, joka ei välitä vastapuolen MAC -osoitteesta, lähdeosoitteena on edelleen asiakkaan MAC-osoite, mutta kohdeosoitteena on ryhmäosoite 01-08-C2-00-00-03.
- Avainten vaihto: liityntäpisteellä on ominaisuus välittää keskitetysti avaimia EAPOL-Key-viestein autentikointipalvelimelta asiakkaalle ja päinvastoin.
[muokkaa] Virtuaaliportin ja MAC -osoitteen välinen assosiaatio
Langattomissa verkoissa asiakkaat eivät ole fyysisesti yhteydessä lähiverkkoon. Langattomissa verkoissa asiakkaat jakavat siirtotien toisten asiakkaiden kanssa. Langattomissa verkoissa asiakkaan ja liityntäpisteen välillä täytyy olla assosiaatio, jotta asiakas voi kommunikoida lähiverkkoon. Assosiaation mahdollistava protokolla sallii asiakkaan ja liityntäpisteen oppia toistensa MAC-osoitteen, jonka perusteella virtuaalinen portti voidaan luoda liityntäpisteeseen. Kun assosiointi on valmis asiakkaan ja liityntäpisteen välillä, asiakas voi aloittaa autentikoinnin EAP-protokollalla.
[muokkaa] Salausavainten hallinta
802.1x ei välttämättä vaadi WEP-salausta tai muita salausalgoritmeja, mutta se tarjoaa mekanismin välittää salausavaininformaation liityntäpisteeltä asiakkaalle lähettämällä EAPOL-Key-viestin. Avain voi olla yhteyskohtainen ja se voidaan uusia tietyn väliajoin.
Ensimmäisissä WLAN-liityntäpisteissä käytetty WEP-salaus muodosti staattisen tunnelin, jonka tietoturva oli paperilla hyvä, mutta käytännössä olematon. Kuuntelemalla verkkoa ja kaappaamalla yhteyden paketteja riittävästi, pystyttiin salaus murtamaan tehokkaalla työasemalla jopa 20 minuutissa. Tietokoneiden laskentatehon kasvaessa avainten murtamiseen kuluu enää minuutteja tai jopa sekunteja. Tästä syystä tulisi käyttää vahvempia salausalgoritmeja. Dynaamisella salausavaimella muodostetun "tunnelin" etuna on se, että "tunnelin" elinaika voidaan määrittää riittävän lyhyeksi. Tunnelin elinaika on määritetty yhteysavaimen elinaikaan. Määrittämällä yhteysavaimen elinaika/uusimisaika riittävän pieneksi varmistutaan siitä, että mahdollinen tunkeutuja ei pysty kaappaamaan riittävästi paketteja murtaakseen salauksen.
[muokkaa] Assosiaatio ja EAP autentikoinnin proseduuri
Asiakkaan täytyy ensin kytkeytyä haluttuun liityntäpisteeseen. Kun asiakas ja liityntäpiste ovat tietoisia toisistaan voivat ne aloittaa EAP viestien välityksen liityntäpisteen kautta autentikointipalvelimelle kontrolloidun portin auktorisoimiseksi. Jos looginen portti ei ole auktorisoitu, voi se välittää vain EAP -viestejä.
EAP viestit välitetään asiakkaan ja autentikaattorin välillä EAPOL:n avulla, josta autentikaattori välittää ne autentikointipalvelimelle. Kun käyttäjä on onnistuneesti autentikoitunut palvelimelle, autentikointipalvelin lähettää EAP-Key -paketin autentikaattorin kautta takaisin asiakkaalle. Tarkempi keskustelun kulku kuvassa.
[muokkaa] 802.1x ja RADIUS
8021x:ssä käytetään molemminpuolista autentikointia. Jos käytössä on keskitetty autentikointipalvelu, ensimmäisessä vaiheessa RADIUS-palvelin lähettää digitaalisen sertifikaatin käyttäjälle todistaakseen olevansa luotettava taho. Kun palvelin pystyy osoittamaan luotettavuutensa, ovat myös pyyntöjä lähettävät verkon liityntäpisteet luotettavia, sillä RADIUS-palvelin hyväksyy vain niiltä laitteilta lähetykset joiden välillä sillä on luottamussuhde.
Toisessa vaiheessa kun palvelin on todennettu, lähettää käyttäjä omat autentikointitietonsa RADIUS-palvelimelle. Autentikointitiedot voidaan välittää Extensible Authentication Protocol (EAP) – Transport Layer Security (TLS) -metodilla, jossa jokaisella käyttäjällä täytyy olla oma sertifikaatti. EAP-TLS lisää luonnollisesti ylläpito ja hallinnointikustannuksia, koska käyttäjien sertifikaatteja hallinnoidaan, jaetaan ja peruutetaan käyttäjäkohtaisesti.
Autentikointitietojen välittämisessä voidaan käyttää myös EAP Tunneled TLS Authentication Protocol (EAP-TTLS) -menetelmää, jossa sertifikaatit sijaitsevat keskitetysti RADIUS-palvelimella, joka tunnistaa käyttäjän perinteisellä käyttäjätunnus/salasana -menetelmällä, jossa tunnus salataan palvelimella olevalla sertifikaatilla. Keskitetyn hallinnoinnin etuna ovat huomattavasti pienemmät hallinnointikustannukset käyttäjää kohti.
Palvelimen hyväksyessä saadut autentikointitiedot, se generoi dynaamisen yhteysavaimen, jonka palvelin lähettää takaisin asiakkaalle liityntäpisteen kautta yhteyden hyväksyntä viestinä, jossa avaimella muodostetaan dynaaminen WEP-tunneli. Tunnelin muodostuksen jälkeen voidaan aloittaa varsinainen dataliikenne.
[muokkaa] 802.1x -protokollan hyötyjä
Yhteiskunnan nopea verkottuminen sekä uusien teknologien käyttöönotto asettaa uusia vaatimuksia tietoturvalle. Uusien teknologioiden myötä tunkeutumismetodit kehittyvät ja luvattomat käyttöönottoyritykset lisääntyvät. Tästä syystä tietoturvaa on kehitettävä, jotta se on linjanmukainen yritysten tietoturvapolitiikan kanssa.
[muokkaa] Reunalla tapahtuva autentikointi
802.1x tarjoaa erinomaisen ja turvallisen tavan autentikoida käyttäjä siellä missä autentikoinnin on tapahduttava – liityntäpisteessä, verkon reuna-alueella. Verkon reuna-alueet ovat luonnollinen paikka autentikoinnille – miksi päästää asiakas liikennöimään syvemmälle verkkoon kuin sen on tarve. WLAN- ja LAN -ympäristössä 802.1x tarjoaa kontrolloidun pääsyn verkkoon. Käyttäjä ei pääse reuna-aluetta syvemmälle, ellei käyttäjä autentikoi itseänsä. Reunan liityntäpisteeltä välitetään verkon keskukseen vain autentikointiliikenne, ellei autentikointia ole suoritettu hyväksytysti.
[muokkaa] Dynaaminen salausavain
Langattomien verkkojen yleistymisen kasvua on heikentänyt heikko tietoturva. WEP-protokolla salattu liikenne pystytään purkamaan erittäin nopeasti, joka vesittää WEP-protokollan tarkoituksen. Tämä erittäin vakava ongelma voidaan sivuuttaa käyttämällä vahvempia salausalgoritmejä yhdessä 802.1x-protokollan kanssa. Salauksessa käytetään dynaamista salausavainta staattisen avaimen sijasta. Dynaamisessa salauksessa avaimen elinaika voidaan määrittää halutun pituiseksi. Salausavaimen elinajan päättyessä käyttäjältä vaaditaan uusi avain, jolloin käyttäjän on autentikoiduttava autentointipalvelimelle uudelleen. Uudelleenautentikointi tapahtuu käyttäjälle läpinäkyvästi.
[muokkaa] Datapaketin kuorman
802.1x ei kapseloi kehystä, kuten WEP-protokolla tekee, joten se ei kasvata siirrettävän paketin kokoa. Tyypillisesti 802.1x voidaan ottaa käyttöön kaikissa ulko- ja sisäreunan laitteissa päivittämällä aktiivilaitteen ohjelmistoversio. Tulevaisuudessa myös verkkokorttien valmistajat tulevat sisällyttämään toiminnallisuuden laiteajureihin, jolloin käyttöjärjestelmää ei tarvitse päivittää tai vaihtaa uuteen versioon. Tästä syystä 802.1x on erittäin skaalautuva ja sen käyttöönotto on nopeaa ja helppoa.
[muokkaa] Avoin standardi
802.1x integroituu erinomaisesti AAA-ympäristöihin ja se voidaan implementoida olemassa oleviin verkkoihin, joita käytetään esimerkiksi VPN- ja etäkäyttöyhteyksillä. Vaatimuksena tosin on, että esimerkiksi RADIUS-palvelimen on tuettava EAP-protokollaa, jotta 802.1x voidaan ottaa käyttöön. Tästä syystä 802.1x sopii erinomaisesti autentikointiratkaisuksi, jossa kaksi fyysistä verkkoa on yhdistetty yhdeksi loogiseksi verkoksi.
[muokkaa] Käyttöjärjestelmien tuki 802.1x -protokollalle
[muokkaa] Windows -tuki
Windows XP:ssä on sisäänrakennettuna tuki 802.1x-protokollalle. Sen voi konfiguroida minkä tahansa verkkokortin tiedoista (properties -> authentication). Muille käyttöjärjestelmille pitää useimmiten löytää erillinen ohjelmisto, mutta myös verkkokortin ajureissa voi olla tuki 802.1x:lle.