iptables von eth0 zur IP wechseln

Rund um die Sicherheit des Systems und die Applikationen
tomotom
Posts: 330
Joined: 2006-09-22 13:37

iptables von eth0 zur IP wechseln

Post by tomotom » 2007-08-01 22:37

Ich möchte zu einer zweiten IP per iptables routen. Bisher ist nur zu einer geroutet worden und zwar mit der Angabe des interfaces eth0. Das hat auch wunderbar gekappt. Jetzt habe ich eine 2. IP, eine virtuelle auf der selben Karte und möchte, das iptables die Pakete, die zur 2. IP gehen zu einem anderen Rechner routet. Ich dachte könnte einfach den Namen des neuen interfaces eth:1 angeben. Das scheint aber ein Syntaxproblem zu sein.

Code: Select all

iptables -t nat -A PREROUTING -i ethO  ... # geht
iptables -t nat -A PREROUTING -i ethO:1 - ... # geht nicht
iptables -t nat -A PREROUTING -d 192.198.1.1 ... # geht nicht
iptables -t nat -A PREROUTING -i 192.198.1.1 -... # geht nicht
Ich weiß nicht welche Schalter für die IP Adresse richtig sind. Mit den oben angegebenen scheint es nicht zu gehen.


So sollte es mal aussehen.

IP1=exter
LAN=intern

Code: Select all

  
    iptables -t nat -A PREROUTING -i $IP1 -p tcp --dport 80 -j DNAT --to-destination $LAN1
    iptables -A FORWARD -i $IP1 -m state --state NEW -p tcp -d $LAN1 --dport 80 -j ACCEPT
    iptables -t nat -A PREROUTING -i $IP2 -p tcp --dport 80 -j DNAT --to-destination $LAN2
    iptables -A FORWARD -i $IP2 -m state --state NEW -p tcp -d $LAN2 --dport 80 -j ACCEPT

Roger Wilco
Administrator
Administrator
Posts: 5924
Joined: 2004-05-23 12:53

Re: iptables von eth0 zur IP wechseln

Post by Roger Wilco » 2007-08-01 22:50


tomotom
Posts: 330
Joined: 2006-09-22 13:37

Re: iptables von eth0 zur IP wechseln

Post by tomotom » 2007-08-02 16:33

Ein Stück weiter bin ich gekommen. Anstatt -i eth0 kann doch -d $IP angegeben werden. Allerdings ist das forwarding so nicht mehr möglich.

Code: Select all

    iptables -t nat -A PREROUTING -d $IP1 -p tcp --dport 80 -j DNAT --to-destination $LAN1
    iptables -A FORWARD -d $IP1 -m state --state NEW -p tcp -d $LAN1 --dport 80 -j ACCEPT

Es gibt da immer diesen Feher, dass -d nur einmal verwendet werden dürfe. Wie mache ich denn in diesem Fall ein korrektes forwarding?

sledge0303
Posts: 695
Joined: 2005-09-16 00:06
Location: Berlin-Reinickendorf

Re: iptables von eth0 zur IP wechseln

Post by sledge0303 » 2007-08-02 18:22

Code: Select all

Es gibt da immer diesen Feher, dass -d nur einmal verwendet werden dürfe.


2x -d wäre auch ziemlich unlogisch...

Code: Select all

iptables -t nat -A PREROUTING -p tcp -d 123.123.123.123 --dport 80 -i eth0 -j DNAT --to-destination 10.0.0.1:80
;)

tomotom
Posts: 330
Joined: 2006-09-22 13:37

Re: iptables von eth0 zur IP wechseln

Post by tomotom » 2007-08-02 18:44

sledge0303 wrote:2x -d wäre auch ziemlich unlogisch...

Code: Select all

iptables -t nat -A PREROUTING -p tcp -d 123.123.123.123 --dport 80 -i eth0 -j DNAT --to-destination 10.0.0.1:80
;)

Das ist ja im Primzip das PREROUTING was ich nutze nur anstall -d $IP1 --> -i eth0

Das routen klappt auch zur 2. ip mit diesem PREOUTING. Aber das FORWARDING bringt die Fehlermedung.

[erledigt]
Irgendwie hat mir der andere Thread "Einbruchsversuche per ssh" geholfen mal über meine iptable Regeln im knockd nachzudenken. Und siehe da ich hatte ganz vergessen, dass es da schon PREROUTING gibt ...