PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : SLES 9 - massive iptables Probleme



Jaydee
28.04.06, 20:03
Hallo,

habe einen SLES 9 mit der SuSEFirewall2 installiert.

ETH1 hat eine öffentliche, feste IP
ETH0 ist 192.168.1.1

Die gesetzten Einstellungen in /etc/sysconfig/SuSEFirewall2 sind:



FW_DEV_EXT="eth1"
FW_DEV_INT="eth0"
FW_ROUTE="yes"
FW_MASQUERADE="yes"
FW_MASQ_DEV="$FW_DEV_EXT"
FW_MASQ_NETS="0/0"
FW_PROTECT_FROM_INTERNAL="yes"
FW_AUTOPROTECT_SERVICES="no"
FW_SERVICES_EXT_TCP="smtp domain 60606 60608"
FW_SERVICES_INT_TCP="ssh smtp domain"
FW_ALLOW_INCOMING_HIGHPORTS_TCP="60606 60608"


Auf den Ports 60606 und 60608 läuft kein Dienst.
Diese Ports werden mit extra Scripten nach intern weitergeleitet.

Mache ich nun von extern ein nmap auf Port 60606 bzw 60608 werden diese als "filtered" angezeigt.

Schalte ich nun folgende Iptables Regel für die Weiterleitung ein, bekomme ich immer noch keinen Zugriff auf den Rechner im LAN.

Der Aufruf lautet:

iptables -t nat -A PREROUTING -i eth1 -p tcp --dport 60606 -j DNAT --to-destination 192.168.1.1:5900
iptables -A FORWARD -i eth1 -m state --state NEW -p tcp -d 192.168.1.1 --dport 60606 -j ACCEPT

Auch hier zeigt ein NMAP den Port 60606 als filtered an.
Ein Versuch per VNC über den Port 60606 zuzugreifen scheitert.

Wer von den IPTABLES Cracks kann hier helfen?
Bin momentan ratlos und hoffe auf schnelle Hilfe.

Vielen Dank

derRichard
29.04.06, 18:22
hallo!

mach die portweiterleitung mit der susefirewall.
mit deinen eigenen iptables kommst da nur ins schleudern.

//richard

Jaydee
29.04.06, 19:19
Hallo,

ja ins Schleudern bin ich allerdings geraten :(

Wäre das dann diese Einstellung???
FW_FORWARD_MASQ="0/0,192.168.2.250,tcp,60606,5900

Würde dann nach meinem Verständniss bedeuten:
Pakete aus dem Internet(0/0) die über Port 60606 kommen werden an interne Adresse 192.168.2.250 an Port 5900 weitergegeben.

Muss ich dann zusätzlich Ports in FW_SERVICES_EXT_TCP eintragen?

Vielen Dank,
Alex

derRichard
29.04.06, 19:24
hallo!

uiui. ;)
du hast jetzt 2 möglichkeiten.
1. susefirewall2 lernen
oder
2. iptables lernen und die ganze filterung mit einem eigenem skritp lösen.

eine portweiterleitung macht man mit snat und dnat, aber nicht einfach per forward.
http://linux-ip.net/html/nat-dnat.html

hth,
//richard

Jaydee
29.04.06, 19:29
Hallo,

wie das ganze von statten geht ist mir theoretisch klar.

Ich beziehe mich hierauf - Auszug aus /etc/sysconfig/SuSEFirewall2



# 14.)
# Which services accessed from the internet should be allowed to masqueraded
# servers (on the internal network or dmz)?
# Requires: FW_ROUTE
#
# With this option you may allow access to e.g. your mailserver. The
# machines must be in a masqueraded segment and may not have public
# IP addesses! Hint: if FW_DEV_MASQ is set to the external interface
# you have to set FW_FORWARD from internal to DMZ for the service as
# well to allow access from internal!
#
# Please note that this should *not* be used for security reasons!
# You are opening a hole to your precious internal network. If e.g.
# the webserver there is compromised - your full internal network is
# compromised!
#
# Format: space separated list of
# <source network>,<ip to forward to>,<protocol>,<port>[,redirect port,[destination ip]]
#
# Protocol must be either tcp or udp
#
# Examples: - "4.0.0.0/8,10.0.0.10,tcp,80" forward all tcp request on
# port 80 coming from the 4.0.0.0/8 network to the
# internal server 10.10.0.10
# - "4.0.0.0/8,10.0.0.10,tcp,80,81" forward all tcp request on
# port 80 coming from the 4.0.0.0/8 network to the
# internal server 10.10.0.10 on port 81
# - "200.200.200.0/24,10.0.0.10,tcp,80,81,202.202.202.202"
# the network 200.200.200.0/24 trying to access the
# address 202.202.202.202 on port 80 will be forwarded
# to the internal server 10.0.0.10 on port 81
#
# Note: du to inconsitent iptables behaviour only port numbers are possible but
# no service names (https://bugzilla.netfilter.org/bugzilla/show_bug.cgi?id=273)
#
FW_FORWARD_MASQ="0/0,192.168.2.250,tcp,60606,5900"



Das sollte doch genau das machen was ich möchte, oder?

Gruß & Danke

derRichard
29.04.06, 19:34
hallo!

es macht was du willst, aber eben nicht genau. ;)
es leitet die pakete zwar weiter, aber baut sie nicht entsprechend um.
ich kann dir nur sagen, wie man sowas direkt mit iptables macht, aber nicht mit der susefirewall2. leider.

//richard

Jaydee
29.04.06, 19:41
Oh weh ....

Schade dass die SuSEFirewall2 das nicht "genau" macht.

Welche iptables Befehle brauche ich denn wenn ich das "Grundgerüst" die SuSEFirewall2 nehme ohne dass ich ins Schleudern gerate?

Vielen Dank,

Alex

derRichard
29.04.06, 19:43
Oh weh ....

Schade dass die SuSEFirewall2 das nicht "genau" macht.

Welche iptables Befehle brauche ich denn wenn ich das "Grundgerüst" die SuSEFirewall2 nehme ohne dass ich ins Schleudern gerate?

Vielen Dank,

Alex
hallo!

die susefirewall kann das sicher, jedoch nicht mit der methode forward...
bau einfach selber ein filterskript und die sache ist gegessen.

//richard

Jaydee
29.04.06, 19:48
Hallo,

ich möchte das aber gerne mit der SuSEFirewall2 machen, nachdem die ja Bestandteil des SLES9 ist.

"Eigenkonstrukte" möchte ich eigentlich vermeiden.
Wie die SuSEFirewall2 das dann macht ist mir egal, es muss nur funktionieren.

Was meinst Du mit



es macht was du willst, aber eben nicht genau.



Danke,
Alex