You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 33 Next »


TunnisteFunetin Parhaat käytännöt -dokumentti
Versio0.1
Tiladraft
Päiväys20.3.2015
Otsikkoeduroam ja varmennekäytännöt
TyöryhmäMobileFunet
LaatijatTomi Salmi/CSC, Tuukka Vainio/Turun yliopisto
VastuutahoTomi Salmi/CSC
Tyyppisuositus

 

1. Johdanto

Varmenteita eli sertifikaatteja käytetään tietotekniikassa laajasti varmentamaan viestinnän osapuolet toisilleen. Esimerkiksi verkkopalvelun käyttäjä voi varmenteen avulla varmistua, että hän on asioimassa oikean palvelimen ja toimijan kanssa. Pelkkä varmenne ei kuitenkaan vielä lisää tai toteuta tietoturvaa, vaan varmenne on pelkästään tapa tallentaa tietoa yhteisesti sovitulla tavalla. Kuka tahansa voi luoda rajattomasti varmenteita, mutta vasta varmenteeseen tallennetut tiedot ja niiden varmistamisen mahdollisuus kokonaisuutena lisäävät tietoturvaa. Kansainvälisessä verkkovierailujärjestelmässä eduroamissa varmennetarkistus on osa autentikointia. Tähän dokumenttiin on koottu eduroamissa hyväksi todettuja varmennekäytäntöjä, jotta saavutettaisiin mahdollisimman hyvä yhteensopivuus erilaisten päätelaitteiden kanssa tietoturvaa unohtamatta. Dokumentti on suunnattu erityisesti eduroamin käyttöönottovaiheessa oleville verkkoylläpitäjille.

2. Varmenteet eduroamissa

Liityttäessä eduroam-verkkoon varmennetta käytetään EAP-autentikoinnin (Extensible Authentication Protocol) yhteydessä varmentamaan käyttäjälle, että tämä on tekemisissä oikean RADIUS-palvelimen kanssa ennen käyttäjätunnuksen ja salasanan luovuttamista. Tätä varten palvelimelle on hankittava X.509-palvelinvarmenne, joka voi olla joko itseallekirjoitettu (oma CA, Certification Authority) tai hankittu tunnetulta luotetulta CA:lta. Näiden eroja on käsitelty kappaleessa 2.1. Käyttäjien päätelaitteisiin täytyy jaella ja ottaa käyttöön juurivarmenteen julkinen osa. Palvelinvarmenteen ja juurivarmenteen välissä saattaa olla vaihteleva määrä välivarmenteita. Varmenneketjun hallinnasta ja jakelusta on kirjoitettu kappaleessa 2.2. Kolmas kappale luettelee varmenteen teknisiä ominaisuuksia mahdollisimman hyvän päätelaiteyhteensopivuuden takaamiseksi.

2.1 Oma vai julkinen CA?

Varmenteella on aina joku myöntäjä, eli varmentaja (CA, Certification Authority). Varmenteen voi hankkia luotetulta julkiselta CA:lta, tai ylläpitäjä voi pystyttää ylläpidettäväkseen oman CA:n. Omalla CA:lla varmenteita voi luoda maksutta rajattomasti, mutta CA:n ylläpito edellyttää julkisten avainten hallintajärjestelmän (PKI, Public Key Infrastructure) tuntemusta. CA:n ylläpidosta koituu kustannuksia ainakin tehdyn työn kautta. Oman CA:n käytössä haittapuolena eduroamissa on se, ettei mikään päätelaite lähtökohtaisesti tunne tällaista CA:ta, joten varmenteen julkinen osa on asennettava jokaiseen päätelaitteeseen erikseen. Varmenne voidaan jaella esimerkiksi sähköpostitse tai intranetin kautta, mutta jakelumalli sekä käyttäjäohjeistus on suunniteltava hyvin. Lisäksi on muistettava, että juurivarmenteen vaihtuminen aiheuttaa sen, että kaikkien sen varaan konfiguroitujen päätelaitteiden varmenne on uusittava. Oman CA:n varmenteelle kannattaa tämän vuoksi asettaa pitkä voimassaoloaika. Omia varmenteita tehtäessä tulee kiinnittää huomiota myös varmennetiedostojen kokoon. Omalla CA:lla voi helposti tulla luoneeksi tarpeettoman isoja varmenteita, mikä hidastaa EAP-kättelyä. Monien RADIUS-palvelinten mukana toimitetaan testikäyttöön tarkoitettu testivarmenne. Tällaista testivarmennetta ei luonnollisestikaan pidä käyttää tuotantoympäristössä.

Käytettäessä tunnettua CA:ta varmenteen julkinen osa voi löytyä valmiina ainakin osasta päätelaitteita. Vaikka varmenne löytyisi päätelaitteesta valmiina, se pitää osata valita verkon asetuksia määritettäessä, mikä edellyttää jälleen käyttöjärjestelmäkohtaista ohjeistusta. Valittiinpa joko julkinen tai oma CA, käyttäjiä on joka tapauksessa ohjeistettava noutamaan ja asentamaan tai vähintäänkin valitsemaan päätelaitteesta oikea varmenne verkkoasetuksia määriteltäessä.

Tunnetun CA:n käyttämisessä on olemassa yksityistä CA:ta suurempi riski "Man in the Middle" -hyökkäyksille. Riski seuraa siitä, että kaikki päätelaitteet eivät tee varmennetarkistusta riittävän kattavasti. Jotkut päätelaitteet esimerkiksi tarkistavat vain, että palvelinvarmenteen myöntäjä on sama kuin juurivarmenteella, mutta jättävät tarkistamatta, että palvelinnimi (CN, Common Name) täsmää palvelimeen, johon ollaan yhdistämässä. Vihamielinen käyttäjä voi tällöin pystyttää RADIUS-palvelimen ja hankkia sinne saman tunnetun CA:n allekirjoittaman aidon varmenteen kalastellakseen käyttäjien tunnuksia ja salasanoja. Varmenteen puutteellinen tarkistus koskee erityisesti vanhempia Android-käyttöjärjestelmän versioita. Mahdollisuus kattavaan tarkistukseen tuli Androidin versiossa 4.3 (Jelly Bean). IT-tuen tulisi mahdollisuuksien mukaan ohjeistaa ja varmistaa, että käytetty varmenne ja palvelimen nimi on määritetty käyttäjien konfiguraatioissa.

Automaattiprovisointityökaluja, kuten eduroam CAT:a (eduroam Configuration Assistant Tool) tai MDM-järjestelmiä (Mobile Device Management) käytettäessä varmenteen asentaminen päätelaitteeseen ei enää muodostu kynnyskysymykseksi pohdittaessa valintaa tunnetun CA:n tai itseallekirjoitetun varmenteen välillä. Lisäksi itseallekirjoitetulla varmenteella on saavutettavissa mainittuja tietoturvahyötyjä, minkä vuoksi sitä voi pitää kahdesta vaihtoehdosta suositeltavampana jos tarvittava CA-osaaminen löytyy. Oman yksityisen CA:n ja julkisen CA:n kautta hankitun varmenteen edut ja haitat on koottu alla olevaan taulukkoon.

Oma yksityinen CAJulkinen CA
Edut
  • Varmenteet maksuttomia
  • Tietoturvahyödyt
  • Varmenne mahdollisesti valmiina päätelaitteissa
Haitat
  • Edellyttää PKI-osaamista
  • Varmenteen jakelu päätelaitteisiin järjestettävä
  • Yleensä maksullinen
  • Suurempi riski Man in the Middle -hyökkäyksille

Itseallekirjoitetun ja julkisen CA:n allekirjoittaman varmenteen käytön edut ja haitat.

