iptables - Problem

Dieses Thema im Forum "Firewalls" wurde erstellt von onlineuser, 23.12.2009.

  1. #1 onlineuser, 23.12.2009
    onlineuser

    onlineuser Mitglied

    Dabei seit:
    05.05.2006
    Beiträge:
    34
    Zustimmungen:
    0
    Hi,

    habe folgende Konfiguration.

    Server mit 2 Netzwerkkarten.

    wifi: 192.168.77.1
    LAN: 192.168.1.5

    Vom wifi kommt man nur via OpenVPN ins LAN. Jetzt hab ich WLAN-Komponenten, die kein OpenVPN können und diese möchte ich nun vorbeischleußen.

    Für meine WLAN-Kamera hab ich dies eingetragen, damit man vom LAN aus die Konfigseite von der WLAN Kamera öffnen kann.

    Zitat:
    iptables -A FORWARD -i eth1 -s 192.168.77.26 -o br0 -d 0/0 -j ACCEPT
    iptables -A FORWARD -i br0 -s 0/0 -o eth1 -d 192.168.77.26 -j ACCEPT
    iptables -t nat -A PREROUTING -p tcp -i br0 -d 192.168.1.5 --dport 88 -j DNAT --to 192.168.77.26:80
    iptables -A FORWARD -p tcp -i br0 -d 192.168.77.26 --dport 80 -j ACCEPT
    Nun möchte ich einer WLAN Komponente erlauben, dass diese zum Proxy Server auf 192.168.1.1:8080 darf (übern Proxy surfen kann).

    Und dies gelingt mir irgendwie nicht.

    Vielleicht kann mir jemand helfen!?

    Liebe Grüsse.
     
  2. Anzeige

    Schau dir mal diese Kategorie an. Dort findest du bestimmt etwas.
    Registrieren bzw. einloggen, um diese und auch andere Anzeigen zu deaktivieren
  3. #2 oettinger, 23.12.2009
    oettinger

    oettinger Jungspund

    Dabei seit:
    23.12.2009
    Beiträge:
    12
    Zustimmungen:
    0
    Bei den iptables-Regeln mal überall noch LOG dazu wäre sicher sinnvoll.

    Dann könntest Du mal mittels tcpdump -i ... auf den diversen Interfaces schauen, wie weit dein Paket den für ihn angedachten Weg geht.

    Kannst Du von der "Komponente" aus irgendwie spezifischer testen? telnet, nmap o.ä.?

    Und welche Regel trägst Du denn für die "Komponente" ein? Hast Du auch am Proxy den Zugriff für die IP aus dem fremden Netz erlaubt? Welche Fehlermeldung bekommst Du denn? Timeout oder Connection refused?
     
  4. #3 onlineuser, 23.12.2009
    onlineuser

    onlineuser Mitglied

    Dabei seit:
    05.05.2006
    Beiträge:
    34
    Zustimmungen:
    0
    Naja, für den Bypass zum Proxy für einen Client hab ich noch keine Regeln.

    Den Port der WLAN Kamera hab ich mittels NAT dem 192.168.1.0/24 Netz zur Verfügung stellen können. Dann wird der 192.168.1.5:88 einfach auf 192.168.77.26:80 weitergeleitet.

    Jedoch nun benötige ich es umgekehrt - habs mit NAT und REDIRECT versucht, aber hat nicht funktioniert.

    Das mit dem LOG teste ich mal. Testen kann ich mit allen Tools. Am Proxy hab ich auch den Zugriff, jedochwenn ich den Bypass mittels NAT mache, dann sollte der Proxy so bleiben können, wie er ist, oder?

    Als Fehlermeldung kommt ein Timeout. Der Request kommt also nicht beim Proxy an, obwohl am Server sehe ich in der ARP-Table, dass er die ZielIP (Proxy) bei einem Request hinzufügt.
     
  5. #4 oettinger, 23.12.2009
    oettinger

    oettinger Jungspund

    Dabei seit:
    23.12.2009
    Beiträge:
    12
    Zustimmungen:
    0
    Klassisch für den Timeout wäre z.B. ein Problem mit der Rückroute vom Proxy.

    Bist Du sicher, dass der Request hier nicht erscheint? Das (D)NAT sollte ja nur die Ziel-IP umsetzen, deswegen könnte es schon sein, dass am Proxy konfiguriert werden muss. Sowohl besagter Rückweg als auch evtl. der Zugriff für die ihm "fremde" IP.
     
  6. #5 onlineuser, 23.12.2009
    onlineuser

    onlineuser Mitglied

    Dabei seit:
    05.05.2006
    Beiträge:
    34
    Zustimmungen:
    0
    vermute auch, dass der Rückweg nicht funktioniert

    Du meinst also auch, dass die analoge Regel passt?

    Aber durchs NAT kommt beim Proxy eh die IP 192.168.1.5 als Request an und nicht die aus dem 192.168.77.x Netz. Somit sollte der Proxy die Anfrage ja wieder auf 192.168.1.5 retour schicken und der Server dann wieder weiter zum 192.168.77.27 (Client), oder?
     
  7. #6 oettinger, 24.12.2009
    oettinger

    oettinger Jungspund

    Dabei seit:
    23.12.2009
    Beiträge:
    12
    Zustimmungen:
    0
    Da liegt m.E. dein Denkfehler. Unten beschreibst Du eine DNAT-Regel. Dabei wird aber die Ziel-IP umgeschrieben und nicht die Quell-IP. Man spricht eine IP in einem, dem anfragenden Rechner bekannten bzw. routbaren Netz an und diese wird am Router umgeschrieben (translated) auf eine andere, i.d.R. private Zieladresse.

    Wenn Du also an deinem Server eine DNAT-Regel einrichtest mit dhost 192.168.1.5, dport 8080 auf 192.168.1.1:8080, dann kannst Du den Proxy über die Router-IP ansprechen, am Proxy kommt dein Request aber mit der IP aus dem 192.168.77.0-Netz an. Ansonsten müsstest Du ein SNAT einrichten, welches für shost 192.168.77.27 & dport 8080 auf eben z.B. 192.168.1.5 als Source-IP nat'et. Dann passt auch die Rückroute automatisch, im DNAT-Fall musst Du dem Proxy erklären, wo 192.168.77.0/24 liegt - nämlich hinter 192.168.1.5. Natürlich würde es prinzipiell auch reichen, nur den einen Client zurückzurouten (Hostroute), dann fällt man halt beim nächsten mal wieder drüber ;)
     
  8. #7 onlineuser, 24.12.2009
    Zuletzt bearbeitet: 24.12.2009
    onlineuser

    onlineuser Mitglied

    Dabei seit:
    05.05.2006
    Beiträge:
    34
    Zustimmungen:
    0
    hm, ok, das mit snat statt dnat klingt einleuchtend, jedoch funktioniert das auch nicht.

    nochmal meine Konfiguration:

    [​IMG]


    eth1 und br0 sind nicht gebridged. Client 2 bekommt von eth1 eine IP und kann mittels OpenVPN Client eine Verbindung herstellen und bekommt am OpenVPN Adapter dann von 192.168.1.1 eine IP vom 192.168.1.0er Netz.

    Client 1 soll ohne OpenVPN den HTTP-Proxy auf 192.168.1.1 benutzen dürfen.

    HTTP Proxy auf 192.168.1.1 läuft auf Port 8080

    dies, denke ich, ist mal notwendig für die Hinroute zum Proxy:

    iptables -A FORWARD -i eth1 -s 192.168.77.26 -o br0 -d 0/0 -j ACCEPT
    iptables -A FORWARD -i br0 -s 0/0 -o eth1 -d 192.168.77.26 -j ACCEPT

    und das SNAT sollte den Rest erledigen, oder?

    iptables -t nat -A POSTROUTING -p tcp -o eth1 -j SNAT --to 192.168.77.26
    iptables -A FORWARD -p tcp -i br0 -d 192.168.77.26 --dport 1024:65535 -j ACCEPT

    aber mit diesen 4 Regeln funktioniert es leider nicht.

    Was mache ich falsch?
     

    Anhänge:

  9. #8 oettinger, 24.12.2009
    oettinger

    oettinger Jungspund

    Dabei seit:
    23.12.2009
    Beiträge:
    12
    Zustimmungen:
    0
    Wolltest Du nicht überall noch -j LOG,... einfügen? ;)

    Sorry, aber das bekomme ich zur vorgerückten Stunde so nicht mehr durchgedacht, was Du da versuchst. ?(

    Die SNAT-Regel sollte m.M.n. die Source für Anfragen von -s 192.168.77.26 auf 192.168.1.5 umschreiben. Dann kommt die Anfrage an den Proxy mit der IP des Servers daher und wird korrekt an ihn zurückgegeben. So herum muss natürlich 192.168.77.26 wissen, wo 192.168.1.1 liegt, wenn er ihn direkt ansprechen soll -> Route über 192.168.77.1 bekanntmachen.
     
  10. #9 onlineuser, 24.12.2009
    onlineuser

    onlineuser Mitglied

    Dabei seit:
    05.05.2006
    Beiträge:
    34
    Zustimmungen:
    0
    Ok, habs nun gelöst :-)

    iptables -A FORWARD -i eth1 -s 192.168.77.26 -o br0 -d 0/0 -j ACCEPT
    iptables -A FORWARD -i br0 -s 0/0 -o eth1 -d 192.168.77.16 -j ACCEPT
    iptables -t nat -A POSTROUTING -p tcp -o br0 -j SNAT --to 192.168.1.5:1024-65535

    Jetzt muss ich halt noch den Zielport usw. noch einschränken, damit wirklich nur die Kommunikation zum Proxy durchgelassen wird und der Rest verworfen wird.
     
  11. #10 saeckereier, 24.12.2009
    saeckereier

    saeckereier Graue Eminenz

    Dabei seit:
    08.05.2005
    Beiträge:
    1.920
    Zustimmungen:
    0
    Ort:
    Im schönen Norden
    Meines Erachtens sollte das ohne NAT einfach nur mit den entsprechenden Routing-Einträgen laufen.
     
  12. #11 onlineuser, 24.12.2009
    onlineuser

    onlineuser Mitglied

    Dabei seit:
    05.05.2006
    Beiträge:
    34
    Zustimmungen:
    0
    hmm, ja tut es leider nicht, denn der Proxy bekommt sonst die Anfrage vom 192.168.77.26 und kennt dieses Netz nicht. Mit NAT sieht es fürn Proxy dann so aus, dass das PAket vom 192.168.1.5er kommt und retourniert auch wieder dorthin.

    Etwas anderes wäre, wenn ich am Proxy eine Route zum 192.168.77.0er Netz setze.

    Du meinst, es würden die ersten beiden Regeln reichen?
     
  13. Anzeige

    Vielleicht findest du HIER Antworten.
    Registrieren bzw. einloggen, um diese und auch andere Anzeigen zu deaktivieren
  14. #12 saeckereier, 24.12.2009
    saeckereier

    saeckereier Graue Eminenz

    Dabei seit:
    08.05.2005
    Beiträge:
    1.920
    Zustimmungen:
    0
    Ort:
    Im schönen Norden
    Genau, der Proxy muss eben wissen, wie er seine Pakete wieder zu dem Host, der gefragt hat schicken kann. Wenn du auf allen Geräten Kontrolle über die Routing Tabellen hast, musst du einfach nur den Router (also den Server mit den zwei NICs) so konfigurieren, dass er genau diese Pakete durchlässt. NAT brauchst du nur, wenn du aus irgendeinem Grund Pakete so aussehen lassen willst, als ob sie von wo anders herkommen oder wenn du einem der Geräte nicht sagen kannst, dass es für 192.168.x.y ein anderes Gateway als für 192.168.a.b benutzen soll. Aber deine WLAN Geräte nutzen doch eh schon den PC mit den zwei NICs als Default Gateway und den Proxy kannst du doch konfigurieren, oder? Hat dann auch den Vorteil, dass deine ACLs im Proxy sich auf die echten Absende-Adressen beziehen.
     
  15. #13 onlineuser, 24.12.2009
    onlineuser

    onlineuser Mitglied

    Dabei seit:
    05.05.2006
    Beiträge:
    34
    Zustimmungen:
    0
    Ok, fürs Protokoll wäre es eventuell besser, dass die echten IPs auftauchen, jedoch ist da in meinem Fall nicht notwendig. Aber gut, ich werde es mal mit den Routen-Eintragen versuchen. :-)
     
Thema:

iptables - Problem

Die Seite wird geladen...

iptables - Problem - Ähnliche Themen

  1. Routingprobleme mit iptables

    Routingprobleme mit iptables: Hallo zusammen, ich sitze hier gerade an einem neuen Router und komme im letzten Schritt einfach nicht voran. Insgesamt sollen 3...
  2. iptables Problem auf Linux vServer

    iptables Problem auf Linux vServer: Hallo, mein iptables will irgendwie nicht loggen. Hier ist meine /etc/iptables.rules: # Generated by iptables-save v1.4.4 on Sat Aug 27...
  3. openvpn auf debian eingerichtet, probleme mit iptables und routing

    openvpn auf debian eingerichtet, probleme mit iptables und routing: hallo liebe unixboard.de gemeinde, lange profitiere ich schon von euch, da mich oftmals google-links zu euch fuehren, oder ihr eine meiner...
  4. Denkfehler, oder was? iptables Script-Problem

    Denkfehler, oder was? iptables Script-Problem: Hi Leute, Ich möchte gern einen Rechner mit ner Firewall schützen. Ich selbst möchte aber alle Port nach aussen offen haben. Führe ich das...
  5. syslog-ng und iptables Problem

    syslog-ng und iptables Problem: Hallo Leute, probier ich es mal hier. In anderen Foren hab ich keine Antwort bekommen. Das Thema war bestimmt schon oft hier, ich habe folgendes...