in

Custom firmware OpenWrt installeren op router

Vaak is de originele firmware van consumentenrouters functioneel beperkt en biedt alternatieve routerfirmware meer opties. We leggen dan ook uit hoe custom firmware OpenWrt installeren op een router precies werkt en welke instellingen belangrijk zijn.

Controleer eerst of je router wel OpenWRT-compatible is. Volg hoe dan ook het advies dat je het best geen router neemt met minder dan 8 MB flashgeheugen en minder dan 32 MB ram. Een veiligere marge is een apparaat met 16/128 MB.

Blijkt je router inderdaad compatibel met deze custom firmware, klik dan voor meer details eerst op View/Edit data: in het kader Dataentry vind je onderaan het regeltje Installation method(s). Staat hier see devicepage, dan klik je bij je router de link in de kolom Device Page aan voor heel specifieke installatie-instructies.

Over het algemeen kent OpenWrt vier installatiemethodes. De makkelijkste manier is via de webinterface van de oem-firmware, maar voor sommige routers moet je je met de bootloader verbinden via ethernet of een seriële poort, met een protocol als (t)ftp, http of xmodem. Het gebeurt zelfs dat een firmware-upgrade over een jtag-poort loopt (Joint Test Action Group). 

Firmware flashen

Gelukkig is het bij veel routers mogelijk de firmware vanuit de gewone webinterface te flashen. Dat is bij het model dat wij voor dit artikel gebruiken niet anders: een Linksys WRT3200ACM. In principe kan het ook wel via een tftp-connectie over de seriële poort, of zelfs via de jtag-poort, maar we voelen er niet zoveel voor om de behuizing te openen (wat voor beide methodes noodzakelijk blijkt).

Op de devicepage van je routermodel vind je in de rubriek Installation een link naar het firmwarebestand. Zorg wel dat je de factory image kiest in de kolom Firmware OpenWrt Install, tenminste als je router met de oem-firmware opstart en niet al voorzien is van (oudere) OpenWrt-firmware. In dit laatste geval moet je de link hebben in de kolom Firmware OpenWrt Upgrade.

We gaan hier uit van een factory image. Zodra dit op je computer staat, verbind je een lan-poort van je router met je pc en meld je je via de webinterface aan zodat je de firmware kunt flashen. Op ons model gaat dat via Connectiviteit / Handmatig / Bestand kiezen / Start / Ja (2x). Verwijs naar het gedownloade bestand en upload het. Onderbreek in geen geval dit proces. 

Na afloop herstart je de router en is die nu (standaard) bereikbaar op 192.168.1.1. Als Username gebruik je root en het Password is initieel leeg, maar dit pas je in System / Administration aan.

OpenWRT wifi instellen

Wanneer je OpenWrt op je router hebt gezet, zul je merken dat er standaard geen wifi beschikbaar is. Dat moet je dus wel eerst even configureren. Open in LuCI (de naam van de grafische interface) het tabblad Network en kies Wireless. Aan elk van de beschikbare radio’s is er standaard al een ssid met de naam OpenWrt gekoppeld, maar die zijn nog niet ingeschakeld. 

Voor je op Enable klikt, wil je die wellicht eerst aanpassen. Dat doe je met de knop Edit (of via Remove, gevolgd door Add om een nieuw netwerk aan te maken).

Je vindt hier vertrouwde opties terug zoals Channel en Width, maar bijvoorbeeld ook Maximum transmit power. Bij Interface Configuration, op het tabblad General Setup, kun je uit maar liefst acht modi kiezen, waaronder Access Point (standaard), 802.11s (voor een mesh-netwerk) en Monitor (om het wifi-verkeer te kunnen monitoren). 

Standaard is de WMM Mode ingeschakeld: die zorgt voor de prioritering van multimedia-pakketten. Wat het veiligheidsaspect betreft moet je op de tabbladen Wireless Security en MAC-Filter zijn. Heel wat technischer wordt het op het tabblad Advanced Settings. Hier vind je onder meer de optie Isolate Clients terug: handig als je niet wilt dat clients elkaar zomaar kunnen benaderen.

Portforwarding in OpenWRT

Aangezien je met OpenWrt aan de slag bent, lijkt ons de kans groot dat je net zo lief met eigen servers experimenteert en die wil je dan natuurlijk ook van buitenaf kunnen bereiken. Nu kun je zo’n server wel in een DMZ plaatsen, maar portforwarding is in elk geval minder drastisch.

Deze functie vind je bij Network / Firewall, op het tabblad Port Forwards. De werkwijze is verglijkbaar met die van veel andere router(interface)s: druk op Add en vul een Name, Protocol, Source zone (wellicht wan), Destination zone (wellicht lan), Internal IP address, External port en Internal port in.

In de meeste gevallen zul je hier twee keer hetzelfde poortnummer invullen, hoewel je bijvoorbeeld ook 80 kunt invullen bij External port en een ander nummer bij Internal port om makkelijker een (web)server te bereken die intern op een andere poort draait. Op het tabblad Advanced Settings kun je onder meer ook het verkeer beperken tot toestellen met een bepaald mac- of ip-adres.

Extra pakketten

OpenWrt ontleent tot slot veel van zijn flexibiliteit aan het voortreffelijke pakketbeheer. Ga naar System / Software en klik op Update lists. Reeds geïnstalleerde pakketten vind je bij Installed terug en bij Available krijg je een lijst van de beschikbare pakketten (zo’n 8700). Ben je vooral geïnteresseerd in pakketten die zich (ook) via LuCi laten beheren, tik bij Filter dan luci-app in. Dat ‘beperkt’ het aantal resultaten tot zo’n 2000.

Gebruik je portforwarding, dan ben je wellicht ook geïnteresseerd in ddns, zodat je niet telkens het wan-ip-adres van je netwerk hoeft te onthouden. Zoek dan naar luci-app-ddns en druk op de bijbehorende Install-knop

Je herstart het best je router, waarna je de tool terugvindt bij Services / Dynamic DNS en je via Add de gewenste ddns-provider toevoegt. In de lijst bij DDNS Service Provider [IPvx] vind je tientallen ondersteunde providers. Voor sommige providers dien je nog een extra script te downloaden voor die in de lijst opduiken, zoals voor No-IP en Cloudflare. Voor deze providers dien je respectievelijk het pakket ddns-scripts_no-ip_com of ddns-scripts_cloudflare.com-v4 te installeren.

Lukt het niet langs deze weg, selecteer tenslotte dan — custom — bij Provider en verwijs naar een Custom update-URL of een Custom update-script (die de provider hopelijk ter beschikking heeft).

HackShield: Kinderen spelend leren over cyberveiligheid

De beste monitoren voor ieder doel en elk budget