Ja, wie der Titel sagt habe ich ein Problem mit Iptables.
Es geht um einen Grenzrechner mit Squid + SquidGuard sowie Iptables - handelt sich um ein simples Firewall Projekt.
Squid und SquidGuard funktionieren top, nur sobald ich das Iptables Script starte, kriege ich nur noch ein "Netzwerk-Zeitüberschreitung" von Firefox (auf dem Rechner, der durch den Grenzrechner "geschützt" werden soll).
Hat vielleicht jemand eine Lösung für das Problem?
Generell kann ich spontan keinen Fehler finden, du könntest mal ein wenig mit dem LOG Target rumspielen, um zu gucken, bei welcher Regel die Pakete hängen bleiben (oder natürlich wireshark/tcpdump anschmeißen). Die Manpage von iptables rät übrigens von der Verwendung von -j MASQUERADE ab, wenn es sich vermeiden lässt (also, wenn man statische IPs hat - was du hast).
Generell kann ich spontan keinen Fehler finden, du könntest mal ein wenig mit dem LOG Target rumspielen, um zu gucken, bei welcher Regel die Pakete hängen bleiben
...
Muss ich mir mal angucken, oder hast du vllt. so direkt nen Bsp. wie man das auf Iptables anwendet?
Zitat
oder natürlich wireshark/tcpdump
...
Hab mal eben Wireshark angeschmissen und www.videolan.org angefragt, eine Antwort kommt sogar zurück, 88.191.250.2, allerdings sagt Firefox trotzdem Netzwerk-Zeitüberschreitung.
Zitat
Die Manpage von iptables rät übrigens von der Verwendung von -j MASQUERADE ab, wenn es sich vermeiden lässt (also, wenn man statische IPs hat - was du hast).
...
Vorgabe, daher ist das in diesem Fall zu vernachlässigen.
Muss ich mir mal angucken, oder hast du vllt. so direkt nen Bsp. wie man das auf Iptables anwendet?
...
Naja, du könntest z.B. vor # Protokollports öffnen # ne Zeile iptables -A Own -j LOG einfügen. Dann bekommst du für jedes Paket, dass es an den vorigen Regeln vorbei geschafft hat, eine (lange) Zeile im Kernel Log. Wenn da das Paket dabei ist, das dir fehlt, ist der Fehler in den Regeln weiter unten...
Zitat
Hab mal eben Wireshark angeschmissen und www.videolan.org angefragt, eine Antwort kommt sogar zurück, 88.191.250.2, allerdings sagt Firefox trotzdem Netzwerk-Zeitüberschreitung.
...
Wo hast du Wireshark angeschmissen, auf dem Router oder auf dem Rechner dahinter, der die Zeitüberschreitung bekommt? Wenn ersteres, sollte das Paket zwei mal auftauchen: Einmal als Eingang auf eth0 und einmal als Ausgang auf eth1. Wenn du es auf dem Client mit Zeitüberschreitung laufen hattest und er trotzdem ne Zeitüberschreitung hatte, ist irgendwas sehr strangely broken. o_O
lauten müssen. :\ Jetzt läuft das Script auch brav zusammen mit Squid als Transp. Proxy und SquidGuard als Web-Filter. Jetzt müsste ich nur mal paar drops machen...
lauten müssen. Jetzt läuft das Script auch brav zusammen mit Squid als Transp. Proxy und SquidGuard als Web-Filter. Jetzt müsste ich nur mal paar drops machen...
...
Okaaaay... Ich wusste, dass ich das -t nat immer direkt hinter iptables schreibe, ich wusste aber nicht, dass es Pflicht ist. Auch wenns Sinn macht, da iptables die Commandline IIRC sequenziell abarbeitet.
Anyway, was ich noch zu DROPs sagen wollte: Denk drüber nach, ob du DROP oder REJECT benutzen willst. REJECT ist in vielen Fällen praktischer, da es eine (sinnvolle?) Fehlermeldung zurück liefert und man nicht auf ein Timeout warten muss. DROPs sorgen mit Pech einfach nur dazu, dass die Software es weiter versucht, während ein "Port unreachable" die Software (welche auch immer) eher dazu bringen sollte, aufzugeben.