Eurooppalaisilla kansallisiin tutkimusverkkoihin (NREN, National Research and Education Network) kuuluvilla organisaatioilla on mahdollisuus liittyä oman paikallisen NREN:n kautta yhteiseurooppalaisesti kilpailutettuun GÉANT Associationin tarjoamaan varmennepalveluun (TCS, TERENA Certificate Service). Palvelun kautta organisaatiot voivat hankkia omaan käyttöönsä TERENA:n allekirjoittamia palvelinvarmenteita. Suomessa Funet (Finnish University and Research Network) tarjoaa palvelua Suomen korkeakouluille ja muille jäsenilleen. [1] 

2.2 Varmenneketjun hallinta ja jakelu 

Autentikointipalvelimen ja päätelaitteen autentikoinnin yhteydessä käytettävä varmenneketju koostuu juurivarmenteesta, mahdollisista välivarmenteista sekä palvelinvarmenteesta. Päätelaitteessa tulee olla vähintään luotettu juurivarmenne ennen eduroam-autentikoinnin aloittamista. Päätelaitteissa on vaihtelevasti tunnettujen CA:iden varmenteita, ja itseallekirjoitetut niistä luonnollisesti puuttuvat kokonaan. Ylläpitäjien tulee toteuttaa juurivarmenteen jakelu tai tuottaa käyttöjärjestelmäkohtainen loppukäyttäjäohjeistus siitä miten ja mistä varmenteen voi noutaa ja asentaa. Loppukäyttäjien avuksi suunnattuja helppokäyttöisiä provisiointisovelluksia, kuten eduroam CAT:ia kannattaa hyödyntää mahdollisuuksien mukaan. 

RADIUS-tunnistautumispalvelin lähettää autentikointivaiheessa vähintään palvelinvarmenteen. Varmenneketjun välivarmenteet voidaan siirtää EAP-autentikoinnin yhteydessä tai ne voidaan tallentaa päätelaitteeseen juurivarmenteen tavoin etukäteen. Jos välivarmenteet ovat valmiina päätelaitteessa, vähenee EAP-kättelyn tiedonsiirron tarve, mikä nopeuttaa autentikointia. Varmenneketjussa voi olla useita välivarmenteita, ja määrän lisääntyessä myös autentikoinnin ajallinen kesto pitenee.

Erityisesti omalla CA:lla tehtynä varmenteiden kokoon tulee kiinnittää huomiota. Kasvava koko paitsi pidentää kättelyä, saattaa myös keskeyttää sen kokonaan. Päätelaitteiden yleinen maksimikoko varmenneketjulle on 64 kilotavua, mikä edellyttää noin 60 edestakaista EAP-lähetystä. Monet tukiasemat katkaisevat EAP-kättelyn jo 50 lähetyksen kohdalla. [2]

Toimivuuden kannalta koko varmenneketjun tallentaminen päätelaitteeseen provisiointityökalulla on varmin ratkaisu. Applen käyttöjärjestelmillä (ainakin iOS 7 ja 8) on ollut ongelmia TERENA TCS:n varmenneketjun kanssa, koska ketjun nykyinen välivarmenne on aiemmin ollut itseallekirjoitettu juurivarmenne. Käyttöjärjestelmässä luotettuna on sen itseallekirjoitettu versio, eikä iOS siksi hyväksy saman varmenteen uutta versiota EAP-kättelyn yhteydessä.


2.3 Varmenteen ominaisuudet

Seuraavassa on listattu muutamia varmenteiden ominaisuuksia sekä niihin liittyviä suosituksia. Ohjeilla pyritään mahdollisimman hyvään yhteensopivuuteen erilaisten päätelaitteiden ja käyttöjärjestelmien kanssa.

Palvelimen nimi

Palvelimen nimi tulee syöttää varmenteen Subject-kenttään nimitiedoksi (CN, Common Name) täydellisenä toimialuenimenä (FQDN, Fully Qualified Domain Name). Suositeltavaa on asettaa sama nimi myös subjectAltName-tietoihin. Niin sanottuja wildcard-nimiä ei pidä käyttää.

Allekirjoitusalgoritmi

Suositeltavin on SHA-2 (esim. SHA-256). SHA-1-algoritmin tuki on hiljalleen päättymässä, ja MD5-algoritmia ei pitäisi käyttää enää missään.

Avaimen pituus

Jotkut käyttöjärjestelmät eivät hyväksy alle 1024-bittisiä avaimia. Uusiin ympäristöihin kannattaa ottaa käyttöön 2048-bittiset avaimet.

CRL Extension

Windows 8 ja Windows Phone 8 vaativat tai ne on mahdollista konfiguroida vaatimaan CRL URL, jolloin URL on oltava oikeanmuotoinen. Kumpikaan käyttöjärjestelmä ei kuitenkaan lataa varsinaista CRL-tiedostoa, vaikka URL olisi määritelty.

BasicConstraint Extension

Ainakin OS X Mountain Lionin kanssa on todettu ongelmia jos BasicConstraint-määritys puuttuu. Asetuksen on oltava “CA:FALSE (critical)”, eli palvelinvarmenne ei ole CA-varmenne.

X509v3 Extended Key Usage (EKU)

Windowsit edellyttävät, että määriteltynä on vähintään yksi ominaisuus. EAP-käytössä eduroamissa ominaisuutena on "Server authentication". [3]

2.4 Käyttäjätuki

Kun eduroam on otettu kampuksella käyttöön, sen olemassaolosta tulee viestiä kattavasti. Lisäksi tarvitaan käyttöjärjestelmäkohtainen selkeä ohjeistus eduroamin tietoturvallisesta konfiguroinnista eri päätelaitteisiin. Vaikka organisaation omassa ylläpidossa olevien laitteiden määritykset hoituisivat automaattisesti käyttäjien huomaamatta, on käyttäjien omien laitteiden tukemiseksi suositeltavaa tuottaa loppukäyttäjäohjeistukset. Ylläpitäjiltä on vastuutonta neuvoa ohittamaan varmennetarkistukset, vaikka siten saatetaankin päästä helpommalla ohjeistuksissa. Tämä kuitenkin heikentää tietoturvaa ja ohjaa käyttäjiä vääränlaiseen toimintatapaan.

Tietyt käyttöjärjestelmät on helppo konfiguroida väärin ja vieläpä niin, että verkko toimii kotiverkossa, mutta ei vierailtaessa muun organisaation ylläpitämässä eduroamissa. Erinomainen työkalu loppukäyttäjien eduroam-käyttöönoton helpottamiseen on eduroam CAT [4]. Työkalulla verkkoylläpitäjät voivat luoda omille käyttäjilleen helppokäyttöiset organisaatiokohtaiset eduroam-asennuspaketit. Oman eduroam-verkon tiedot kuten RADIUS-palvelimen nimi, tuetut EAP-tyypit sekä varmenneketju syötetään CAT-palveluun, joka generoi valmiit asennuspaketit. Kun määritykset ovat valmiit, käyttäjät voivat noutaa asennuspaketit CAT-sivustolta. Esimerkiksi omaan intranetiin CAT-linkin voi luoda niin, että käyttäjä päätyy suoraan oman organisaation asennuspakettien lataussivulle. Asennusohjelmien käyttö ei edellytä käyttäjältä verkko-osaamista. CAT:n on todettu vähentävän IT-tuen tehtäviä eduroam-asioissa. Palvelun käyttö on maksutonta, ja käyttöönotto aloitetaan ottamalla yhteyttä omaan paikalliseen NRENiin, Suomessa Funetiin.

3. Lähteet

[1] https://www.csc.fi/-/varmennepalvelu

[2] http://wiki.freeradius.org/guide/Certificate-Compatibility 

[3] https://support.microsoft.com/en-us/kb/814394

[4] https://cat.eduroam.org/



  • No labels