Vorwort
Ich möchte in diesem Beitrag kurz die Benutzung des FirewallBuilders (NetCitadel) im Zusammenspiel mit der Fritzbox (mit ds-mod) beschreiben.
Der FirewallBuilder ist u.a. eine Oberfläche zur komfortablen Konfiguration von IP-Tables (das Command-Line-Tool der Linux Netfilter) siehe auch Wikipedia . Mit dem Firewall Bulder lassen sich sehr einfach Regeln für den Zugang ins und vom Internet erstellen und schließlich auf die Fritzbox laden.
Auf der Fritzbox wird der ds-mod benötigt, da die Box von Haus aus keine iptables unterstützt. Im ds-mod sind diese automatisch in den Kernel eingebunden. Das Kompilieren des ds-mod für die eigene Box ist in anderen Beiträgen hinreichend beschrieben.
Allerdings gibt es auch noch einige nicht eingebundene Teile im ds-mod, so dass verschiedene Filter des FirewallBuilders nicht funktionieren (z.B. ICMP). Da aber Firewall-Aktionen meist mit verschiedenen Regeln erreicht werden können, lassen sich hier alternative Wege finden.
Im Moment ist das Implementieren der Regen noch ungefährlich, da das entstandene Firewall-Script nach einem Neustart der Box nicht automatisch ausgeführt wird, alle Regeln damit zwar in einem File auf der Box sind, aber nicht wieder von alleine aktiv werden. Damit die Firewall nicht bei Stromausfall unsicher wird, muss das noch gemacht werden. (Hilfe erwünscht, sie Fragen ganz unten.)
Vielleicht trägt dieser Beitrag auch dazu bei, die noch bestehenden Fragen auszuräumen.
Versionen
Vorbereitung
FirewallBuilder
Bei der Installation des FirewallBuilders auf dem PC gab es keine Besonderheiten. Da der FirewallBuilder eine SSH Session zum Kopieren und Aktiveren des Firewall-Scripts auf der Fritzbox braucht, habe ich noch plink.exe und pscp.exe für meinen WindowsPC runtergeladen (einfach danach googeln). Putty geht wohl auch.
DS-Mod
Bei der Kompilierung des ds-mod für die Fritzbox ist es notwendig, das iproute2 Modul (freundlicherweise bereitgestellt von olistudent und ganz unten angehängt), auspacken (im cygwin: gzip -d iproute.tar.gz , tar xvf iproute2.tar ) und die entpackte Datei "ip" in das Verzeichnis des zu kompilierenden ds-mod /root/usr/bin zu kopieren. Damit ist es später auf der Box auch dort zu finden. Anderenfalls gibt es bei Ausführen der Firewall-Scripts später eine Fehlermeldung „iproute not found“.
Überprüfen kann man das später indem man auf der Fritzbox „/usr/bin/ip link show“ eingibt. Ohne die Datei im /usr/bin Verzeichnis kommt eine Meldung zurück wie der Befehl richtig lauten muss. Ist die Datei da, listet die Box die vorhandenen Interfaces.
SSH (Dropbear) muss beiden Paketen ausgewählt sein, da der FirewallBuilder SSH zum download der Config nimmt und über SSH auch das Script ausführt.
Es folgt die Installation des ds-mod auf der Fritzbox (auch in anderen Beiträgen schon behandelt)
Jetzt kann mal „/usr/bin/ip link show“ und SSH getestet werden (user is „root“ und Passwort wurde in der ds-mod Konfiguration gesetzt.)
Das sollte so aussehen:
(ACHTUNG! Beim allerersten Mal fragt das Programm ob man sicher ist, mit diesem Host verbunden zu werden und ob der Geräte Hash permanent auf dem Rechner abgespeichert werden soll. Diese Frage mit y beantworten.):
WICHTIG! Hier schon mal die Interfaces abfragen, die brauchen wir später
Prima, dann können wir auf dem FirewallBuilder eine neue Firewall generieren.
Firewall einrichten
Firewall anlegen
Beim Start fragt der FirewallBuilder, ob er eine Datei öffnen oder eine neue Projektdatei anlegen soll. Beim ersten Mal machen wir natürlich eine neue Datei.
Im Userbereich legen wir eine neue Firewall an („Objekt“ „Neues Objekt“, „Firewall“). Keine Vorkonfigurierte verwenden, da muss man zu viel drin ändern (theoretisch kann man natürlich Template 2 der Vorkonfigurierten verwenden). Ich fand es besser die Regeln selber zu erstellen.
Wichtig ist, dass als Software ‚iptables’ und als Betriebssystem ‚Linux 2.4/2..6’ angegeben wird, sonst kommen falsche Befehle raus. > Weiter
Auf der Nächsten Seite wählt man ‚Interfaces von Hand konfigurieren’ SNMP geht nicht. > Weiter
Jetzt müssen die Interfaces konfiguriert werden, die Namen und Adressen haben wir weiter oben schon mit „ifconfig“ abgefragt:
> Weiter
Im jetzt erschienenen Firewall Fenster legen wir noch die Version der „iptables“ mit „1.29 oder neuer“ fest und über den Button „Host Betriebssystem Einstellungen“ „Pfad“ legen wir noch für IP fest wo wir beim Kompilieren das IP File hingelegt haben. /usr/bin/ip
„OK“
Unter den „Firewall Einstellungen“ „Kompiler“ sollte man vielleicht den letzten Punkt „Immer Zugriff mit SSH von einer Management Station“ erlauben und die eigene IP Adresse eintragen (nur zu Sicherheit, dass man sich nicht mal mit einem falschen Filter selber aussperrt).
Unter dem Reiter „Installations-Programm“ wird als Verzeichnis „/var/flash“ angegeben und als Benutzername „root“
„OK“
„Änderungen durchführen“
Firewall ist angelegt.
Sonstige Einstellungen
Im FirewallBuilder unter „Bearbeiten“, „Einstellungen“, „SSH“ werden jetzt die beiden Programme, die wir runtergeladen haben, mit Pfad eingegeben, z.B.
Firewall Regeln
Die Regeln kann man sehr schön mit „drag and Drop“ anlegen wobei es User- (selbst definierbare) und massig Standardobjekte (bekannte Ports, Dienste, Netzte usw.) gibt. Einige Dienste müssen z.B. selber angelegt werden, um die Telefonie zu erlauben. Wenn später in den Regeln z.B. UDPsrc7078-7085 auftaucht, ist ein Dienst zu definieren (rechte Maustaste auf UDP unter Services im User Bereich), der als Quellportnummern 7078 bis 7085 hat.
Ich habe hier mal die notwendigen Regeln für eine funktionierende Firewall zusammengeschrieben, die auch VoIP mit 1&1 Telefonie berücksichtigt. Damit kann man erst mal Telefonieren, Surfen, kriegt seine Adresse im Netz und kann die Fritzbox managen. Die Sicherheit der Endgeräte dürfte ansonsten erst mal mit der normalen Fritzbox vergleichbar sein, die Box selber ist etwas besser geschützt glaube ich. (Ich habe nichts mit der Fritzsoftware, die auf dem PC installiert wird, probiert eventuell müssen da noch Ports konfiguriert werden)
Darüber hinaus lassen sich tausende von Kombinationen ausdenken, was man durchlassen oder blocken will. Wie gesagt, einige Regeln produzieren Fehler (ICMP, NAT), da bin ich für Hinweise dankbar.
Hier also meine Regeln:
(wenn Fritzbox, eth0, dsl,lo dasteht, so ist aus der Tree-Ansicht der Firewall das Interface einfach in die Spalte gezogen, statt eth0 ist eventuell lan0 zu verwenden)
Unter Policy
Nummer Quelle -> Ziel Dienst Aktion
0. net192.168.1.0/24 -> eth0, ssh,dns,http,TCPdst81, accept
2. dsl -> beliebig, UDPdest5060, accept
3. dsl -> beliebig, UDPsrc7078-7085, accept
4. dsl -> beliebig, DNS, accept
5. dsl -> beliebig, beliebig, deny
6. Beliebig -> dsl, beliebig, deny
7. net192.168.1.0/24-> beliebig, beliebig, allow
0 regelt den Zugriff aus meinem Netz (192.168.1.0/24) auf die Fritzbox, TCP 81 habe ich für das Web-Interface des ds-mod angelegt
2, 3 Für die Telefonie zu 1&1 (mehr brauche ich tatsächlich nicht !!)
4 Die DNS requests, die die Fritzbox selber braucht
5 Den Rest von der Fritzbox abgehend wegschmeißen
6 Alles wegschmeißen, was in die Fritzbox auf das DSL sonst noch kommt. Die Telefoniekommunikation wird über die Filter 2 und 3 auch zur Fritzbox definiert.
7 Schließlich alles, was aus meinem lokalen Netz ins Internet (incl. zurück) will
Unter lo
Nummer Quelle -> Ziel Dienst Richtung Aktion
0 lo -> lo (also 127.0.0.1 ->127.0.0.1), alle dienste, both , allow
0 Sonst funktionieren die Anruflisten und anderen Telefoniesachen im Webinterface der Box nicht.
Unter eth0
Nummer Quelle -> Ziel Dienst Richtung Aktion
0. net192.168.1.0/24 -> eth0, beliebig , inbound, accept
0 regelt den Zugriff aus meinem Netz (192.168.1.0/24) auf die Fritzbox, eigentlich hatte ich das schon oben in den Policies, aber hier kommen noch mal Andere Dienste wie FTP .. dazu.
Wenn ich jetzt was aus dem lokalen Netz ins Internet sperren will definiere ich das direkt auf dem Ethernet Interface.
Oder restriktiv, lasse nur definierte Sachen ins Internet dann
Dann muss ich in 1 alle Dienste definieren, die ins Internet dürfen.
Man kann das ganze auch noch zeitabhängig regeln wenn man will, also für Kinder (wer das über Erziehung nicht hinkriegt (auweia)
Regeln auf die Fritzbox laden
Jetzt kommt das spannende:
Als Erstes die Regeln kompilieren, da sollten eigentlich keine Fehler auftreten. (damit wird auch das aktuelle Regelwerk gespeichert).
Dann die Regeln installieren.
Im folgenden Fenster ist das Passwort für den Nutzer root einzugeben. Des Weiteren sollte die ausführliche Installation gewählt werden.
Das Häkchen Testdurchlauf ist egal, die Box merkt sich das nach einem Reboot sowieso nicht (sie Fragen ganz unten).
Im Installationsfenster werden die Aktionen und Fehler mitgeschrieben (und ich bin sicher, dass es jede Menge Fehler und Meldungen am Anfang geben wird).
Bleibt das Script nach ca. 15 bis 20 Zeilen mit einer Frage stehen (ob die Verbindung zu diesem Gerät sichtig ist und ob der Geräte Hash gespeichert werden soll) und erwartet eine Antwort, muss das Programm für die Secure Remote Console mal separat gestartet und diese Meldung dort bestätigt werden,
Aussehen soll es aber normalerweise so:
Ich habe ein bisschen rausgeschnitten, hier kommt der eigentlich wichtige Teil:
So Jetzt sind die Regeln auf der Box. Die werden auch relativ schnell aktiv.
Kontrolle mit iptables –L.
WENN IHR JETZ NICHT MEHR DRAUFKOMMT HABT IHR WAS IN DEN REGELN FALSCH GEMACHT :-(
Aber ein Reset der Box (notfalls Stecker raus und rein) gibt euch wieder Zugang.
Ende
So das war’s. …… Puh.
Ich hoffe es hilft, ich hatte schon einige Post gesehen, die nach Firewall-Funktionen gefragt haben (z.B. in meiner WG sollen alle Surfen können, aber keiner E-Donkey o.ä.), das kann man damit alles regeln.
Ich gebe keine Garantien für das alles immer so klappt, wie beschrieben, bei mir läuft es aber so.
Fragen
Vielleicht kommen bei einer regen Nutzung auch ein paar Antworten auf meine Fragen.
Links
http://www.fwbuilder.org/
http://kris.koehntopp.de/artikel/fwb...fwbuilder.html
http://de.wikipedia.org/wiki/Iptables
Der erste Satz ist schlichtweg ein Witz geworden („… KURZ ….. beschreiben.“)
Danke an danisahne für den ds-mod und alle die bei den holprigen Anfängen geholfen haben.
Juergen
Ich möchte in diesem Beitrag kurz die Benutzung des FirewallBuilders (NetCitadel) im Zusammenspiel mit der Fritzbox (mit ds-mod) beschreiben.
Der FirewallBuilder ist u.a. eine Oberfläche zur komfortablen Konfiguration von IP-Tables (das Command-Line-Tool der Linux Netfilter) siehe auch Wikipedia . Mit dem Firewall Bulder lassen sich sehr einfach Regeln für den Zugang ins und vom Internet erstellen und schließlich auf die Fritzbox laden.
Auf der Fritzbox wird der ds-mod benötigt, da die Box von Haus aus keine iptables unterstützt. Im ds-mod sind diese automatisch in den Kernel eingebunden. Das Kompilieren des ds-mod für die eigene Box ist in anderen Beiträgen hinreichend beschrieben.
Allerdings gibt es auch noch einige nicht eingebundene Teile im ds-mod, so dass verschiedene Filter des FirewallBuilders nicht funktionieren (z.B. ICMP). Da aber Firewall-Aktionen meist mit verschiedenen Regeln erreicht werden können, lassen sich hier alternative Wege finden.
Im Moment ist das Implementieren der Regen noch ungefährlich, da das entstandene Firewall-Script nach einem Neustart der Box nicht automatisch ausgeführt wird, alle Regeln damit zwar in einem File auf der Box sind, aber nicht wieder von alleine aktiv werden. Damit die Firewall nicht bei Stromausfall unsicher wird, muss das noch gemacht werden. (Hilfe erwünscht, sie Fragen ganz unten.)
Vielleicht trägt dieser Beitrag auch dazu bei, die noch bestehenden Fragen auszuräumen.
Versionen
- FirewallBuilder 2.0.10 Windows
- Fritzbox 7170 mit 7170.29.04.06
- ds-mod 0.2.8
- 1&1 Internet Zugang mit IP Telefonie
Vorbereitung
FirewallBuilder
Bei der Installation des FirewallBuilders auf dem PC gab es keine Besonderheiten. Da der FirewallBuilder eine SSH Session zum Kopieren und Aktiveren des Firewall-Scripts auf der Fritzbox braucht, habe ich noch plink.exe und pscp.exe für meinen WindowsPC runtergeladen (einfach danach googeln). Putty geht wohl auch.
DS-Mod
Bei der Kompilierung des ds-mod für die Fritzbox ist es notwendig, das iproute2 Modul (freundlicherweise bereitgestellt von olistudent und ganz unten angehängt), auspacken (im cygwin: gzip -d iproute.tar.gz , tar xvf iproute2.tar ) und die entpackte Datei "ip" in das Verzeichnis des zu kompilierenden ds-mod /root/usr/bin zu kopieren. Damit ist es später auf der Box auch dort zu finden. Anderenfalls gibt es bei Ausführen der Firewall-Scripts später eine Fehlermeldung „iproute not found“.
Überprüfen kann man das später indem man auf der Fritzbox „/usr/bin/ip link show“ eingibt. Ohne die Datei im /usr/bin Verzeichnis kommt eine Meldung zurück wie der Befehl richtig lauten muss. Ist die Datei da, listet die Box die vorhandenen Interfaces.
SSH (Dropbear) muss beiden Paketen ausgewählt sein, da der FirewallBuilder SSH zum download der Config nimmt und über SSH auch das Script ausführt.
Es folgt die Installation des ds-mod auf der Fritzbox (auch in anderen Beiträgen schon behandelt)
Jetzt kann mal „/usr/bin/ip link show“ und SSH getestet werden (user is „root“ und Passwort wurde in der ds-mod Konfiguration gesetzt.)
Das sollte so aussehen:
(ACHTUNG! Beim allerersten Mal fragt das Programm ob man sicher ist, mit diesem Host verbunden zu werden und ob der Geräte Hash permanent auf dem Rechner abgespeichert werden soll. Diese Frage mit y beantworten.):
Code:
F:\Down0604\Hardware\Fritzbox>plink 192.168.1.253
login as: root
[email protected]'s password:
_ _
_| |___ __ _____ ___ _| |
| . |_ -|__| | . | . |
|___|___| |_|_|_|___|___|
Have a lot more fun ...
BusyBox v1.1.2 (2006.04.15-10:46+0000) Built-in shell (ash)
Enter 'help' for a list of built-in commands.
ermittle die aktuelle TTY
tty is "/dev/pts/0"
Console Ausgaben auf dieses Terminal umgelenkt
WICHTIG! Hier schon mal die Interfaces abfragen, die brauchen wir später
Code:
/var/mod/root # ifconfig
dsl Link encap:Point-Point Protocol
inet addr:192.168.179.1 P-t-P:192.168.179.1 Mask:255.255.255.255
eth0 Link encap:Ethernet HWaddr 00:15:0C:BF:AB:8C
inet addr:192.168.1.254 Bcast:192.168.1.255 Mask:255.255.255.0
lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
wlan Link encap:Ethernet HWaddr 00:15:0C:BF:AB:8C
inet addr:192.168.2.254 Bcast:192.168.2.255 Mask:255.255.255.0
/var/mod/root # exit
Prima, dann können wir auf dem FirewallBuilder eine neue Firewall generieren.
Firewall einrichten
Firewall anlegen
Beim Start fragt der FirewallBuilder, ob er eine Datei öffnen oder eine neue Projektdatei anlegen soll. Beim ersten Mal machen wir natürlich eine neue Datei.
Im Userbereich legen wir eine neue Firewall an („Objekt“ „Neues Objekt“, „Firewall“). Keine Vorkonfigurierte verwenden, da muss man zu viel drin ändern (theoretisch kann man natürlich Template 2 der Vorkonfigurierten verwenden). Ich fand es besser die Regeln selber zu erstellen.
Wichtig ist, dass als Software ‚iptables’ und als Betriebssystem ‚Linux 2.4/2..6’ angegeben wird, sonst kommen falsche Befehle raus. > Weiter
Auf der Nächsten Seite wählt man ‚Interfaces von Hand konfigurieren’ SNMP geht nicht. > Weiter
Jetzt müssen die Interfaces konfiguriert werden, die Namen und Adressen haben wir weiter oben schon mit „ifconfig“ abgefragt:
Name, Bezeichner, Adresse, Netzmaske, dynamische Adresse
eth0,eth0,192.168.1.254,255.255.255.0, nein
dsl,dsl,-,-,JA
wlan,wlan,192.168.1.254,255.255.255.0,nein
lo,lo,127.0.0.1,255.0.0.0,nein
Je nach Konfiguration weichen die Namen und Adressen ab (eth0 heißt lan oder lan0, eth0:0 und lan0:0 könne ignoriert werden, typisch sind die IP Adressen 192.168.178.1, 192.168.179.1)eth0,eth0,192.168.1.254,255.255.255.0, nein
dsl,dsl,-,-,JA
wlan,wlan,192.168.1.254,255.255.255.0,nein
lo,lo,127.0.0.1,255.0.0.0,nein
> Weiter
Im jetzt erschienenen Firewall Fenster legen wir noch die Version der „iptables“ mit „1.29 oder neuer“ fest und über den Button „Host Betriebssystem Einstellungen“ „Pfad“ legen wir noch für IP fest wo wir beim Kompilieren das IP File hingelegt haben. /usr/bin/ip
„OK“
Unter den „Firewall Einstellungen“ „Kompiler“ sollte man vielleicht den letzten Punkt „Immer Zugriff mit SSH von einer Management Station“ erlauben und die eigene IP Adresse eintragen (nur zu Sicherheit, dass man sich nicht mal mit einem falschen Filter selber aussperrt).
Unter dem Reiter „Installations-Programm“ wird als Verzeichnis „/var/flash“ angegeben und als Benutzername „root“
„OK“
„Änderungen durchführen“
Firewall ist angelegt.
Sonstige Einstellungen
Im FirewallBuilder unter „Bearbeiten“, „Einstellungen“, „SSH“ werden jetzt die beiden Programme, die wir runtergeladen haben, mit Pfad eingegeben, z.B.
- F:/Down0604/Hardware/Fritzbox/pscp.exe für das Kopierprogramm
- F:/Down0604/Hardware/Fritzbox/plink.exe für das Remote Cotrol Programm
Firewall Regeln
Die Regeln kann man sehr schön mit „drag and Drop“ anlegen wobei es User- (selbst definierbare) und massig Standardobjekte (bekannte Ports, Dienste, Netzte usw.) gibt. Einige Dienste müssen z.B. selber angelegt werden, um die Telefonie zu erlauben. Wenn später in den Regeln z.B. UDPsrc7078-7085 auftaucht, ist ein Dienst zu definieren (rechte Maustaste auf UDP unter Services im User Bereich), der als Quellportnummern 7078 bis 7085 hat.
Ich habe hier mal die notwendigen Regeln für eine funktionierende Firewall zusammengeschrieben, die auch VoIP mit 1&1 Telefonie berücksichtigt. Damit kann man erst mal Telefonieren, Surfen, kriegt seine Adresse im Netz und kann die Fritzbox managen. Die Sicherheit der Endgeräte dürfte ansonsten erst mal mit der normalen Fritzbox vergleichbar sein, die Box selber ist etwas besser geschützt glaube ich. (Ich habe nichts mit der Fritzsoftware, die auf dem PC installiert wird, probiert eventuell müssen da noch Ports konfiguriert werden)
Darüber hinaus lassen sich tausende von Kombinationen ausdenken, was man durchlassen oder blocken will. Wie gesagt, einige Regeln produzieren Fehler (ICMP, NAT), da bin ich für Hinweise dankbar.
Hier also meine Regeln:
(wenn Fritzbox, eth0, dsl,lo dasteht, so ist aus der Tree-Ansicht der Firewall das Interface einfach in die Spalte gezogen, statt eth0 ist eventuell lan0 zu verwenden)
Unter Policy
Nummer Quelle -> Ziel Dienst Aktion
0. net192.168.1.0/24 -> eth0, ssh,dns,http,TCPdst81, accept
2. dsl -> beliebig, UDPdest5060, accept
3. dsl -> beliebig, UDPsrc7078-7085, accept
4. dsl -> beliebig, DNS, accept
5. dsl -> beliebig, beliebig, deny
6. Beliebig -> dsl, beliebig, deny
7. net192.168.1.0/24-> beliebig, beliebig, allow
0 regelt den Zugriff aus meinem Netz (192.168.1.0/24) auf die Fritzbox, TCP 81 habe ich für das Web-Interface des ds-mod angelegt
2, 3 Für die Telefonie zu 1&1 (mehr brauche ich tatsächlich nicht !!)
4 Die DNS requests, die die Fritzbox selber braucht
5 Den Rest von der Fritzbox abgehend wegschmeißen
6 Alles wegschmeißen, was in die Fritzbox auf das DSL sonst noch kommt. Die Telefoniekommunikation wird über die Filter 2 und 3 auch zur Fritzbox definiert.
7 Schließlich alles, was aus meinem lokalen Netz ins Internet (incl. zurück) will
Unter lo
Nummer Quelle -> Ziel Dienst Richtung Aktion
0 lo -> lo (also 127.0.0.1 ->127.0.0.1), alle dienste, both , allow
0 Sonst funktionieren die Anruflisten und anderen Telefoniesachen im Webinterface der Box nicht.
Unter eth0
Nummer Quelle -> Ziel Dienst Richtung Aktion
0. net192.168.1.0/24 -> eth0, beliebig , inbound, accept
0 regelt den Zugriff aus meinem Netz (192.168.1.0/24) auf die Fritzbox, eigentlich hatte ich das schon oben in den Policies, aber hier kommen noch mal Andere Dienste wie FTP .. dazu.
Wenn ich jetzt was aus dem lokalen Netz ins Internet sperren will definiere ich das direkt auf dem Ethernet Interface.
Z.B. net192.168.1.0/24 -> beliebig, TCP8080, inbound, deny
Oder restriktiv, lasse nur definierte Sachen ins Internet dann
1 net192.168.1.0/24 -> beliebig, http,https,pop3,pop3s,smtp,ftp,ftpdata,AOL inbound, allow
2 net192.168.1.0/24 -> beliebig, beliebig, inbound, deny
2 net192.168.1.0/24 -> beliebig, beliebig, inbound, deny
Dann muss ich in 1 alle Dienste definieren, die ins Internet dürfen.
Man kann das ganze auch noch zeitabhängig regeln wenn man will, also für Kinder (wer das über Erziehung nicht hinkriegt (auweia)
Regeln auf die Fritzbox laden
Jetzt kommt das spannende:
Als Erstes die Regeln kompilieren, da sollten eigentlich keine Fehler auftreten. (damit wird auch das aktuelle Regelwerk gespeichert).
Dann die Regeln installieren.
Im folgenden Fenster ist das Passwort für den Nutzer root einzugeben. Des Weiteren sollte die ausführliche Installation gewählt werden.
Das Häkchen Testdurchlauf ist egal, die Box merkt sich das nach einem Reboot sowieso nicht (sie Fragen ganz unten).
Im Installationsfenster werden die Aktionen und Fehler mitgeschrieben (und ich bin sicher, dass es jede Menge Fehler und Meldungen am Anfang geben wird).
Bleibt das Script nach ca. 15 bis 20 Zeilen mit einer Frage stehen (ob die Verbindung zu diesem Gerät sichtig ist und ob der Geräte Hash gespeichert werden soll) und erwartet eine Antwort, muss das Programm für die Secure Remote Console mal separat gestartet und diese Meldung dort bestätigt werden,
Aussehen soll es aber normalerweise so:
Code:
Zusammenfassung:
* Firewall Name : AVM
* Benutzer Name: root
* Verwaltungs-Adresse : 192.168.1.254
* Plattform iptables
* Host Betriebssystem : linux24
* Laden der Konfiguration aus Datei C:/Dokumente und Einstellungen/avm254_3.fwb
Copying C:/Dokumente und Einstellungen/AVM.fw -> 192.168.1.254:/var/tmp
Ausgeführter Befehl 'F:/Down0604/Hardware/Fritzbox/plink.exe -ssh -pw XXXXXX -v -l root 192.168.1.254 echo '--**--**--';mkdir -p /var/flash/tmp;cat > /var/tmp/flash/AVM.fw && echo Done; '
Server version: SSH-2.0-dropbear_0.48
:
:
Initialised HMAC-SHA1 server->client MAC algorithm
Using username "root".
Sent password
Access granted
Opened channel for session
Started a shell/command
--**--**--
eingeloggt
Sent EOF message
Done
Server sent command exit status 0
All channels closed. Disconnecting
Server closed network connection
SSH-Sitzung beednet, Status: 0
Neue Policy wird aktiviert
Ausgeführter Befehl 'F:/Down0604/Hardware/Fritzbox/plink.exe -ssh -pw XXXXXX -v -l root 192.168.1.254 echo '--**--**--'; sh /var/flash/tmp/AVM.fw && echo 'Policy activated' '
Server version: SSH-2.0-dropbear_0.48
:
Using username "root".
Sent password
Access granted
Opened channel for session
Started a shell/command
--**--**--
Ich habe ein bisschen rausgeschnitten, hier kommt der eigentlich wichtige Teil:
Code:
eingeloggt
Activating firewall script generated Fri Aug 11 20:40:17 2006 by
Rule 0 (eth0)
Rule 1 (eth0)
Rule 2 (eth0)
Rule 3 (eth0)
Rule 4 (eth0)
Rule 5 (eth0)
Rule 6 (eth0)
Rule 0 (lo)
Rule 0 (global)
Rule 2 (global)
Rule 3 (global)
Rule 4 (global)
Rule 5 (global)
Rule 6 (global)
Rule 7 (global)
Policy activated
Server sent command exit status 0
All channels closed. Disconnecting
Server closed network connection
SSH-Sitzung beednet, Status: 0
Fertig
So Jetzt sind die Regeln auf der Box. Die werden auch relativ schnell aktiv.
Kontrolle mit iptables –L.
WENN IHR JETZ NICHT MEHR DRAUFKOMMT HABT IHR WAS IN DEN REGELN FALSCH GEMACHT :-(
Aber ein Reset der Box (notfalls Stecker raus und rein) gibt euch wieder Zugang.
Ende
So das war’s. …… Puh.
Ich hoffe es hilft, ich hatte schon einige Post gesehen, die nach Firewall-Funktionen gefragt haben (z.B. in meiner WG sollen alle Surfen können, aber keiner E-Donkey o.ä.), das kann man damit alles regeln.
Ich gebe keine Garantien für das alles immer so klappt, wie beschrieben, bei mir läuft es aber so.
Fragen
Vielleicht kommen bei einer regen Nutzung auch ein paar Antworten auf meine Fragen.
- Es fehlen noch einige Teile der iptables z.B. icmp, nat. Ich habe vergeblich versucht die reinzukomplieren. Vielleicht kann Danisahne die ins Paket kompilieren?, Eventuell auch iproute in die BusyBox?
Code:ls: *_nat_*: No such file or directory
Code:ls *_conntrack_* *_nat_*
Wahrscheinlich daher auch die folgende Meldung:
Code:iptables v1.3.5: can't initialize iptables table `nat': Table does not exist (do you need to insmod?) Perhaps iptables or your kernel needs to be upgraded.
Code:$IPTABLES -t nat -A POSTROUTING -o dsl -s 192.168.1.0/24 -j MASQUERADE
Code:iptables -A INPUT -p icmp -m icmp -s 192.168.1.0/24 -m state ...
Code:iptables v1.3.5: Couldn't load match `icmp':File not found Try `iptables -h' or 'iptables --help' for more information.
- Wenn man sich in der Telefonie verkonfiguriert stürzt die Fritzbox bei Anrufen ab. Im Telefon hört man dann nur Knistern bis die Box resettet.
- Die Regeln sind auch nicht aktiv nach einem Reset, man müsste noch ein Script beim Start der Fritzbox schreiben, was das Firewall-Script aufruft - Unix-Fans bitte vortreten.
- Ich kann nicht nachvollziehen, was man unter Advanced Options bei make menuconfig beim ds-mod kompilieren unter net machen kann, wenn ich dort mehr Kommandos der IP Tables aktiviere, funktioniert wesentlich weniger der Firewall Scripts.
Links
http://www.fwbuilder.org/
http://kris.koehntopp.de/artikel/fwb...fwbuilder.html
http://de.wikipedia.org/wiki/Iptables
Der erste Satz ist schlichtweg ein Witz geworden („… KURZ ….. beschreiben.“)
Danke an danisahne für den ds-mod und alle die bei den holprigen Anfängen geholfen haben.
Juergen
Anhänge
Zuletzt bearbeitet von einem Moderator: