To main content

Fritz!Box gemoddet

Veröffentlicht von Benjamin Marwell am

Die AVM Fritz!Box 7050 kann ohne großen Aufwand gemoddet werden, das heißt, sie wird um wesentliche Funktionen erweitert. Im Mod enthalten sind eine feste Zuordnung von IP- und Macadresse, eine stark konfigurierbare Firewall, Zugriff auf die Oberfläche von außen und Wake on Lan.

Kompilieren und aufspielen

Angenehmer Weise lässt sich der Mod unter Linux sehr einfach verwenden. Man lädt einfach den Mod - er heißt Freetz, ein Kofferwort aus "Free" und "Fritz" - herunter und kompiliert ihn. Spätestens beim Kompilieren ist Linux notwendig, da in der Fritz!Box auch ein Linux steckt.

Die stabile Version 1.0.3 kann unter Linux per SVN Checkout heruntergeladen werden:
svn co http://svn.freetz.org/tags/freetz-1.0.3 freetz-1.0.3

Im Anschluss geht man in das Verzeichnis (cd freetz-1.0.3 ) und kann sich mit make menuconfig  eine Konfiguration zusammenbasteln. Da der Speicher der Fritz!Box sehr begrenzt ist, muss man etwas auf seine Auswahl achten - hier vorgeschlagen sei eine funktionierende Beispielkonfiguration. Dessen Inhalt speichert man als .config in seinem Freetz-Verzeichnis.

Nun muss man diese noch einmal öffnen. Wer keine 1&1-Fritzbox hat, sondern eine unmodifizierte von AVM, der tauscht die Zeile

FREETZ_BRANDING_1und1=y

gegen folgende Zeile aus:

FREETZ_BRANDING_avm=y

Nun kann die Firmware mit make  kompiliert werden. Alle benötigten Programme werden dabei automatisch heruntergeladen. Das fertige Image befindet sich im Ordner ./images. Um es zu installieren. öffnet man in seiner Fritz!Box-Weboberfläche die Seite für das Firmwareupdate und wählt die soeben erzeugte Datei aus. Man sagt auch, die Fritzbox wird "geflasht", da es sich um einen Flash-basierten Speicher handelt.

Eine Anleitung zur Konfiguration könnte noch in einem der nächsten Einträge folgen :-). Die Modifikation "Freetz" war übrigens vorher als "Danisahne-Mod" bekannt (bzw. ds-mod).

Die Konfiguration

Hier nochmal als Codeblock.

#
# Automatically generated make config: don’t edit
#
FREETZ_HAVE_DOT_CONFIG=y
#
# General −−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−
#
FREETZ_AVM_VERSION_04_33=y
# FREETZ_TYPE_300IP_AS_FON is not set
# FREETZ_TYPE_2170 is not set
# FREETZ_TYPE_FON is not set
# FREETZ_TYPE_FON_5010 is not set
# FREETZ_TYPE_FON_5050 is not set
# FREETZ_TYPE_FON_5140 is not set
# FREETZ_TYPE_FON_WLAN is not set
FREETZ_TYPE_FON_WLAN_7050=y
# FREETZ_TYPE_FON_WLAN_7113 is not set
# FREETZ_TYPE_FON_WLAN_7140 is not set
# FREETZ_TYPE_FON_WLAN_7141 is not set
# FREETZ_TYPE_FON_7150 is not set
# FREETZ_TYPE_FON_WLAN_7170 is not set
# FREETZ_TYPE_FON_WLAN_7240 is not set
# FREETZ_TYPE_FON_WLAN_7270 is not set
# FREETZ_TYPE_WLAN_3020 is not set
# FREETZ_TYPE_WLAN_3030 is not set
# FREETZ_TYPE_WLAN_3130 is not set
# FREETZ_TYPE_WLAN_3131 is not set
# FREETZ_TYPE_WLAN_3170 is not set
# FREETZ_TYPE_WLAN_3270 is not set
# FREETZ_TYPE_SPEEDPORT_W501V is not set
# FREETZ_TYPE_SPEEDPORT_W701V is not set
# FREETZ_TYPE_CUSTOM is not set
FREETZ_AVM_VERSION_STRING="04.33"
FREETZ_TYPE_LANG_DE=y
# FREETZ_TYPE_LANG_A_CH is not set
# FREETZ_TYPE_LANG_EN is not set
FREETZ_TYPE_LANG_STRING="de"
FREETZ_TYPE_STRING="7050"
FREETZ_INSTALL_BASE=y
FREETZ_REPLACE_BUSYBOX=y
FREETZ_REPLACE_KERNEL_AVAILABLE=y
# FREETZ_REPLACE_KERNEL is not set
FREETZ_SHOW_ADVANCED=y
FREETZ_TARGET_REF="4mb_26"
FREETZ_KERNEL_REF="4mb_26"
FREETZ_KERNEL_LAYOUT="ar7"
FREETZ_KERNEL_MTD_SIZE=59
FREETZ_HAS_PHONE=y
FREETZ_HAS_WLAN=y
FREETZ_HAS_USB_CLIENT=y
# FREETZ_HAS_USB_HOST is not set
# FREETZ_HAS_AVM_INETD is not set
#
# Branding
#
FREETZ_BRANDING_1und1=y
# FREETZ_BRANDING_avm is not set
#
# Mod −−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−
#
FREETZ_LANG_DE=y
# FREETZ_LANG_EN is not set
FREETZ_LANG_STRING="de"
#
# Patches
#
FREETZ_REMOVE_HELP=y
FREETZ_REMOVE_ASSISTANT=y
FREETZ_REMOVE_TR069=y
# FREETZ_REMOVE_USB_MODULE is not set
FREETZ_PATCH_ENUM=y
FREETZ_PATCH_SIGNED=y
# FREETZ_PATCH_GETCONS is not set
FREETZ_REMOVE_WEBSRV=y
FREETZ_REMOVE_UPNP=y
FREETZ_REMOVE_UPNP_LIBS=y
FREETZ_REMOVE_USERMAN=y
# FREETZ_REMOVE_DSLD is not set
FREETZ_REMOVE_CAPIOVERTCP=y
# FREETZ_REMOVE_VOIP_ISDN is not set
#
# Package selection
#
#
# Standard packages
#
# FREETZ_PACKAGE_BFTPD is not set
# FREETZ_PACKAGE_BIRD is not set
FREETZ_PACKAGE_BRIDGE_UTILS=y
FREETZ_PACKAGE_CALLMONITOR=y
# FREETZ_PACKAGE_CHECKMAILD is not set
# FREETZ_PACKAGE_CIFSMOUNT is not set
# FREETZ_PACKAGE_CPMACCFG is not set
# FREETZ_PACKAGE_CURL is not set
# FREETZ_PACKAGE_DECO is not set
FREETZ_PACKAGE_DNSMASQ=y
FREETZ_PACKAGE_DROPBEAR=y
# FREETZ_PACKAGE_DROPBEAR_SERVER_ONLY is not set
# FREETZ_PACKAGE_DROPBEAR_WITH_ZLIB is not set
# FREETZ_PACKAGE_DTMFBOX is not set
# FREETZ_PACKAGE_ESPEAK is not set
# FREETZ_PACKAGE_FUSE is not set
# FREETZ_PACKAGE_INETD is not set
# FREETZ_PACKAGE_KNOCK is not set
# FREETZ_PACKAGE_MC is not set
# FREETZ_PACKAGE_MINI_FO is not set
# FREETZ_PACKAGE_MTR is not set
# FREETZ_PACKAGE_NANO is not set
# FREETZ_PACKAGE_NETCAT is not set
# FREETZ_PACKAGE_NETSNMP is not set
# FREETZ_PACKAGE_NTFS is not set
# FREETZ_PACKAGE_OPENNTPD is not set
# FREETZ_PACKAGE_OPENVPN is not set
# FREETZ_PACKAGE_PINGTUNNEL is not set
# FREETZ_PACKAGE_PRIVOXY is not set
# FREETZ_PACKAGE_RCAPID is not set
# FREETZ_PACKAGE_SAMBA is not set
# FREETZ_PACKAGE_SCREEN is not set
# FREETZ_PACKAGE_STUNNEL is not set
# FREETZ_PACKAGE_TCPDUMP is not set
# FREETZ_PACKAGE_TOR is not set
# FREETZ_PACKAGE_VPNC is not set
# FREETZ_PACKAGE_VSFTPD is not set
#
# Web interface
#
FREETZ_PACKAGE_AVM_FIREWALL=y

Weblinks

Update vom 16. 11. 2010: Codeblöcke aktualisiert und Config eingefügt.