iptables auf 7390

Moin Ralf,
betrifft es bei dir denn auch eine 7390 (leider hast du ja keine Sig) ?
Wenn nicht, ist es ja was generelles, und man könnte der Thematik einen eigenen Thread spendieren.
 
Hallo Leute,

Ich habe mal zufällig hier hereingeschaut...

Netfilter ist die linux firewall. Mit iptables wird diese per shell mit Regeln versorgt. nhipt ist nur ein GUI, das aus einer komfortablen Oberfläche syntaktisch richtige Kommandozeilen absetzt, man könnte auch von der shell diese händisch eingeben - und die geladenen Regeln übersichtlich anzeigt. Weiterhin bietet nhipt unterschiedliche Mechanismen zum sichern der aktuellen Regen über einen Reboot hinaus.

Dafür kommt z.B. die debug.cfg oder wahlweise eben auch die freetz Mimik zum Einsatz.

Desweiteren erleichtert nhipt das Aufzeichnen und Auswerten des Firewall-Logs bei durch AVM "verbogenen" printk (DECT Boxen wie die 72xx).

Es ist mit und ohne der freetz GUI lauffähig.

Das iptables Paket versucht aus iptables einen "freetz-dienst" zu emulieren mit start / stop / restart etc und das Ganze irgendwie zu verpacken. Einige Regeln lassen sich damit nicht erstellen und das UI ist extrem langsam bei längeren Regelwerken auf Grund der Programmierung und der Art und Weise, wie die geladenen Regeln ausgelesen werden. Außerdem ist das freetz UI recht eng, um die Regeln ordentlich anzuzeigen. Das war die Motivation für die Schaffung von nhipt.

Wie das Ganze funktioniert, ist in der wiki und im Forum erklärt. Falls Ihr Fragen zu nhipt habt, bitte im entsprechenden thred posten, da bekomme ich automatisch eine e-mail, ansonsten lese ich eher sporadisch hier mit.

Viele Grüße

cando

P.S. auf meiner 7390 laufen iptables stabil mit dem nhipt -UI (unter Benutzung des patches - siehe Forum-Thread zu nhipt)
 
Zuletzt bearbeitet:
Hi!

Ich habe leider auch ein kleines Problem mit den Logfiles von nhipt, bzw. iptables.
Und zwar werden die Logs nicht gespeicher. Weder in /var/log/messages noch in einer eigenen Datei. Hinzu kann ich die Werte vom nhipt Hauptmenu nicht ändern, sondern muss sie Datei /var/tmp/nhipt.par direkt editieren. Leider enthält nhipt.par keine LogStartOption. Wenn ich den Wert" START_LOG=start" aus nhipt.cgi in nhipt.par schreibe, gibt es keine Reaktion.
So finde ich immer nur eine Datei /var/media/nhipt.log mit dem Inhalt "ACCESS DENIED" vor, weiß dabei aber nicht, worauf sich das access denied bezieht. Ich nhipt.cgi bezieht sich ACCESS DENIED auf login !=1, doch deren Bedeutung verstehe ich nicht und Schreibrechte können es nicht sein, da er vom usb-Stick sowohl liest wie schreibt.
Sonst laufen aber die iptables aber tadelos! :) Danke freetz und cando.
 
Zuletzt bearbeitet:
Hi,

Soweit ich sehe, hast Du die 7390 und vermutlich mit der aktuellen Firmware. AVM hat wieder ein bischen am System gebastelt und die Funktion AVM_PRINTK wieder eingeführt, was zur Folge hat, dass kernel log Meldungen nach /dev/debug umgeleitet werden (wie schon bei der 7270).

Um den firewall log zu sehen gibt es mehrere Möglichkeiten:

1.) Mit ssh auf die Konsole der Box gehen und cat /dev/debug eingeben - dann siehst Du in der Konsole die letzten Ausgaben und auch die aktuellen, bis Du mit ctrl-c abbrichst.

2.) mit ssh auf die Konsole anmelden und echo STD_PRINTK > /dev/debug eingeben. Das sorgt dafür, dass alle Meldungen wieder im syslog / kernel log landen. Wenn du den klogd in Deinem freetz Image hast und konfiguriert hast, findest Du fortan die iptables logs im syslog - und auch im UI von nhipt.

