Im ersten Teil habe ich am Beispiel der FritzBox 3170 geschildert, wie man sich Zugang per Kommandozeile und Telnet zur FritzBox verschafft. Damit wurde der Grundstein für alles Weitere gelegt.
Der Editor macht den Unterschied
Per FTP gestaltet sich der Zugriff komfortabler und auch die Konfigurationsdateien der FritzBox lassen sich so komfortabel unter Windows bearbeiten. Dabei muss lediglich darauf geachtet werden, dass ein Editor verwendet wird, der Dateien im Unix-Format speichern kann. Unter Unix wird ein Zeilenende nur durch ein CR (Carriage Return) angegeben, wohingegen unter Windows noch zusätzlich ein LF (Linefeed) angefügt werden muss, um für einen Zeilenumbruch zu sorgen. Der von Windows-Editoren eingefügte LF macht die Datei daher für die FritzBox unter Umständen unlesbar. Ein von mir persönlich gern verwendeter Open-Source Texteditor ist Notepad++.
FTP-Server auf die FritzBox laden
Um einen kleinen FTP-Server auf die FritzBox zu laden, ist der Telnet-Zugriff nun zwingend erforderlich. Nach dem Einloggen auf der Box in das Verzeichnis /var/tmp wechseln und mittels wget das Programm 'Bftpd' und dessen config-Datei über diese URLs installieren:
- http://www.tecchannel.de/download/fritz.box/bftpd
- http://www.tecchannel.de/download/fritz.box/bftpd.conf
Der Befehl wget lädt die Dateien von der angegebenen URL in das temporäre Verzeichnis der FritzBox. Alle darin enthaltenen Daten bleiben (nur) bis zum nächsten Neustart der FritzBox erhalten. Die Größe der Dateien sollte ungefähr 830 Byte und 64.500 Byte betragen.
Anschließend müssen mittels chmod für beide Dateien die Rechte noch entsprechend eingestellt werden. Dies erledigt:
chmod +x bftpd
chmod 777 bftpd.conf
FTP-Account anlegen
Bevor der Server nun gestartet werden kann, muss noch ein Account mit Benutzername und Passwort angelegt werden, mit dem man sich anschließend bei der FritzBox authentifiziert. Da das Passwort in der FritzBox nicht im Klartext sondern sicher als Hash gespeichert wird, muss der Hash zunächst generiert werden. Das kann man auf dieser Seite schnell und einfach erledigen.
Wichtig ist darauf zu achten, Username und Passwort korrekt und vollständig ein zu geben, da der Hash-Wert aus beiden Angaben generiert wird. Somit wird später sichergestellt, dass nur die korrekte Kombination aus Username und Passwort Zugang erhält. Bei der Authentifizierung wird der Hash nach dem selben Algorithmus erzeugt. Stimmt der generierte Hash-Wert, so waren die eingegebenen Login-Daten korrekt.
Im folgenden Befehl dann einfach die Platzhalter durch den Benutzernamen und den dazugehörigen Hashwert ersetzen und per Telnet absenden:
echo "USERNAME:HASH:0:0:root:/:null" >> /var/tmp/passwd
Dadurch wird in der Passwort-Datei eine Zeile für den FTP-Login hinzugefügt. Der Server kann anschließend gestartet werden:
./bftpd -d -c /var/tmp/bftpd.conf
FTP-Zugang testen
Wenn alles geklappt hat, müsste der FTP-Zugriff bereits funktionieren. Dazu im Windows den Datei-Explorer öffnen und in der Adresszeile ftp://192.168.178.1/ eingeben, wobei auch hier die IP-Adresse selbstverständlich wieder variieren kann. War die Installation des FTP-Servers erfolgreich, so müsste nun das "Anmelden als"-Fenster erscheinen. Bekommt man nach Eingabe der zuvor gewählten Login-Daten nun die Dateien der FritzBox zu sehen, so war auch das Anlegen des Account von Erfolg gekrönt.
Hinweis: Hier muss das Passwort wieder im Klartext eingeben werden und nicht der generierte Hash-Wert!
Ist irgendwas schief gelaufen, so seien Sie unbesorgt: nach dem nächsten Neustart der FritzBox sind sämtliche Änderungen wieder verloren, da wie bereits erwähnt alles im temporären Verzeichnis abgelegt wurde.
Um Tippfehler zu vermeiden, empfehle ich die Telnet-Kommanodos in die Zwischenablage zu kopieren und anschließend in der Kommandozeile mittels Rechtsklick und "Einfügen" einzufügen. Zum Schluss nochmal eine vollständige bespielhafte Befehlskette für die Installation des FTP-Servers per Telnet:
cd /var/tmp
wget http://www.tecchannel.de/download/fritz.box/bftpd
wget http://www.tecchannel.de/download/fritz.box/bftpd.conf
chmod +x bftpd
chmod 777 bftpd.conf
echo "mrplow:eKB3k5DzIkQBk:0:0:root:/:null" >> /var/tmp/passwd
./bftpd -d -c /var/tmp/bftpd.conf
Update: Es geht auch einfacher!
In den Kommentaren zu diesem Beitrag, war jemand so nett mich auf einen weitaus einfacheren Weg hinzuweisen: Die Freeware "FritzTempFTP"[1] erleichtert die Einrichtung des temporären FTP-Zugangs auf der FritzBox um einiges. Vielen Dank an dieser Stelle für den Hinweis.
Tool starten, Passwort eingeben und auf den Knopf drücken. Die Software verbindet sich per Telnet mit der FritzBox, weshalb dieses wie im ersten Teil beschrieben aktiviert sein muss. Anschließend lädt es ebenfalls den kleinen FTP-Server "bftpd" aus dem Internet nach und richtet - insofern nicht anders angegeben - einen Account mit dem Benutzernamen und dem identischen Passwort "Test" ein. Kurz darauf kann man sich schon per FTP-Client auf der FritzBox anmelden. Die Zugangsdaten lassen sich natürlich auch ändern.
Das Programm habe ich soeben getestet und es ging wirklich sehr schnell und einfach. Als zusätzliches Feature bietet die Software die Möglichkeit, den Hinweis bezüglich unerlaubter Modifikationen im Webinterface der FritzBox zu entfernen. Ebenso lasst sich die FritzBox per Knopf-Druck neustarten.
Fazit: das Tool ist ideal, um sich schnell mal per FTP auf der Box einzuloggen.
[1] FritzTempFTP