Trådløskurs del 2, dag 2 Sesjon 6 Fredag 20.04.2006 kl. 09:00-10:30 kolbjorn.barmen@uninett.no
Agenda - RADIUS Hva gjør RADIUS-tjeneren? TLS vs. TTLS vs. PEAP Klientsertifikater og revocation-lister 2 MSCHAPv2 og brukerdatabase VLAN-tildeling Sikring av RADIUS-trafikk Eduroam
TLS vs. TTLS vs. PEAP Forespørsel kommer fra klient (AP) Klient sjekkes Gyldig klient? Delt hemmelighet stemmer? Forbindelse opprettes. 3 Klient sender forespørsel (Access Request) med ytre identitet og EAP-melding med EAP start. Tjener finner realm basert på ytre identitet og avgjør om det er lokal bruker eller noe som skal proxyes. EAP-melding angir også om det er TLS, TTLS eller PEAP.
TLS... Dersom EAP-melding fra klient sier TLS: Initier EAP-samtale over TLS (radius pludring mellom eap-klient og tjener. Klient sender (omsider) en forespørsel der EAPmelding inneholder klient-sertifikat. Tjener sjekker klient-sertifikatet og avgjør om det er godkjent eller ikke ut fra sine kjente CA-sertifikat. Radius kan settes opp til å gjøre flere sjekker, for eksempel sjekke CN mot brukerdatabase. Tjener sender melding til klient (AP) med ok eller reject. 4
TTLS (Tunneled TLS) & PEAP (Protected EAP) Dersom EAP-melding fra klient sier TTLS eller PEAP Initier EAP-samtale over TLS ( pludring ) Klient sender EAP-melding med MSCHAPv2-pakke som inneholder indre brukernavn og passord som NT-hash. Tjener pakker opp MSCHAPv2-pakken, finner bruker i brukerdatabase (fil, sql, ldap...) og henter ut NT-hash. Tjener sammenligner NT-hash fra brukerdatabase med NThash fra MSCHAPv2-pakken. Tjener sender melding til klient (AP) med ok eller reject. 5 TTLS og PEAP behandles ganske likt på radiustjener.
Hva er forskjellen på TTLS og PEAP? EAP-TTLS er fra Funk, Software standardisert først. PEAP er fra Microsoft, RSA og Cisco. Forskjellen ligger i innholdet i EAP-meldingene, ulike språk. Det finnes også mange PEAP-varianter, men Microsoft støtter kun PEAPv0/EAP-MSCHAPv2 det vi kaller PEAP. Cisco (+ noen andre) støtter PEAPv0/EAP-SIM, PEAPv1/EAP-GTC, PEAPv2 og nye EAP-varianter kommer EAP-TTLS kan bruke mye annet enn MSCHAPv2 (MD5, crypt m.fl.) Den PEAP som brukes i dag kan kun bruke MSCHAPv2 6
RADIUS-tjenere Radius-servere som støtter EAP: FreeRadius(TLS, TTLS, PEAP) Microsoft Windows 2000 RADIUS server (TLS,PEAP) Cisco ACS (TLS,PEAP) Funk Steel-Belted RADIUS (TLS, TTLS, PEAP) Meetinghouse Aegis (TLS, TTLS, PEAP) Radiator (TLS, TTLS, PEAP) 7
TLS - klientsertifikater, CRL og OCSP Ved bruk av klientsertifikater vil det være nødvendig å kunne sperre et gitt sertifikat før det går ut på dato. Dette kan gjøres på to måter: CRL Certificate Revocation List CA genererer en liste over sertifikater som er ugyldige og denne listen kopieres manuelt inn på radiustjener. OCSP - Online Certificate Status Protocol Radiustjener spør en tjeneste om sertifikat er gyldig. CRL krever en prosedyre for oppdatering hos tjenere. 8 Finnes det OCSP-støtte i noen radiustjenere?
MSCHAPv2 og brukerdatabaser Ved bruk av MSCHAPv2 får radiustjener passordet i form av en NT-hash fra klienten. Dersom radius har tilgang til brukerpassord i klartekst kan radius selv generere NT-hash og sammenligne Dersom radius ikke har tilgang til klartekstpassord må den ha tilgang til ferdighashet passordstreng. Radiustjener kan hente brukerdata fra LDAP, SQL, flate filer m.m. 9
Hva med FEIDE? FEIDE tilbyr per i dag hverken passord i klartekst eller passord i form av en NThash. En FEIDE-bruker ligger typisk i LDAP med en SMD5-hash som passord og det forventes at en tjeneste binder seg mot FEIDE med det rette passordet. Dette vil forhåpentligvis endre seg i fremtiden. 10
VLAN-tildeling Ved å sende spesiell radius-attributt til basestasjon kan radiustjener fortelle basestasjon hvilket VLAN en klient skal flyttes til. Dette gjøres typisk i users-fila og kriteriene kan være omtrent hva som helst. Eksempelvis bruker UNINETT LDAP-group som bestemmes av LDAP-oppsettet til Freeradius. 11
Sikring av RADIUS-trafikk Bruk gjerne egne beskyttede VLAN mellom radiustjenere og basestasjon om mulig. Delt hemmelighet bør ikke være banal. RADSEC er en mulig framtidig løsning 12 Radiuspakker blir sendt over en TLSkryptert TCP-forbindelse mellom radiusklient og radiustjener i stedet for dagens UDP. Foreløpig kun støttet i Radiator Andre mulige tiltak?
eduroam eduroam er et roaming-samarbeid mellom NRENer i Europa, samt noen få andre (Australia, Taiwan) Gjennom et RADIUS hierarki kan man få tilgang til nettverk hos andre medlemmer i samarbeidet. 13 RADIUS kobling mot nasjonalt top-nivå (UNINETT, som igjen er koblet mot europeisk top-nivå) Felles SSID eduroam hos alle. http://www.eduroam.no http://www.eduroam.org
eduroam-ng? Kanskje RADSEC Deler av eduroam-nettet kan legges over til RADSEC uten at det går ut over funksjonaliteten for de andre. DNSRoaming Omgå radius-hierarkiet ved å bruke DNS 14 dig srv _radsec._tcp.home.uninett.no DIAMETER i stedet for RADIUS Mer avansert, enklere å koble mot FEIDE, edugain... Finnes ikke støtte for hos leverandører per idag Alt er foreløpig bare på test-stadiet.