Für die 7390 hatte ich den nhipt-eigenen log-deamon wieder herausgepatched, da es ja mit der ersten Firmware tadellos über den syslog funktionierte. Wenn ich mal etwas mehr Zeit habe und bei der nächsten FW Version dieser Zustand mit dem AVM_PRINTK weiter besteht, werde ich den Patch wieder entfernen / modifizieren und die gleiche Rucksack-Log Mimik der 7270 auch für die 73xx einbauen.

Mit dem oben beschriebenen Workaround kann man sich in der Zwischenzeit aber gut behelfen...
 
Hi Cano!

Erst Einmal vielen Dank für Deine Unterstützung. Leider ist mir aber, aus bisher für mich unerfindlichen Gründen, der watchdog dazwischen gekommen, als ich ein neues image draufgespielt habe. Deshalb musste ich das Problem erst einmal leider verschieben, da ich so keine Prüfungen richtig durchführen kann.
 
So, jetzt funktioniert wieder alles wunderbar!
Die experimentellen Patches [Remove VOIP & ISDM Files] und [REMOVE WLAN Files] waren dafür verantwortlich, der die Box immer wieder abstürzte und auf Port 80 nicht erreichbar war. Auch kenne ich jetzt den Unterschied zwischen rc.custom und rc.external. ;) Jetzt bekomme ich meine iptables-Logs mit der syslog auf meinen Stick. :)
 
Zuletzt bearbeitet:
@knorr
Es geht um die 7390? Liegt es an einem der Patches oder an der Kombination? Dann sollten wir die vielleicht raus nehmen und andere vor dem Fehler bewahren. Ich hab leider keine 7390 zum Testen.

Gruß
Oliver
 
Also ich sehe diese beiden experimentellen Patches als zu experimentell an. Da sie von alleine zu schwere Fehler verursachen. Doch verfüge ich nicht über genügend Erfahrung um urteilen zu können, ob die beiden experimentellen Patches nicht individuell angepasst werden müssen/ oder können damit sie laufen.
 
Hi

Ich muss hier nochmals was nachfragen was mir nicht ganz klar ist. Wie ich den Thread verstanden habe, muss man für IPTables auf der 7390 nichts kompilieren, da dies bereits im Kernel von AVM drin ist.

Nun die Fragen:
1. nhipt und iptables-cgi sind somit nicht nötig, falls doch, ich konnte die nirgends bei make menuconfig finden (trunk)
2. ich benötige die nicht zwingend, aber frage mich, mit welchem programm (auch commandline) ich iptables konfigurieren kann.

Danke
 
..., aber frage mich, mit welchem programm (auch commandline) ich iptables konfigurieren kann.
...
Ich weiss nicht ob man das "konfigurieren" nennen soll, aber ich setze die iptables-Regeln mit einem Shell-Skript.
 
Ich weiss nicht ob man das "konfigurieren" nennen soll, aber ich setze die iptables-Regeln mit einem Shell-Skript.

genau das suche ich ;-) ich habe ein shellscript dass per crond alle x minuten startet, dort mache ich einen reverselookup für irgendwelche dyndns adressen und möchte für diese die firewall anpassen. kannst du mir mal ein teil des shellscripts posten, also z.b. wie man einen port für source ip x öffnest? ;-)

danke
 
... kannst du mir mal ein teil des shellscripts posten, also z.b. wie man einen port für source ip x öffnest? ;-)
Einen Port für eine source IP öffnen? Woher willst Du wissen, dass ich so etwas in meinem Skript habe?
Code:
iptables -A INPUT -s <source ip> --dport <destination port> -j ACCEPT
Du solltest dich mit den iptables basics vertraut machen.;)
 
danke, jetzt komme ich ich wieder zu meiner ursprünglichen frage. denn das mit iptables hatte ich auch schon ausprobiert und vermutet, aber ich erhalte dann immer

root@fritz:/var/mod/root# iptables
-sh: iptables: not found

