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. |
| 55 | Met 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 | |
| 57 | In 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 | |
| 61 | Via 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 |
| 65 | mkdir ap-bullet |
| 66 | cd ap-bullet |
| 67 | |
| 68 | ## download openwrt bullet firmware image |
| 69 | wget http://downloads.openwrt.org/backfire/10.03.1/ar71xx/openwrt-ar71xx-ubnt-bullet-m-squashfs-factory.bin |
| 70 | |
| 71 | ### openwrt bullet packages |
| 72 | mkdir packages |
| 73 | cd packages |
| 74 | |
| 75 | ## download wpad since included wpad-mini does not support EAP! |
| 76 | wget http://downloads.openwrt.org/backfire/10.03.1/ar71xx/packages/wpad_20111103-2_ar71xx.ipk |
| 77 | |
| 78 | ## download openvpn packages |
| 79 | wget http://downloads.openwrt.org/backfire/10.03.1/ar71xx/packages/openvpn_2.1.4-3_ar71xx.ipk |
| 80 | wget http://downloads.openwrt.org/backfire/10.03.1/ar71xx/packages/kmod-tun_2.6.32.27-1_ar71xx.ipk |
| 81 | wget http://downloads.openwrt.org/backfire/10.03.1/ar71xx/packages/libopenssl_0.9.8r-1_ar71xx.ipk |
| 82 | wget http://downloads.openwrt.org/backfire/10.03.1/ar71xx/packages/zlib_1.2.3-5_ar71xx.ipk |
| 83 | wget http://downloads.openwrt.org/backfire/10.03.1/ar71xx/packages/liblzo_2.04-1_ar71xx.ipk |
| 84 | |
| 85 | # download optional packages |
| 86 | wget http://downloads.openwrt.org/backfire/10.03.1/ar71xx/packages/nano_2.2.6-1_ar71xx.ipk |
| 87 | wget 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 |
| 99 | tftp 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 |
| 106 | telnet 192.168.1.1 |
| 107 | passwd #type a new password |
| 108 | exit |
| 109 | |
| 110 | ## use scp to upload all packages for install |
| 111 | scp -r packages root@192.168.1.20:/tmp/ |
| 112 | |
| 113 | ## use ssh to uninstall wpad and install other packages |
| 114 | ssh 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 |
| 117 | scp -r root@192.168.1.20:/etc .#inclode the dot '.' at the end! |
| 118 | }}} |
| 119 | Settings 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 |
| 139 | ssh root@192.168.1.1 |
| 140 | vi /etc/config/network #correct settings |
| 141 | vi /etc/config/system #correct timezone |
| 142 | vi /etc/init.d/sysntpd #MAINSER/peers/gateway start stop enable? |
| 143 | reboot;exit |
| 144 | |
| 145 | ssh root192.168.1.1 |
| 146 | # check date |
| 147 | date |
| 148 | |
| 149 | # upload openvpn config and keys (keys.tar) |
| 150 | # run this script from local pc shell |
| 151 | sh 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 |
| 157 | reboot;exit |
| 158 | |
| 159 | # if it won't work try |
| 160 | ssh root@bullet |
| 161 | wifi |
| 162 | wifi-update |
| 163 | reboot;exit |
| 164 | # the end :-D |
| 165 | |
| 166 | ==== 1.2b quick&dirty Ubiquiti AirOS based ==== |
| 167 | De 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 === |
| 170 | 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 en parameters. |
| 171 | |
| 172 | ==== 2.1 Install FreeBSD 8.3 and services ==== |
| 173 | TODO voltooid, oude handleiding geupdate maar zeer gebrekkig en functioneerd nog niet waarschijn firewall rules... |
| 174 | |
| 175 | ==== 2.2 Install debian 6 wheezy and services ==== |
| 176 | TODO Inmiddels is er een op debian 6 wheezy gebasseerde release nagebouwd, deze werkte tijdelijk en moet nog uitgeschreven worden. |
266 | | }}} |
| 392 | # not described but exist in svn config |
| 393 | |
| 394 | # Nodig voor bridges |
| 395 | cloned_interfaces="bridge0" |
| 396 | |
| 397 | #gateway related |
| 398 | pf_enable="YES" #??? Firewall rules |
| 399 | dhcpd_enable="YES" #??? DHCP server |
| 400 | ntpd_enable="YES" #??? Network Time for certificate validity |
| 401 | }}} |
| 402 | |
| 403 | TODO: |
| 404 | |
| 405 | TODO |
| 406 | TFTP without 15sec pen reset |
| 407 | default AIROS reboot into tftp mode parameter 5.5.4 mtd cat /proc/mtd |
| 408 | |
| 409 | In 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 | |
| 414 | Proxy |
| 415 | openvpn multi clients with same key |
| 416 | duplicate-cn #in de server aanzetten werkt! |
| 417 | uitzoeken radiusd paramter |
| 418 | client to client ping??? |
| 419 | |
| 420 | nanostation 5ghz openwrt dif image |
| 421 | /etc/config/wireless |
| 422 | 11na |
| 423 | channel 32-140 |
| 424 | systemname |
| 425 | dhcp |
| 426 | |
| 427 | wlan channels voor 5ghz ? |