Changes between Version 55 and Version 56 of WikiStart


Ignore:
Timestamp:
May 10, 2013, 12:37:35 PM (12 years ago)
Author:
walter
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • WikiStart

    v55 v56  
    1010
    1111Als oplossing draagt onderwijsinstelling Y [http://www.eduroam.org eduroam] aan. Hiervoor gaan beide onderwijsinstelling X en Y de naam van hun draadloze netwerk gelijkmaken aan de generieke naam "eduroam". Wanneer (gast)gebruikers van onderwijsinstelling X bij onderwijs instelling Y op bezoek zijn, gaan hun laptops, tablets of telefoons automatisch het gelijknamige netwerk van onderwijsinstelling Y op. Dit zou direct werken zou je denken, maar helaas nog niet om de volgende rede. Onderwijsinstelling Y heeft natuurlijk niet de personendatabase met inloggegevens van onderwijsinstelling X om gebruikers van X tegen te authenticeren, dus gebruikers van X op het netwerk bij Y krijgen alsnog de melding dat hun inloggegevens niet worden herkend omdat ze als X in de personendatabase van Y ontbreken, logisch toch!
    12 Wanneer onderwijsinstelling Y nu alleen de authenticatie "aanvragen" door stuurd via een "centrale radius proxy" op internet die op zijn beurt weer doorgekoppeld is aan de personendatabase van de eigen onderwijsinstelling (X in dit geval) en de autorisatie "goedkeuringen" via diezelfde route weer terug afleverd bij de instelling waar de gebruiker zich op het netwerk bevind, dan blijven de persoonsgegevens binnen de eigen onderwijsinstelling waar ze horen en kan de gebruiker na autorisatie bij de andere instelling direct het netwerk/internet op en gebruiken. Dit allemaal zonder dat gebruiker ook maar iets aan zijn of haar eigen apparaat en of instellingen hoeft te veranderen!
     12Wanneer onderwijsinstelling Y nu alleen de authenticatie "aanvragen" van gebruikers die ontbreken in zijn personendatabase, door stuurd via een "centrale radius proxy" op internet die op zijn beurt weer gekoppeld is aan de personendatabase van de eigen onderwijsinstelling (X in dit geval) en de autorisatie "goedkeuringen" via diezelfde route weer terug afleverd bij instelling Y waar de gebruiker X zich op het netwerk bevind, dan blijven de persoonsgegevens binnen de eigen onderwijsinstelling waar ze horen en kan de gebruiker na autorisatie bij de andere instelling direct het netwerk/internet op en gebruiken. Dit allemaal zonder dat gebruiker ook maar iets aan zijn of haar eigen apparaat en of instellingen hoeft te veranderen!
    1313
    1414Dit eduroam systeem maakt het als onderwijsinstelling mogelijk om in een strikter wordend klimaat van beveiliging, geslotenheid en aansprakelijkheid toch verantwoordelijk een dienst dat open en toegankelijk is van karakter te bieden.
     
    2121Als partieel serviceprovider koppelt Wireless Leiden eduroam gebruikers automatisch en beveiligd door aan de daarvoor aangewezen (onderwijs)netwerken. Een onderwijsinstelling vervult vaak meerdere rollen binnen het eduroam project inclusief internet-gateway, maar Wireless Leiden beperkt zich puur tot de ondersteunende koppeling en integratie van deze diensten.
    2222
    23 Het unieke aan dit project is niet het scheiden van de identity/service provider eigenschap, maar de integratie van de verdeelde diensten over het onafhankelijk en "open" netwerk van Wireless Leiden dat zich letterlijk buiten de deur huisvest.
    24 Het exploiteren op stadsniveau van eduroam toegang via het Wireless Leiden netwerk was niet alleen een uitdaging, maar is nu ook nog eens eenvoudig, flexibel en betaalbaar! De huidige implementatie is een win-win situatie voor betrokken partijen, door de huidige multi SSID techniek neemt zowel de dekking van het eduroam netwerk van een (sponserende) onderwijs-instelling als het netwerk van Wireless Leiden toe. Dit in tegenstelling tot de vaak beperkt inpandige en eenzijdige exploitatie door onderwijsinstellingen van hun eigen geisoleerde fysieke en gesloten infrastructuur, die zich gemakkelijk door het graven/leggen van dure kabelverbindingen laat uitstellen of zelfs afstellen.
    25 
    26 TODO korte geschiedenis nog toevoegen!
    27 
    28 *Ontwikkelaars van Wireless Leiden zelf kunnen de roaming eigenschap van deze infrastuctuur alleen gebruiken, testen en ontwikkelen wanneer ze beschikken over een geldig accountsnaam en wachtwoord dat geleverd is door een aan eduroam/surf foundation gelieerde identity provider. Als voorbeeld Universiteit Leiden of Hogeschool Leiden. Wel zou er voor hen via een interne identity provider van Wireless Leiden zelf een account gemaakt kunnen worden, maar omdat deze niet centraal gekoppeld is werkt dit niet wanneer ontwikkelaars van het Wireless Leiden eduroam netwerk naar het Universiteits eduroam overgaan. Het Universiteits eduroam netwerk kan namelijk via de centrale server niet bij de onbekende Wireless Leiden interne identity provider komen en zal deze mensen niet op zijn netwerk toelaten. Hiermee word direct duidelijk dat een wederzijdse samenwerking nodig is om het onbegrensde karakter eduroam(ing) te laten werken en beschermen! Een andere mogelijkheid zou het aanvragen van een test-account bij de surf foundation zijn.
     23Het unieke aan dit project is niet het scheiden van de identity/service provider eigenschap, maar de integratie van de fysiek verdeelde en gescheiden diensten over het onafhankelijk en "open" netwerk van Wireless Leiden dat zich letterlijk buiten de deur huisvest.
     24Het exploiteren op stadsniveau van eduroam toegang via het Wireless Leiden netwerk was niet alleen een uitdaging, maar is nu ook nog eens eenvoudig, flexibel en betaalbaar! De huidige implementatie is een win-win situatie voor betrokken partijen, door de huidige multi SSID techniek neemt zowel de dekking van het eduroam netwerk van een (sponserende) onderwijs-instelling als dekking van het netwerk van Wireless Leiden toe. Dit in tegenstelling tot de vaak beperkt inpandige en eenzijdige exploitatie door onderwijsinstellingen van hun eigen geisoleerde fysieke en gesloten infrastructuur, die zich gemakkelijk door het graven/leggen van dure kabelverbindingen laat uitstellen of zelfs afstellen.
     25
     26De knowhow is de afgelopen paar jaar in samenwerking met Hogeschool Leiden uit diverse projecten tot stand gekomen waaronder:
     27 - het [http://svn.wirelessleiden.nl/svn/projects/802.1x/afstudeerproject_2008/afstudeerverslag.pdf afstudeerverslag] van Richard van Manson,
     28 - het C.U.G.A.R project van H.L. studenten (ondersteund door [http://nlnet.nl/project/cugar Stichting NLnet] met externe begeleiders),
     29 - het parallel ontwikkelde prototype door Richard van Manson als vrijwilliger bij Wireless Leiden (uitgangspunt voor huidige opzet),
     30Met tenslotte een succesvolle testcase van het prototype met dank aan [http://www.surfnet.nl Surfnet] dat heeft geresulteerd in de "bijna" alles omvattende en sluitende handleiding (die u nu leest) voor het op grote schaal implementeren en uitrollen van de eduroam infrastructuur op het Wireless Leiden netwerk door Walter Sonius.
     31
     32*Ontwikkelaars van Wireless Leiden zelf kunnen de roaming eigenschap van deze infrastuctuur alleen gebruiken, testen en ontwikkelen wanneer ze beschikken over een geldig eduroam accounts -naam en -wachtwoord. Dit dient geleverd te zijn door een aan eduroam/surf foundation gelieerde identity provider. Als voorbeeld beschikken studenten/scholieren en mederwerkers van Universiteit Leiden of Hogeschool Leiden hierover. Het aanvragen van een eduroam test-account voor een ontwikkelaar van wireless-leiden bij de Surffoundation behoort tot de mogelijkheden.
    2933
    3034== technische en organisatorische benodigdheden ==
     
    829833{{{
    830834## Allows forwarding
    831 cat /proc/sys/net/ipv4/ip_forward
     835cat /proc/sys/net/ipv4/ip_forward #shows current off state
    832836echo "1" > /proc/sys/net/ipv4/ip_forward
     837cat /proc/sys/net/ipv4/ip_forward #shows current on state ?
    833838
    834839## add the following firewall masquerade code "quick and dirty" at the end of the file before exit0!
     
    865870
    866871==== 3.1 setup certnode ====
    867 Op een ubuntu 12.04LTS installatie of livecd moet je het easy-rsa pakket dat met "openvpn" komt installeren. Opmerking, houd er rekening mee dat wanneer dit op een livecd gedraait word natuurlijk het permanente karakter verloren gaat! De inhoud van de /etc/openvpn map moet dan natuurlijk bewaard worden anders zal er per livecd sessie, opnieuw server certificaten gegenereerd moeten worden waardoor de afgeleide client certificaten en key's met de server certifcaten uit eerdere/oudere livecd sessie natuurlijk incompatible zijn! TODO Wellicht komt er een aanpassing van dit script zodat die direct voor verschillende users op sunfire zelf functioneert!
     872Op een ubuntu 12.04LTS installatie of livecd moet je het easy-rsa pakket dat met "openvpn" komt installeren. Opmerking, houd er rekening mee dat wanneer dit op een livecd gedraait word natuurlijk het permanente karakter verloren gaat! De inhoud van de /etc/openvpn map moet dan natuurlijk bewaard worden anders zal er per livecd sessie, opnieuw server certificaten gegenereerd moeten worden waardoor de afgeleide client certificaten en key's met de server certifcaten uit eerdere/oudere livecd sessie natuurlijk incompatible zijn!
    868873
    869874Setup openvpn easy-rsa certnode
     
    906911cd keys
    907912openvpn --genkey --secret ta.key #tls key goed genoeg???
    908 sudo cp eduradprox.crt eduradprox.key ca.crt dh1024.pem ta.key ../../ #kopieer ze natuurlijk naar de radius-server/proxy die instap 2 gemaakt is!
     913sudo cp eduradprox.crt eduradprox.key ca.crt dh1024.pem ta.key ../../ #! copy these to the "radius-server/proxy & gatewat" made in step 2.1b <---
    909914
    910915## setup script for easy client certificate/key genereting individuel AP's
     
    912917}}}
    913918
    914 #example code# /usr/local/bin/eduroam-ap-openvpn-client
     919#example code# /usr/local/bin/eduroam-ap-openvpn-client-cert
    915920{{{
    916921#!/bin/sh
     
    961966{{{
    962967## flag executable
    963 sudo chmod +x /usr/local/bin/eduroam-ap-openvpn-client
     968sudo chmod +x /usr/local/bin/eduroam-ap-openvpn-client-cert
    964969
    965970## fix /etc/openvpn/easy-rsa-/keys/packages permissions?
     971#sudo chmod -R 755 /etc/openvpn/easy-rsa-/keys/packages #!????
    966972
    967973## setup openvpn client config see example
     
    988994}}}
    989995
     996The permanent and single setup instance for the openvpn "certnode" is done! For creating subsequent client keys/certificates see 3.2/3.3.
     997 
    990998==== 3.2 certnode client ====
    991 The permanent and single setup instance for the openvpn "certnode" is done! When adding new/extra "eduroam" AP's to the network, generate a *.tar with unique set of keys/config for each AP with the following command, it ends up in the ~/ user home folder!
     999When adding new/extra "eduroam" AP's to the network, generate a *.tar with unique set of keys/config for each AP running the following command on the certnode. The resulting tar file will end up in the ~/ user home folder.
    9921000{{{
    9931001## replace $unique-ap-name with the name of your AP
    994 sudo /usr/local/bin/eduroam-client-openvpn-cert $unique-ap-name
     1002sudo /usr/local/bin/eduroam-ap-openvpn-client-cert $unique-ap-name
    9951003}}}
    9961004
    9971005==== 3.3 certnode client@sunfire ====
    998 Wireless Leiden leden die toegang hebben tot certnode "sunfire" kunnen daar inloggen en met sudo rechten het commando "eduroam-ap-openvpn-client" uitvoeren. Dat zal in een ~/. home folder een *.tar bestand genereren dat certificaten/keys/config voor het op te zetten AP bevat.
    999 {{{
    1000 sudo /usr/local/bin/eduroam-ap-openvpn-client $unique-ap-name
     1006Wireless Leiden leden die toegang hebben tot certnode "sunfire" kunnen daar inloggen en met sudo rechten het commando "eduroam-ap-openvpn-client" uitvoeren. Dat zal in hun ~/. home folder een *.tar bestand genereren dat certificaten/keys/config voor het op te zetten AP bevat.
     1007{{{
     1008sudo /usr/local/bin/eduroam-ap-openvpn-client-cert $unique-ap-name
    10011009}}}
    10021010
     
    10061014De afgelopen jaren is een technische oplossing ontwikkeld, in samenwerking met de Hogeschool Leiden, om Eduroam mogelijk te maken over een open netwerk zoals dat van Wireless Leiden.
    10071015
    1008  - het afstudeerverslag van Richard (technisch is er een andere oplossing ontwikkeld, maar de algemene aanpak wordt hierin beschreven): http://svn.Wireless Leiden.nl/svn/projects/802.1x/afstudeerproject_2008/afstudeerverslag.pdf
     1016 - het afstudeerverslag van Richard (technisch is er een andere oplossing ontwikkeld, maar de algemene aanpak wordt hierin beschreven): http://svn.wirelessleiden.nl/svn/projects/802.1x/afstudeerproject_2008/afstudeerverslag.pdf
    10091017 - na het afstudeerverslag van Richard zijn enkele studenten bezig geweest een technische oplossing te ontwikkelen, onder andere met steun van Stichting NLnet: http://www.cugar.org, http://nlnet.nl/project/cugar/ en externe begeleiders
    10101018 - parallel is een wat andere oplossing ontwikkeld door Richard, als vrijwilliger van Wireless Leiden op basis van [http://www.ubiquiti.com Ubiquiti] hardware (bullet2HP).
     
    10171025 - bouw een keer de OpenWRT-image
    10181026 - upload de image naar de Bullet2HP
    1019  - upload individuele vpn info naar de bullet (dus niet openwrt opnieuw bouwen)
     1027 - aanmaken individuele vpn info
     1028 - upload deze info naar bullet (dus niet openwrt opnieuw bouwen)
    10201029
    10211030=== B.1 Opzetten van een host machine voor OpenWRT-images ===
     
    10461055}}}
    10471056
     1057=== B.2 upload custom OpenWRT-images naar bullet ===
    10481058Volgende stappen nog niet getest
    10491059 6. A. If you have a fresh new Air OS install you can upload the following image to
     
    10781088 7. Default password: Edur0@m
    10791089
     1090=== B.4 upload individuele openvpn info naar iedere bullet ===
    10801091 8. Creating unique vpn info:
    10811092
     
    11111122      5. in you home directory "on cert node sunfire itself" there will be a file called <name>.tar, copy this file
    11121123         to a network reachable the bullet locally
     1124
     1125=== B.3 aanmaken individuele vpn info voor iedere bullet ===
    11131126      6. untar it:
    11141127{{{
     
    11401153De Authenticatieserver is een Radiusserver. De gebruikersaccounts van een Eduroam-instelling zijn niet beschikbaar bij andere instellingen (dus ook niet bij Wireless Leiden). Om 802.1x/Eduroam op het Wireless Leiden netwerk te laten werken zijn geen gebruikersaccounts nodig, de authenticatieverzoeken kunnen doorgezet worden naar de Surfnet-Radiusserver (proxy). De Surfnet-Radiusserver stuurt het verzoek op zijn beurt door naar de Radiusserver van de deelnemende instelling waaraan de gebruiker verbonden is. De Radiusserver van deze deelnemende instelling bevat de gebruikersaccounts. De Accept of de Reject op het authenticatieverzoek wordt via het zelfde pad teruggestuurd, waarna de node toegang verschaft (of niet).
    11411154
    1142 Op basis van het afstudeerwerk van Richard is [http://http://freeradius.org/ Freeradius] voor de Radiusserver. Deze open-sourcesoftware voldoet aan de eisen en Freeradius is ook wat betreft beschikbare opties de meest aantrekkelijke open-source Radiusserver.
    1143 
    11441155Uitgangspunt: (embedded) pc met Freebsd 8.3(i386), minimal install
    11451156
     
    11771188{{{
    11781189mkdir /usr/local/etc/openvpn #folder niet aanwezig
    1179 /usr/local/bin/svn co http://svn.Wireless Leiden.nl/svn/code/eduroam-bullet/trunk/openvpn-wl/
    1180 /usr/local/etc/openvpn
    1181 }}}
    1182 
    1183 vervang /usr/local/etc/raddb
     1190/usr/local/bin/svn co http://svn.Wireless Leiden.nl/svn/code/eduroam-bullet/trunk/openvpn-wl/ /usr/local/etc/openvpn
     1191}}}
     1192
     1193checkout freeradius
    11841194{{{
    11851195rm -R /usr/local/etc/raddb
     
    11881198}}}
    11891199
    1190 ###edit only three files under /usr/local/etc/freeradius: users, eap.conf, and clients.conf
    1191 
    1192 {{{
    1193 svn checkout http://svn.Wireless Leiden.nl/svn/code/eduroam-bullet/trunk/files/ /usr/local/etc/ --depth empty
     1200setup final config files and scripts
     1201{{{
     1202/usr/local/bin/svn checkout http://svn.Wireless Leiden.nl/svn/code/eduroam-bullet/trunk/files/ /usr/local/etc/ --depth empty
    11941203cd /usr/local/etc/
    11951204svn up dhcpd.conf
    11961205}}}
    11971206
    1198 B. Toevoegingen aan het configuratiebestand /etc/rc.conf
    1199 
     1207#add to# /etc/rc.conf
    12001208{{{
    12011209# enable: Freeradius
     
    12411249de handleiding van de "certnode" creeert natuurlijk een openvpn server op de certnode zelf, nog testen of je openvpn kan verwijderen en de easy-rsa bestande ergens anders kan plaatsten?
    12421250
    1243 sunfire FIXEN?
    12441251Kan inloggen via public ssh key op sunny/sunfire.wleiden.net kan daarinderdaad het script starten maar vervolgens kan deze niks vinden. Lijkt erop dat de oude server certificaten niet aanwezig zijn en er kunnen dan geen afgeleide client certifcaten gemaakt worden tevens missen er config bestanden, dus alles moet opnieuw? Hoe maak ik dit lokaal na?
    12451252Namaken: https://help.ubuntu.com/community/OpenVPN