nun die frage, muss ich irgend etwas spezielles mitkompilieren im make menuconfig odere irgendetwas aktivieren damit iptables geht?
 
"iptables" ist eigentlich ein Programm, um damit die Kernel-Module zu steuern. AVM hat nur ein paar Kernel-Module mit drin, nicht das Programm zur Steuerung, deshalb musst du das mit freetz noch hinzufügen, um es nutzen zu können, ggf. mit den benötigten Libraries...

Du kannst das in der Tat sogar ohne Freetz nutzen, ich habe in diesem Beitrag u.a. ein passendes iptables mit Modulen angehängt (neben dem openvpn).
 
Zuletzt bearbeitet:
Warum ist denn iptables im Kernel, wenn das Steuerprogramm dazu gar nicht da ist? Wie werden denn sonst die Regeln gesetzt?
Kann jemand mal feststellen, ob mit AVM-Firmware überhaupt iptables Regeln gesetzt werden?
 
Beim kurzen Prüfen konnte ich keine Regeln sehen
Code:
# for x in $(cat /proc/net/ip_tables_names); do 
> echo "******* Begin Table $x *******************"
> /var/media/ftp/iptables -L -n -v -t $x; 
> echo "********* End Table $x *******************"
> echo 
> done
******* Begin Table mangle *******************
********* End Table mangle *******************

******* Begin Table filter *******************
********* End Table filter *******************

#

gibt es mehr, wonach man schauen könnte??

Jörg
 
Wenn da keine Regeln angezeigt werden, dann sind auch keine Regeln geladen.

Ich frage mich nur, warum dann iptables überhaupt in der Firmware enthalten ist. Waren noch einige Bytes frei?
 
Ich glaube, ich habe da was gefunden (momentan keine Box im direkten Zugriff, deshalb im Freetz-Verzeichnis des "Originals"):
Code:
joerg@joerg-desktop:~/freetz-trunk_7390/build/original/filesystem$ for x in $(grep -r netfilter * 2>/dev/null | grep -v modules.dep | sed 's/.*rdatei \(.*\)\./\1/'); do echo "Untersuche $x" ; strings $x | grep -i netfilter ; echo -e "********************\n"; done
Untersuche bin/usermand2
netfilter_queue_forward
netfilter_queue_read
netfilter_queue_get_message_type
netfilter_queue_get_packet
netfilter_queue_create
netfilter_queue_destroy
netfilter_queue
********************

Untersuche bin/usermand
netfilter_queue_forward
netfilter_queue_read
netfilter_queue_get_message_type
netfilter_queue_get_packet
netfilter_queue_create
netfilter_queue_destroy
netfilter_queue
********************

Untersuche lib/modules/2.6.19.2/kernel/drivers/userman/userman_mod.ko
<6>userman: register_netfilter_hooks() failed
********************

joerg@joerg-desktop:~/freetz-trunk_7390/build/original/filesystem$

Scheint also im Zusammenhang mit der "Kindersicherung" zu sein.

Jörg
 
Du kannst das in der Tat sogar ohne Freetz nutzen, ich habe in diesem Beitrag u.a. ein passendes iptables mit Modulen angehängt (neben dem openvpn).

Danke, IP-Tables läuft nun. Jetzt habe ich doch noch eine Frage: Ist es richtig, dass wenn ich das DSL Modem verwende, dann z.B. Port 80 mit iptables forward nach intern weiterleite, ich zuerst in der AVM Firewall Port 80 öffnen muss. Ich kann dies nicht direkt mit iptables alleine umstellen?
 
Holen Sie sich 3CX - völlig kostenlos!
Verbinden Sie Ihr Team und Ihre Kunden Telefonie Livechat Videokonferenzen

Gehostet oder selbst-verwaltet. Für bis zu 10 Nutzer dauerhaft kostenlos. Keine Kreditkartendetails erforderlich. Ohne Risiko testen.

3CX
Für diese E-Mail-Adresse besteht bereits ein 3CX-Konto. Sie werden zum Kundenportal weitergeleitet, wo Sie sich anmelden oder Ihr Passwort zurücksetzen können, falls Sie dieses vergessen haben.