Send a link

Einen OpenWRT router installieren

__Seit einigen Jahren, genauer gesagt seit Linksys den legendären WRT54GL-Router herausgebracht hat, ist es möglich auf immer mehr billigen WLAN-Routern "OpenWRT", als Linux zu installieren. - Diese Mini-Linux Distribution reicht in den meisten Anwendungsfällen um das PC-/Server basierte Gateway zu ersetzen.

Wir setzen hier eine default Konfiguration mit dem, immer noch populärsten Linksys WRT54GL auf.__

Vergleich gegenüber eines Server-Gateways

Vorteile

- Leise
- Weniger Stromverbrauch
- Platzsparender

Nachteile

- Stark eingeschränkter Speicherplatz und RAM
- Weniger flexibel


Voraussetzungen

- PC
- Linksys WRT54GL-Router


Hinweise zur verwendeten OpenWRT-Version

Leider ändert das OpenWRT-Projekt bei fast jedem neuen release die Konfigurationsmethoden wieder radikal; d.H., was in Version 7.09 galt, gilt nicht mehr für Version 8.09, usw.

Schließen
warning Hinweis
Dieses Tutorial bezieht sich deshalb ausdrücklich auf die Version 8.09!


Schließen
warning Achtung
Die neueren Kamikaze-Version (8.09) scheint ein Rückschritt zur Vorherigen Version (7.09) zu sein: Nebst der komplizierteren Konfiguration (z.B. die SUSE-Typische Konfiguration: "/etc/hosts" is autogenerated, use "/etc/hosts.local" instead...) ist OpenWRTso aufgeblasen, dass viele Pakete, wie z.B. OpenVPN (ohne Hacks) keinen Platz mehr finden! - Ich würde deshalb einigen Leuten (die, die keine Lust am lange rumbasteln und rumgoogeln haben) empfehlen die Version: 7.09 zu installieren!


Ich beschreibe hier die Version 8.09, schlicht aus dem Grund weil ich schon zu viel Zeit mit Basteln investiert hatte und nicht nochmals von vorne mit einem reflash von 7.09 beginnen wollte. ;-)

You have been warned...

Installation von OpenWRT

Zuerst schliessen wir den Router über einen der Ethernet-Ports direkt am PC an, dieser sollte auf DHCP eingestellt sein.

Dann wählen wir die URL: http://192.168.1.1/ (external link) an (Benutzername/Passwort: admin/admin) und klicken und durch zu -> Administration -> Firmware Upgrade


Schließen
note Hinweis
Es ist ganz wichtig, zuerst die Kernel 2.4 Version zu installieren, um danach die NVRAM-Variablen "boot_wait" und "boot_time" zu setzen (geht in den 2.6-er Versionen nicht)!
Derzeit ist die 2.4-er Kernel Version auch besser, da auf Kernel 2.6. Wireless noch immer nicht richtig läuft.


Nun laden wir das folgende Firmware-Image herunter: http://downloads.openwrt.org/kamikaze/8.09.2/brcm-2.4/openwrt-wrt54g-squashfs.bin (external link)
Dieses installieren wir nun auf dem Router wie ein Standard Firmware-Upgrade.

Nach ca. 2 Minuten rebootet der Router und wir können uns per telnet auf: 192.168.1.1 verbinden und konfigurieren.

NVRAM-Variablen setzen

(Hinweis: Dies muss nur bei der ersten OpenWRT Installation gemacht werden)

Gleich nach dem ersten Login muss folgendes ausgeführt werden:
nvram set boot_wait=on
nvram set boot_time=10
nvram commit && reboot


Konfiguration

SSH auf dem Internet-Interface

Dies werden wohl die meisten benötigen, da man so den Router später auch remote administrieren kann:
passwd

schaltet SSH ein- und telnet aus.


Nun geben wir unter <I>/etc/firewall.user</I> folgendes ein:
#========================== Rulesets ==========================================
### Open ports to WAN
## -- This allows port 22 to be answered by (dropbear on) the router
iptables -t nat -A prerouting_wan -p tcp --dport 22 -j ACCEPT
iptables        -A input_wan      -p tcp --dport 22 -j ACCEPT


Nach einem: /etc/init.d/firewall restart sollte man sich dann auf die öffentliche IP einloggen können.


Zeit- und Zeitzone einstellen

Zuerst in <I>/etc/config/system</I> den Parameter "option timezone" auf Mitteleuropäische Zeit (CEST) einstellen:
option timezone CET-1CEST-2,M3.5.0/02:00:00,M10.5.0/03:00:00

Und danach mittels:
date -s YYYY-MM-DD hh:mm[:ss]
die Zeit richtig Einstellen.


Wireless aktivieren

Unter <I>/etc/config/wireless</I>:
option disabled 1
entfernen.

Mit:
option encryption psk
        option key        "passwort"

Kann man nun noch die Verschlüsselung aktivieren.

Wer noch kein Passwort hat, mit:
pwgen --secret 13 1

kann man sich eins generieren lassen.

Firewall-Bug reparieren

Standardmässig blockt OpenWRT 8.09 ICMP- (ping) requests; dies ist unschön und führt zu nur sehr mühsam zu identifizierenden Netzwerk-Problemen.
Deshalb sollte in /etc/config/firewall folgendes eingefügt werden:
# Bugfix: Allow ICMP (https://dev.openwrt.org/ticket/4546)
config rule
        option proto ICMP
        option target ACCEPT


Paketliste aktualisieren:

opkg update

Schließen
note Hinweis
Dies muss in jeder shell session _immer_ einmal gemacht werden, sonst findet opkg die Pakete nicht!


QoS-Scripts

Die QoS-Funktionalität wird zwar nicht unbedingt gebraucht, ist aber trotzdem ganz Nett für einen Router:
ipkg install qos-scripts
/etc/init.d/qos start
/etc/init.d/qos enable


DynDNS

DynDNS ist sehr nützlich wenn sich die öffentliche IP-Adresse ab- und zu ändert, wie das bei den meisten Providern der Fall ist.

Dazu muss zuerst bei einem DynDNS-Anbieter ein Account erstellt werden (z.B. unter dyndns.org ), dann in OpenWRT die ddns-scripts installieren:
opkg install ddns-scripts

und unter <I>/etc/config/ddns</I> die Daten eintragen; diese Konfiguration sollte selbsterklärend sein... ;-)

Zur initialisierung muss nun einmal folgendes gemacht werden:
sh
. /usr/lib/ddns/dynamic_dns_functions.sh # note the leading period
start_daemon_for_all_ddns_sections
exit


Ab jetzt wird sich die IP immer mit der DynDNS-URL synchronisieren, sobald diese ändert.

ntpclient

Um automatische Zeit updates empfangen zu können, installieren wir den ntpclient:
opkg install ntpclient


Link Beschreibung
Install Guide (external link) Der Offizielle OpenWRT install Guide
dyndns.org (external link) Populärer dynDNS Anbieter
Using the Image Builder (external link) Howto wie man ein eigens angepasstes OpenWRT-Image erstellen kann

File Beschreibung
OpenWRT-Firmware-WRT54GL (external link) Das aktuelle firmware-image (openwrt-wrt54g-squashfs.bin) für den Linksys WRT54GL (für andere router braucht es evtl. ein anderes image!)


Diskutieren

Neuen Kommentar posten

Anti-Bot Prüf-Code: Zufälliges Bild
Neuen Kommentar posten
Schließen
note Hinweis
Your comment will have to be approved by the moderator before it is displayed.