Re: Fw: iptables MASQUERADE funktioniert nicht. Eingehende Pakete landen statt in FORWARD in INPUT.

2005-12-14 Diskussionsfäden editor_and_the_bandits
Am Mittwoch, 14. Dezember 2005 10:55 schrieben Sie:
> Ich bräuchte also eine Regel, die dafür sorgt, das die Pakete eben nicht
> lokal auf dem Server ausgeliefert werden, sondern an den Arbeitsplatz PC
> weitergesandt werden. Leider handelt es sich nicht nur um einen ArbeitsPC
> sondern das wechselt häufiger. Deshalb kann ich keine festen Routen
> einstellen.
>
> Wenn die PC's alle im gleichen Netz sind ist es egal.
>
> Hier noch mal meine Konfig:
> UNI --- Internet --- my Router ---Server (eth0). --- PC
>
> Zum Verständnis:
> Die Pakete kommen vom Internet und landen im ext. Router. Dieser schleift
> sie durch
> zum Server. Der Server verteilt die Pakete mittels iptables. Server und PC
> sind im
> selben lokalen Netz, das maskiert ist.
> Wenn dem so ist, musst du die Regeln entsprechend deinem Router anpassen.
> Nach meiner Kenntnis musst du nur die $EXT_IP durch die IP des Router
> ändern.
> Bei meinen Regeln ist der Router = Server.
> Wenn du ssh tunneln willst, kann ich dir leider nicht weiterhelfen.
ich schicke die daten in einem vpntunnel von der uni über den router zu 
server, erst da verlassen sie den tunnel, deshalb ist das so, als wäre die 
uni auf einem eigenen netzwerkdevice. 

Gruß



Re: Fw: iptables MASQUERADE funktioniert nicht. Eingehende Pakete landen statt in FORWARD in INPUT.

2005-12-13 Diskussionsfäden editor_and_the_bandits

Am Mittwoch, 14. Dezember 2005 00:28 schrieb Michael Hiller:
> Hai,
>
> > - Arbeitsplatz PC kann sich mit ssh zur Uni verbinden. (Fehler)
>
>  Wenn du von einem PC mit einem ssh-client eine Verbindung zum anderen
> Rechner aufbauen willst, musst du deinem Server sagen, wohin er die Daten
> beim Rückruf senden soll, sprich zu deinem PC
>
>  Bei mir funktionieren folgende Regeln:
>
>  IPTABLES -A INPUT -p tcp -m state --state NEW -d $EXT_IP --dport $SSH -j
> ACCEPT
> IPTABLES -A OUTPUT -p tcp -m state --state NEW --dport $SSH -j ACCEPT
>
>  damit landet der Rückruf auf dem Server
>
> IPTABLES -A INPUT -p tcp -m state --state NEW -s $LOC_NET --dport $SSH -d \
> $LOC_IP -j ACCEPT
>
Das funktioniert leider nicht, weil mein Server die Verbindungen herstellt und der Arbeitsplatz PC die ssh Verbindung aufbaut.

Ich bräuchte also eine Regel, die dafür sorgt, das die Pakete eben nicht lokal auf dem Server ausgeliefert werden, sondern an den Arbeitsplatz PC weitergesandt werden. Leider handelt es sich nicht nur um einen ArbeitsPC sondern das wechselt häufiger. Deshalb kann ich keine festen Routen einstellen.

iptabeles -A POSTROUTING -d [UNI.UNI.0.0]/255.255.0.0 -o vpnlink -j MASQUERADE

Diese Regel sollte ja eigentlich in einer Liste mitführen, wohin sie Pakete umleitet, damit sie die Antwortpakete an den richtigen PC und Port weiterleitet. Das tut sie ja auch auf anderen Netzwerkdevices, aber anscheinend nicht bei meiner Konfiguration. Und ich weiß nicht warum.

=
Hier noch mal meine Konfig:

UNI --- Internet --- my Router ---Server (eth0). --- PC
Cisco VPN  vpnc (vpnlink)


iptables -A PREROUTING -t mangle -p tcp -d [UNI.UNI.0.0]/16 --dport 22 -j MARK 
--set-mark 3

iptabeles -A POSTROUTING -t nat -d [UNI.UNI.0.0]/255.255.0.0 -o vpnlink -j MASQUERADE

iptables -A FORWARD -i vpnlink -s !  [UNI.UNI.0.0]/16 -j DROP

/sbin/ip rule add from  [UNI.UNI.0.0]/16 to [UNI.UNI.0.0] /16 table 103 pref 
32762
/sbin/ip rule add fwmark 3 table 103 pref 32753
/sbin/ip route add default dev vpnlink table 103

Ich will halt nicht allen Traffic über den vpnlink leiten, sondern nur bestimmte Protokolle (rdp, smb .). SSH ist auch nur zum testen, ob es klappt.

Gruß


Fw: iptables MASQUERADE funktioniert nicht. Eingehende Pakete landen statt in FORWARD in INPUT.

2005-12-13 Diskussionsfäden Michael Hiller

Hai,


- Arbeitsplatz PC kann sich mit ssh zur Uni verbinden. (Fehler)


Wenn du von einem PC mit einem ssh-client eine Verbindung zum anderen
Rechner aufbauen willst, musst du deinem Server sagen, wohin er die Daten
beim Rückruf senden soll, sprich zu deinem PC

Bei mir funktionieren folgende Regeln:

IPTABLES -A INPUT -p tcp -m state --state NEW -d $EXT_IP --dport $SSH -j 
ACCEPT

IPTABLES -A OUTPUT -p tcp -m state --state NEW --dport $SSH -j ACCEPT

damit landet der Rückruf auf dem Server

IPTABLES -A INPUT -p tcp -m state --state NEW -s $LOC_NET --dport $SSH -d \
$LOC_IP -j ACCEPT

damit landen die Daten wieder auf deinem PC.

Ich hoffe, ich habe es richtig erklärt.

Gruß
Michael


--
Haeufig gestellte Fragen und Antworten (FAQ): 
http://www.de.debian.org/debian-user-german-FAQ/


Zum AUSTRAGEN schicken Sie eine Mail an [EMAIL PROTECTED]
mit dem Subject "unsubscribe". Probleme? Mail an [EMAIL PROTECTED] (engl)