Changes between Version 35 and Version 36 of WikiStart


Ignore:
Timestamp:
May 2, 2013, 3:41:38 PM (12 years ago)
Author:
walter
Comment:

weer een gedeeltelijke update, pas wanneer er een final komt zal er een serieuze comment komen ;-)

Legend:

Unmodified
Added
Removed
Modified
  • WikiStart

    v35 v36  
    2424Als 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.
    2525
    26 Het unieke aan dit project is niet het scheiden van de identity/service provider eigenschap, maar de integratie van de verdeelde diensten over het losstaand en "open" netwerk van Wireless Leiden.
    27 Dit maakt het exploiteren van eduroam draadloze dekking via het Wireless Leiden netwerk in publieke ruimte niet alleen eenvoudig, flexibel en betaalbaar maar kan dat zelfs op stadsniveau! 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 onderwijsinstelling als het Wireless Leiden netwerk toe. Dit in tegenstelling tot de vaak door onderwijsinstelling geisoleerde fysiek inpandige en gesloten infrastructuur exploitatie, die zich gemakkelijk door het graven/leggen van dure kabelverbindingen laat uitstellen of zelfs afstellen.
     26Het 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 buiten deur huisvest.
     27Dit maakt het exploiteren van eduroam draadloze dekking via het Wireless Leiden netwerk in publieke ruimte niet alleen eenvoudig, flexibel en betaalbaar maar kan dat zelfs op stadsniveau! 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) onderwijsinstelling als het netwerk van Wireless Leiden toe. Dit in tegenstelling tot de vaak beperkt inpandige 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.
    2828
    2929*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.
    3030
    3131= NEW HOWTO =
     32== technische mogelijkheden ==
     33
     34ubiquiti nano/bullet/etc AP's as wpa2 enterpise radius clients with stock AIROS or Openwrt(multi ssid & openvpntunneling)
     35
     36 
     37Het aanbieden van een "eduroam" compatible infrastructuur dat overeenkomt met een wpa2 enterprise wireless netwerk met radius setup over een open/onafhankelijk netwerk. Dit veelal gautomatiseerd zodat het configureren van vele AP's en een "Radius-Proxy/Server en Gatway" via enkele scripts in dag delen voltooid kan worden.
    3238
    3339== technische en organisatorische benodigdheden ==
    3440
    35 Voor de realisatie voor de ondersteunende eduroam infrastructuur op het Wireless Leiden netwerk is gekozen voor twee verschillende type installaties met idem verschillende functionaliteit namelijk:
    36 1. meerdere type "AccesPoints" die als "eduroam" accesspoints zullen fungeren met als basis OpenWRT.
    37 2. een enkel centraal en vaste gepositioneerde "Radius Proxy & gateway" met als basis FREEBSD.
    38 De verbinding tussen deze twee typen installaties word via OpenVPN tunnels beveiligd en geencrypt opgezet waardoor het mogelijk onveilige karakter van het open WirelessLeiden vervalt. Naast deze hardware matige en software matige eisen zijn er nog vier andere organisatorische eisen nodig waaronder:
    39 1. toegang/inlog-gegevens tot de centrale eduroam/surf foundation identityprovider koppel server.
     41Voor het aanbieden van de eduroam infrastructuur op het Wireless Leiden netwerk is gekozen voor twee verschillende type installaties met idem verschillende functionaliteit namelijk:
     421. "AccesPoints" meerdere (verschillende) types die als "eduroam" hotspot zullen fungeren met als basis OpenWRT.
     432. "Radius-Server/Proxy & gateway" een enkele centraal gepositioneerde server met als basis FREEBSD.
     44De verbinding tussen deze twee typen installaties word via OpenVPN tunnels beveiligd en geencrypt opgezet waardoor het mogelijk onveilige karakter van het open WirelessLeiden netwerk vervalt. Naast deze hardware matige en software matige eisen zijn er nog vier andere organisatorische eisen nodig waaronder:
     451. toegang/inlog-gegevens tot de centrale eduroam/surfnet/surf-foundation identityprovider koppel server.
    40462. ip whitelisting voor toegang tot die server.
    41 3. inloggegevens/account van een aan eduroam gelieerde onderwijsinstelling om het netwerk op te kunnen!
    42 4. certnode die het creeeren van openvpn certificaten en config bestand faciliteert.
    43 5. buildmachines voor firmware
    44 6. tot internet?
    45 Met deze middelen en een complete voor zover mogelijk lineaire stap voor stap handleiding die nu volgt is een plug en play exploitatie van eduroam toegangspunten waar dan ook (binnen het Wireless Leiden netwerk) snel en eenvoudig te realiseren.
     473. inlog/account/"USER"-gegevens voor gebruikers van een aan eduroam gelieerde onderwijsinstelling.
     484. certnode die het creeeren van certificaten en config bestanden voor "openvpn" faciliteert.
     495. build/test/flash-machines voor config en firmware (ssh scp sshpass telnet etc)
     506. internet?
     51Met deze middelen en een complete voor zover mogelijk lineaire stap voor stap handleiding (die nu gaat volgen) is een plug en play exploitatie van eduroam toegangspunten waar dan ook binnen het Wireless Leiden netwerk snel en eenvoudig te realiseren. Door het gebruik van het opensource software RouterOS [http://www.openwrt.org OpenWRT], [http:/www.freebsd.org FREEBSD] en gerelateerde software projecten, is deze setup niet gelimiteerd aan een enkel merk en of type hardware. Een kleine aanpassing aan de configuratie bestanden zou een vereiste kunnen zijn voordat het op ander hardware platvorm werkt. Deze handleiding zal overigens alleen gespitst zijn op Ubiquity AP's zoals Bullet m2HP/Nano station/loco m2 en via-epia-m/alixboard als radiusproxy/server & gateway. Als uitgangssituatie om deze handleiding te uit te voeren word ubuntu 12.04LTS AMD64 gebruikt! 
    4652
    4753=== 1 setup eduroam AccessPoints ===
    4854==== 1.1 hardware & software ====
    49 Als complete outdoor accesspoints gebruiken we diverse Ubiquiti apparaten waaronder Bullets en NanoStations. Door het gebruik van het opensource software RouterOS [http://www.openwrt.org OpenWRT] en gerelateerde software projecten, is deze setup niet gelimiteerd aan een merk en of type hardware. Een kleine aanpassing aan de configuratie bestanden zou een vereiste kunnen zijn voordat het op andere hardware platvormen werkt. De handleiding zal overigens alleen gespitst zijn op de Ubiquity Bullet m2 HP.
    50 Met deze flexibele fundering is het doel om accesspoints die maar in sumiere opzichten van elkaar  verschillen zo gemakkelijk en snel mogelijk in grote hoeveelheden geautomatiseerd te kunnen configureren. Het verschil tussen de accesspoints komt deels uit hoek van beveiliging en deels uit de hoek van locatie en toepassing. Als een enkel accesspoint gehackt is kan deze los van de andere accesspoint toegang tot de radius proxy ontzegt worden en zijn de andere accesspoints nog operationeel. Als toepassing is het handig dat het eduroam accesspoint op de burcht in Leiden als multi SSID "ap.burcht.wleiden.net" heet en de eduroam accesspoint bij de HortusBotanicus als multi SSID "ap.hortusbotanicus.wleiden.net" laatstaan de dns/host namen voor het eenvoudig beheren. Deze voorbeelden duiden erop dat er toch kleine specifieke wijzigingen tussen de accesspoints wenselijk zijn.
    51 
    52 ==== 1.2 fixed OpenWRT based release ====
    53 In tegenstelling tot de oude handleiding word hier gebruik gemaakt van een fixed OpenWRT releases waaronder Backfire 10.03.1 of RC's van Atitude Adjustment. Dit omdat het bouwen van een custombuild in eerste plaats niet meer nodig is omdat het pakket "openvpn" direct gebruiksklaar vanuit de repositorie geinstalleerd kan worden. Buiten het feit dat het erg veel tijd en moeite kost, veel variabelen introduceert en soms moeilijk te doorgronden build errors opleverd. Met fixed releases kan in minder dan  5 minuten direct een werkend accesspoint prototype gerealiseerd worden en dat zelf voor verschillende type accesspoints!
    54 
    55  
    56 === 2 setup Radius Proxy  & gateway ===
    57 Moet nog uitgezocht / getest worden, zie oud voorbeeld!!! Wel kan ik specifieke veranderingen van config bestanden en opties/parameters toevoegen aan de huidige setup! zoals openvpn server settings etc opstart bestanden.
     55Met deze flexibele fundering is het doel om accesspoints die maar in sumiere opzichten van elkaar te verschillen zo gemakkelijk en snel mogelijk in grote hoeveelheden geautomatiseerd te kunnen configureren. Het verschil tussen de accesspoints komt deels uit hoek van beveiliging, deels uit de hoek van locatie en natuurlijk de toepassing. Als een enkel accesspoint gehackt is kan deze los van de andere accesspoint toegang tot de radius proxy ontzegt worden (door zijn openvpn sleutel in te trekken) daardoor zijn de andere accesspoints nog operationeel. Als toepassing is het handig dat het eduroam accesspoint op de burcht in Leiden als multi SSID "ap.burcht.wleiden.net" heet en de eduroam accesspoint bij de HortusBotanicus als multi SSID "ap.hortusbotanicus.wleiden.net". Als toepassing kan het wenselijk zijn kleine / goedkopere AP's te monteren op plaatsen waar grote AP's met losse sector antennes niet mogelijk zijn en natuurlijk niet te vergeten de beschikbare wifi kanalen 1,6,11. Deze voorbeelden duiden erop dat er toch kleine specifieke wijzigingen tussen de AccessPoints configuratie bestanden wenselijk zijn.
     56
     57In tegenstelling tot de oude handleiding(onderaan deze pagina) word momenteel gebruik gemaakt van een fixed OpenWRT releases waaronder Backfire 10.03.1 of zelfs Atitude Adjustment 12.0.9 final. Dit niet alleen omdat het bouwen van een custombuild onnodig is geworden omdat "openvpn" inmiddels als pakket direct gebruiksklaar en beschikbaar is voor de 10.03.1 / 12.09 releases. Maar vooral omdat compileren van een openwrt build omgeving en image erg veel tijd, moeite en veel variabelen introduceert in een al experimentele infrastructuur. Met fixed releases kan in minder dan 5 minuten direct een werkend accesspoint prototype gerealiseerd worden en dat zelf voor verschillende type accesspoints(mits daar openwrt images voor zijn)! Wel zou via custom gecompileerde releases het geheugen gebruik en processor belasting geoptimaliseerd kunnen worden door het weglaten van ongebruikte pakketten. Update, inmiddels is het ook al mogelijk om direct via de default AirOS software dat op de Ubiquiti AP's al aanwezig is een dergelijke opstelling te maken(enkel openvpn ontbreekt)!
     58
     59==== 1.2a fixed release OpenWRT based ====
     60
     61Via de volgende shell commands zal de software "Backfire" en de configuratie in de AP's geplaatst worden, eerst lokaal alles laden en vervolgens flashen en installeren en configureren:
     62
     63{{{
     64### prepare a workfolder to setup all software and config files
     65mkdir ap-bullet
     66cd ap-bullet
     67
     68## download openwrt bullet firmware image
     69wget http://downloads.openwrt.org/backfire/10.03.1/ar71xx/openwrt-ar71xx-ubnt-bullet-m-squashfs-factory.bin
     70
     71### openwrt bullet packages
     72mkdir packages
     73cd packages
     74
     75## download wpad since included wpad-mini does not support EAP!
     76wget http://downloads.openwrt.org/backfire/10.03.1/ar71xx/packages/wpad_20111103-2_ar71xx.ipk
     77
     78## download openvpn packages
     79wget http://downloads.openwrt.org/backfire/10.03.1/ar71xx/packages/openvpn_2.1.4-3_ar71xx.ipk
     80wget http://downloads.openwrt.org/backfire/10.03.1/ar71xx/packages/kmod-tun_2.6.32.27-1_ar71xx.ipk
     81wget http://downloads.openwrt.org/backfire/10.03.1/ar71xx/packages/libopenssl_0.9.8r-1_ar71xx.ipk
     82wget http://downloads.openwrt.org/backfire/10.03.1/ar71xx/packages/zlib_1.2.3-5_ar71xx.ipk
     83wget http://downloads.openwrt.org/backfire/10.03.1/ar71xx/packages/liblzo_2.04-1_ar71xx.ipk
     84
     85# download optional packages
     86wget http://downloads.openwrt.org/backfire/10.03.1/ar71xx/packages/nano_2.2.6-1_ar71xx.ipk
     87wget http://downloads.openwrt.org/backfire/10.03.1/ar71xx/packages/libncurses_5.7-2_ar71xx.ipk
     88}}}
     89{{{
     90### flash firmware
     91# put Ubiquiti device in tftp recover mode
     92# unplug/poweroff the device
     93# power on "while keeping the reset button pressed" for atleast 8/15 sec!
     94# when blinking red/green the reset button can be released
     95# the device is now in tftp mode
     96# todo get in tftp without reset button... but via triggering mtd?
     97
     98## use / install tftpclient utility to flash the openwrt image
     99tftp 192.168.1.20
     100        binary
     101        trace
     102        put ../openwrt-ar71xx-ubnt-bullet-m-squashfs-factory.bin
     103        quit
     104
     105## use telnet to setup a password for the ssh session
     106telnet 192.168.1.1
     107        passwd #type a new password
     108        exit
     109
     110## use scp to upload all packages for install
     111scp -r packages root@192.168.1.20:/tmp/
     112
     113## use ssh to uninstall wpad and install other packages
     114ssh root@192.168.1.20 "opkg remove wpad-mini;install /tmp/packages/*.ipk;exit"
     115
     116## use scp to backup current config files to local pc
     117scp -r root@192.168.1.20:/etc .#inclode the dot '.' at the end!
     118}}}
     119Settings that differ among AccesPoints like multiSSID,ipadress,wifichannel,hostname,etc are coloured!
     120{{{
     121## only a couple of files needs editing/configuring this will be done locally
     122#/etc/config/dhcp
     123#/etc/config/firewall
     124#/etc/config/network
     125#/etc/config/system
     126#/etc/config/wireless
     127
     128#/etc/init.d/openvpn
     129#/etc/init.d/sysntpd
     130
     131#/etc/firewall.user
     132#/etc/inittab
     133#/etc/rc.local
     134
     135#/sbin/wifi-update
     136#/usr/sbin/iopenvpn
     137
     138##TODO
     139ssh root@192.168.1.1
     140vi /etc/config/network #correct settings
     141vi /etc/config/system  #correct timezone
     142vi /etc/init.d/sysntpd #MAINSER/peers/gateway start stop enable?
     143reboot;exit
     144
     145ssh root192.168.1.1
     146# check date
     147date
     148
     149# upload openvpn config and keys (keys.tar)
     150# run this script from local pc shell
     151sh upload
     152
     153# fix permission on file
     154/etc/openvpn/up.sh #heeft geen chmod +x flag ;-)
     155
     156# check / correct following in /etc /sbin /usr/sbin
     157reboot;exit
     158
     159# if it won't work try
     160ssh root@bullet
     161wifi
     162wifi-update
     163reboot;exit
     164# the end :-D
     165
     166==== 1.2b quick&dirty Ubiquiti AirOS based ====
     167De huidige 5.5.4 Ubiquiti AirOS software maakt het mogelijk het AP direct als radius "client" te laten fungeren. Dit is handig voor snel testen of uitrollen van inpandige afgeschermde infrastructuur waarbij het encrypten van het radius en internet verkeer via openvpn niet nodig is! Het is zo eenvoudig dat je enkel na het resetten van het apparaat, hem als normaal AP configureert(vergeet AirMax niet uit te zetten!) dan geef je bij Wireless security geen WPA2-"PSK" maar "EAP" op. Direct verschijnt er een optie om een Authenticating radius server/proxy op te geven met IP:PORT:secret wanneer deze ingevuld worden is er direct al een werkend wpa2 enterprise AP oftwel eduroam! Verdere setup met NAT/Bridging/VLAN is wel aan te beleven maar moet nog uitgezocht worden.
     168
     169=== 2 setup RadiusServer/Proxy  & gateway ===
     170Moet nog uitgezocht / getest worden, zie oud voorbeeld!!! Wel kan ik specifieke veranderingen van config bestanden en opties/parameters toevoegen aan de huidige setup! zoals openvpn server settings etc opstart bestanden en parameters.
     171
     172==== 2.1 Install FreeBSD 8.3 and services ====
     173TODO voltooid, oude handleiding geupdate maar zeer gebrekkig en functioneerd nog niet waarschijn firewall rules...
     174
     175==== 2.2 Install debian 6 wheezy and services ====
     176TODO Inmiddels is er een op debian 6 wheezy gebasseerde release nagebouwd, deze werkte tijdelijk en moet nog uitgeschreven worden.
    58177
    59178=== certnode sunfire uitzoeken ===
     179ping sunny.wleiden.net / 172.16.4.46
    60180Heeft huub destijds uitgevoerd! Waar en hoe dat plaatsvind is nog onduidelijk
    61181
     
    201321Op 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.
    202322
    203 Uitgangspunt: (embedded) pc met Freebsd 8.2, minimal install
    204 
    205 A. Installeer de volgende software (log in als root)
     323Uitgangspunt: (embedded) pc met Freebsd 8.3(i386), minimal install
     324
     325A. Installeer de volgende software, niet alleen "portsnap" maar ook "make" heeft een werkende internetverbinding nodig!!! (log in als root)
    206326 
    207327fetch ports
     
    215335}}}
    216336
    217 installeer openvph
     337installeer openvpn
    218338{{{
    219339 $ make -C /usr/ports/security/openvpn-devel install clean BATCH=yes
    220340}}}
    221341
     342installeer freeradius
     343{{{
     344 $ make -C /usr/ports/net/freeradius2 install clean BATCH=yes
     345}}}
     346
     347installeer isc-dhcp42-server
     348{{{
     349 $ make -C /usr/ports/*/isc-dhcp42-server install clean BATCH=yes
     350}}}
     351
     352Installed programms/binaries need to be defined as global? svn command not found
     353/usr/local/bin/svn #does exist!!!
     354
    222355checkout openvpn-wl
    223356{{{
    224 svn co http://svn.wirelessleiden.nl/svn/code/eduroam-bullet/trunk/openvpn-wl/
     357mkdir /usr/local/etc/openvpn #folder niet aanwezig
     358/usr/local/bin/svn co http://svn.wirelessleiden.nl/svn/code/eduroam-bullet/trunk/openvpn-wl/
    225359/usr/local/etc/openvpn
    226 }}}
    227 
    228 installeer freeradius
    229 {{{
    230  $ make -C /usr/ports/*/freeradius install clean BATCH=yes
    231360}}}
    232361
     
    238367}}}
    239368
    240 installeer isc-dhcp42-server
    241 {{{
    242  $ make -C /usr/ports/*/isc-dhcp42-server install clean BATCH=yes
    243 }}}
     369###edit only three files under /usr/local/etc/freeradius: users, eap.conf, and clients.conf
    244370
    245371{{{
     
    264390gateway_enable="YES"
    265391
    266 }}}
     392# not described but exist in svn config
     393
     394# Nodig voor bridges
     395cloned_interfaces="bridge0"
     396
     397#gateway related
     398pf_enable="YES" #??? Firewall rules
     399dhcpd_enable="YES" #??? DHCP server
     400ntpd_enable="YES" #??? Network Time for certificate validity
     401}}}
     402
     403TODO:
     404
     405TODO
     406TFTP without 15sec pen reset
     407        default AIROS reboot into tftp mode parameter 5.5.4 mtd cat /proc/mtd
     408
     409In dhcp mode achter een nat router werkt sysntpd niet meer,
     410#/etc/config/network dhcp + peerdns
     411/etc/config/dhcp disable rebinding de bovenste
     412/etc/rc.local sleep 5 ntpd -q -p pool.ntp.wleiden.net
     413
     414Proxy
     415openvpn multi clients with same key
     416duplicate-cn #in de server aanzetten werkt!
     417uitzoeken radiusd paramter
     418client to client ping???
     419
     420nanostation 5ghz openwrt dif image
     421/etc/config/wireless
     42211na
     423channel 32-140
     424systemname
     425dhcp
     426
     427wlan channels voor 5ghz ?