FritzBox

Jeder kennt das Teil. Zumindest jeder, der sich mit der Internetverbindung von zu Hause beschäftigt. In Deutschland, so glaube ich, das meistverkaufte Gerät als Router.

Aber:

AVM hat einige Dinge ausgespart. Für mich war z.B. die VPN Verbindung wichtig. Und zwar ein VPN mit IPSEC und nicht das einfach VPN über die myFritz Möglichkeit.

Warum?

Da ich mir für zwei Jahre ein Abo bei NordVPN gekauft habe, wollte ich mein gesamtes privates Netz darüber leiten, anstatt jedes Gerät einzeln.

ACHTUNG!

Das Flashen der Firmware ist nichts für Anfänger. Ich lehne auch jede Verantwortung ab, wenn es euch passiert, dass die FritzBox gar nicht mehr startet.

Freetz

Freetz (ein Kunstwort aus "free" und Fritz) ist da die Antwort. Besser gesagt: freetz-ng

Aber Achtung! Das ist nicht so einfach, wie es scheint. Ich habe jetzt zwei Tage daran herum laboriert. Zu verstehen, was die Entwickler meinen, ist nicht ganz so einfach. Wenn man aber verstanden hat, wie es funktioniert, ist es an sich ganz logisch.

Einen ganz wichtigen Punkt, den ich immer wieder übersehen habe, ist die Freetz-Oberläche. Die ist nicht in die AVM-Oberläche (http://fritz.box) integriert. Sie ist entweder mit http://192.168.178.1:81 oder mit http://fritz.box:81 zu erreichen. Wenn hier ein Anmeldename und Passwort abgefragt wird, habt ihr es geschafft.

Erstellen

Wenn ihr der Anleitung bei freetz-ng Wort für Wort folgt, dann habt ihr es zumindest geschafft, ein Image zu erstellen. Wer ein Linux hat, ist an sich besser bedient. Es soll auch mit VirtualBox und einem Linux-Image gehen. Das habe ich versucht, bin aber gleich zu Anfang gescheitert, weil das Image viel zu alt war und ich keine Lust hatte, das Image auf den neuesten Stand zu bringen.

Die Info wendet sich als primär an die Linux-User. Wie es bei der Linux-User-Group Sinn macht.

Wenn ihr über "git clone...." die gesamten Sourcen auf eurem Rechner habt, dann geht es ans konfigurieren und kompilieren. Das einfachste ist mit

make menuconfig
make

das Grundpaket erst einmal zu erstellen. Keine Änderungen über das Menü (menuconfig). Nur wieder beenden und die Standardconfig verwenden. Je nach Rechner kann die Kompilierung schon mal 15 Minuten oder länger dauern. Abwarten und Tee trinken.

Wenn das Image erstellt ist, findet ihr es im Unterverzeichnis "images"

Übertragung

AVM hat so einige Schwierigkeiten eingebaut, so dass man das gerade fertig gestellte Image nicht so einfach auf die FritzBox bekommt. Über die WEB-Oberfläche von AVM funktioniert es nicht, da eine AVM-Signatur auf dem Image fehlt.

Also gibt es andere Methoden.

FTP:

Beim Booten der FritzBox gibt es für ca. 10 Sekunden einen FTP-Server, der auf FTP-Anfragen lauscht.

Anmeldename: adam2
Passwort: adam2

Das ist der Angriffspunkt.

Ganz wichtig ist, dass der PC am besten eine fest zugewiesene IP-Adresse hat. Denn Standardmäßig bekommt der Rechner von der FritzBox die IP Adresse. Wenn die neu startet, kann es sein, dass die IP-Adresse des Rechners weg ist, Dann reichen die 10 Sekunden beim Boot der FritzBox nicht aus, um darauf zuzugreifen. Außerdem habe ich mich noch eines Tricks bedient, um das Skript für das Flashen etwas auszutricksen. Dazu ist es von Vorteil einen Laptop zu haben, der per Netzwerkkabel angeschlossen ist. Aber später mehr.

Wenn ihr noch die Original-Firmware von AVM auf der FritzBox habt, dann braucht ihr das Programm "push-firmware" das beim "git clone" gleich mit geliefert wird. Das macht an sich nichts anderes als ein paar Abfragen zu stellen und zu warten, bis die FritzBox im Boot-Modus den FTP-Server zur Verfügung stellt.

tools/push_firmware images/latest.image -f -ip 192.168.178.1

Das obige Skript musste ich ein wenig austricksen, das das Erkennen des FTP-Servers bei mir nicht sauber funktioniert hat.

Aber der Reihe nach:

  1. Rechner auf eine feste IP-Adresse stellen
  2. Anleitung bei freetz-ng
  3. FritzBox über das "Stecker ziehen" ausschalten und mindestens 10 Sekunden warten
  4. FritzBox Stecker wieder einstecken
  5. nach ca. 5 Sekunden versuchen den Befehl in dem vorbereiteten Terminal abzuschicken.
  6. Wenn ihr Glück habt, bekommt ihr die Meldung, dass sich der FTP Adam Server meldet.
  7. Anmeldedaten (siehe oben) eingeben und "ftp>" Rückmeldung abwarten.
  8. Eingabe von "bye" beendet die FTP-Verbindung. Das scheint mir wichtig zu sein, weil der FTP-Server womöglich nur eine FTP-Sitzung zulässt.
  9. Jetzt den Befehl mit "push-firmware...." abschicken
  10. Es kommt eine Meldung, die besagt, dass das Skript auf den Reboot der FritzBox wartet.
  11. Den Reboot simuliere ich, indem ich einfach den Netzwerkstecker von meinem Laptop ziehe.
  12. Das Script meldet, dass der Reboot detektiert wurde
  13. Dann den Netzwerkstecker wieder einstecken.
  14. Das Skript läuft durch

Diese Reihenfolge hat bei mir gereicht, dass die FritzBox das Image angenommen hat.

ACHTUNG: Jetzt Ruhe bewahren. Es dauert wirklich eine Zeit, bis die FritzBox neu startet. Wenn ihr zu früh die FritzBox über Strom-Aus/Strom-An rebootet, kann es euch passieren, dass die FritzBox gar nicht mehr startet.

Erkennung

Woran erkenne ich, dass Freetz-NG auf der FritzBox ist?

Wenn ihr euch ganz normal an der FritzBox anmeldet, wir links oben, statt das übliche AVM-Logo ein FREETZ-NG Logo eingeblendet.

Die zweite Erkennung ist, dass die FritzBox über einen weiteren Port (81) erreichbar ist.

Die ersten Anmeldedaten, die natürlich sofort geändert werden müssen:

Anmeldename: admin
Passwort: freetz

Unbedingt gleich ändern!

Wie geht es weiter?

Wenn ihr einmal die Freetz-Software auf der FritzBox habt, dann müsst ihr euch selbst um die Updates kümmern. Das einzige was dann nicht mehr notwendig ist, ist der ganze Aufwand über push-firmware. Das geht jetzt ganz einfach über die WEB-Oberfläche