Zum Inhalt springen

IpTables + Interbase, keine lokale verbindung ?


Empfohlene Beiträge

Geschrieben

Moin,

ich steh gerade vor einem Problem, drum hier erstmal das System:

SuSe Linux

IpTables

Interbase Server

2 Netze xxx.xxx.6.xxx und xxx.xxx.9.xxx

Die Interbase Datenbank soll per PHP in einem CMS angesprochen werden, so lang die IPTables aus sind, geht das auch ohne Probleme.

Sobald ich jedoch die Regeln einschalte bekomme ich über das CMS nurnoch einen Timeout, jedoch komme ich mit IBExpert weiterhin auf die Datenbank.


iptables -A INPUT  -p tcp -m tcp  -i ! eth1 --dport gds_db --sport 1024:65535 -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT


iptables -A INPUT  -p udp -m udp  -i ! eth1 --dport gds_db -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT


iptables -A OUTPUT  -p tcp -m tcp  -o ! eth1 --dport gds_db -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT


iptables -A OUTPUT  -p udp -m udp  -o ! eth1 --dport gds_db  -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT

Bin für jeden Tipp offen :)

Ach ja, fals ich im falschem Forum sein sollte verschiebt mich :marine

Geschrieben

Also um das vollständig bewerten zu können, fehlen folgende informationen:

Webserver, auf dem das CMS läuft hat welche IP bzw. befindet sich in welchem Netzsegment.

Interbase-Server ist in welchem Netzsegment / bzw. hat welche IP?

Die iptablesregeln sind wahrscheinlich auf dem Interbaseserver selber. Also was hängt an eth1?

Spontan fällt mir aber folgendes auf:


iptables -A OUTPUT  -p tcp -m tcp  -o ! eth1 --dport gds_db -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT


iptables -A OUTPUT  -p udp -m udp  -o ! eth1 --dport gds_db  -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT

Muss es hier nicht "--sport gds_db" heißen?

Geschrieben

warum dann überhaupt dieses komplexe konstrukt?

was an:

iptables -A INPUT -i lo -j ACCEPT

iptables -A OUTPUT -o lo -j ACCEPT

wäre denn sicherheitskritisch?

Die Verbindungseinstellungen beim CMs laufen ja dann wahrscheinlich auch auf localhost.

Geschrieben

ansonsten muss es natürlich ganz komplex lauten:


#Eingehenden Verbindungsaufbau zum DB_Server erlauben 

iptables -A INPUT  -p tcp -m tcp  -i ! eth1 --dport gds_db --sport 1024:65535 -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT

iptables -A INPUT  -p udp -m udp  -i ! eth1 --dport gds_db -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT


#Eingehenden Antworten des Datenbankservers erlauben

iptables -A INPUT  -p tcp -m udp  -i ! eth1 --sport gds_db --dport 1024:65535 -m state --state ESTABLISHED,RELATED -j ACCEPT

iptables -A INPUT  -p udp -m udp  -i ! eth1 --sport gds_db -m state --state ESTABLISHED,RELATED -j ACCEPT


#Ausgehenden Verbindungsaufbau vom CMS zur DB erlauben 

iptables -A OUTPUT  -p tcp -m tcp  -o ! eth1 --dport gds_db -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT

iptables -A OUTPUT  -p udp -m udp  -o ! eth1 --dport gds_db  -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT


# Antworten der Datenbank erlauben  

iptables -A OUTPUT  -p tcp -m tcp  -o ! eth1 --sport gds_db -m state --state ESTABLISHED,RELATED -j ACCEPT

iptables -A OUTPUT  -p udp -m udp  -o ! eth1 --sport gds_db  -m state --state ESTABLISHED,RELATED -j ACCEPT

Geschrieben
ansonsten muss es natürlich ganz komplex lauten:


#Eingehenden Verbindungsaufbau zum DB_Server erlauben 

iptables -A INPUT  -p tcp -m tcp  -i ! eth1 --dport gds_db --sport 1024:65535 -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT

iptables -A INPUT  -p udp -m udp  -i ! eth1 --dport gds_db -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT


#Eingehenden Antworten des Datenbankservers erlauben

iptables -A INPUT  -p tcp -m udp  -i ! eth1 --sport gds_db --dport 1024:65535 -m state --state ESTABLISHED,RELATED -j ACCEPT

iptables -A INPUT  -p udp -m udp  -i ! eth1 --sport gds_db -m state --state ESTABLISHED,RELATED -j ACCEPT


#Ausgehenden Verbindungsaufbau vom CMS zur DB erlauben 

iptables -A OUTPUT  -p tcp -m tcp  -o ! eth1 --dport gds_db -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT

iptables -A OUTPUT  -p udp -m udp  -o ! eth1 --dport gds_db  -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT


# Antworten der Datenbank erlauben  

iptables -A OUTPUT  -p tcp -m tcp  -o ! eth1 --sport gds_db -m state --state ESTABLISHED,RELATED -j ACCEPT

iptables -A OUTPUT  -p udp -m udp  -o ! eth1 --sport gds_db  -m state --state ESTABLISHED,RELATED -j ACCEPT

Der Form halber, so würde es jetzt ganz aussehen :)

#---------------------------------------------------------------------------

# Pakete, die geroutet werden

#---------------------------------------------------------------------------

iptables -A FORWARD  -m state --state ESTABLISHED,RELATED -j ACCEPT


# TCP - RDP 

iptables -A FORWARD  -s xxx.xxx.0.xxx/16 -d xxx.xxx.0.xxx/16 -p tcp -m tcp --dport 3389 -m state --state NEW -j ACCEPT


# TCP www,https

iptables -A FORWARD  -p tcp -m tcp  -s xxx.xxx.9.xxx/24 --dport ssh    -m state --state NEW -j ACCEPT

iptables -A FORWARD  -p tcp -m tcp  -s xxx.xxx.9.xxx/24 --dport www    -m state --state NEW -j ACCEPT

iptables -A FORWARD  -p tcp -m tcp  -s xxx.xxx.9.xxx/24 --dport https  -m state --state NEW -j ACCEPT

iptables -A FORWARD  -p tcp -m tcp  -s xxx.xxx.9.xxx/24 --dport ftp  -m state --state NEW,ESTABLISHED -j ACCEPT

iptables -A FORWARD  -p tcp -m tcp  -s xxx.xxx.0.xxx/16 --dport ftp  -m state --state NEW,ESTABLISHED -j ACCEPT

iptables -A FORWARD  -p tcp -m tcp  -s xxx.xxx.9.xxx/24 --dport 3000 -m state --state NEW,ESTABLISHED -j ACCEPT

iptables -A FORWARD  -p tcp -m tcp  -s xxx.xxx.0.xxx/16 -d xxx.xxx.9.xxx/24 --dport ftp  -m state --state NEW,ESTABLISHED -j ACCEPT


# TCP - pcAnywhere

iptables -A FORWARD  -s xxx.xxx.0.xxx/16 -d xxx.xxx.0.xxx/16 -p tcp -m tcp --dport 5631:5632 -m state --state NEW -j ACCEPT

iptables -A FORWARD  -s xxx.xxx.0.xxx/16 -d xxx.xxx.0.xxx/16 -p tcp -m tcp --dport 3128 -m state --state NEW,ESTABLISHED -j ACCEPT


# UDP www,https

iptables -A FORWARD  -p udp -m udp    -s xxx.xxx.9.xxx/24 --dport www    -m state --state NEW -j ACCEPT

iptables -A FORWARD  -p udp -m udp    -s xxx.xxx.9.xxx/24 --dport https  -m state --state NEW -j ACCEPT


# ICMP

iptables -A FORWARD -s xxx.xxx.0.0/16 -d xxx.xxx.0.0/16 -p icmp -j ACCEPT


#---------------------------------------------------------------------------

# Pakete, die hereinkommen

#---------------------------------------------------------------------------

iptables -A INPUT  -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT


# TCP


iptables -A INPUT  -p tcp -m tcp  -s xxx.xxx.9.xxx/24 --dport 137:139 -m state --state NEW,ESTABLISHED -j ACCEPT

iptables -A INPUT  -p tcp -m tcp  -i ! eth1	    --dport 9011   -m state --state NEW -j ACCEPT

iptables -A INPUT  -p tcp -m tcp  -s xxx.xxx.9.xxx/24 --dport ssh    -m state --state NEW -j ACCEPT

iptables -A INPUT  -p tcp -m tcp  -s xxx.xxx.9.xxx/24 --dport ftp    -m state --state NEW,ESTABLISHED -j ACCEPT

iptables -A INPUT  -p tcp -m tcp  -s xxx.xxx.0.0/16 --dport ftp    -m state --state NEW,ESTABLISHED -j ACCEPT

iptables -A INPUT  -p tcp -m tcp  -s xxx.xxx.9.xxx/24 --dport www    -m state --state NEW -j ACCEPT

iptables -A INPUT  -p tcp -m tcp  -s xxx.xxx.9.xxx/24 --dport https  -m state --state NEW -j ACCEPT

iptables -A INPUT  -p tcp -m tcp  -i ! eth1         --dport gds_db --sport 1024:65535 -m state --state NEW,ESTABLISHED -j ACCEPT

iptables -A INPUT  -p tcp -m tcp  -s 0.0.0.0        --dport 3060   --sport 1024:65535 -m state --state NEW,ESTABLISHED -j ACCEPT


iptables -A INPUT  -p tcp -m tcp  -i ! eth1         --dport smtp   -m state --state NEW,ESTABLISHED -j ACCEPT

iptables -A INPUT  -p tcp -m tcp  -s xxx.xxx.9.xxx/24 --dport swat   -m state --state NEW -j ACCEPT

iptables -A INPUT  -p tcp -m tcp  -s xxx.xxx.9.xxx/24 --dport mysql  -m state --state NEW -j ACCEPT

iptables -A INPUT  -p tcp -m tcp  -s xxx.xxx.9.xxx/24 --dport 10000  -m state --state NEW -j ACCEPT


# UDP

iptables -A INPUT  -p udp -m udp  -s xxx.xxx.9.xxx/24 --dport 137:139 -m state --state NEW,ESTABLISHED -j ACCEPT

iptables -A INPUT  -p udp -m udp  -s xxx.xxx.9.xxx/24 --dport www    -m state --state NEW -j ACCEPT

iptables -A INPUT  -p udp -m udp  -s xxx.xxx.9.xxx/24 --dport https  -m state --state NEW -j ACCEPT

iptables -A INPUT  -p udp -m udp  -s xxx.xxx.9.xxx/24 --dport mysql  -m state --state NEW -j ACCEPT


# ICMP

iptables -A INPUT  -p icmp -j ACCEPT


#---------------------------------------------------------------------------

# Pakete, die herausgehen

#---------------------------------------------------------------------------

iptables -A OUTPUT  -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT


# TCP



iptables -A OUTPUT  -p tcp -m tcp  -d xxx.xxx.9.xxx/24 --dport 137:139 -m state --state NEW,ESTABLISHED -j ACCEPT

iptables -A OUTPUT  -p tcp -m tcp  --dport 9011 	  -m state --state NEW -j ACCEPT

iptables -A OUTPUT  -p tcp -m tcp  --dport ssh            -m state --state NEW -j ACCEPT

iptables -A OUTPUT  -p tcp -m tcp  --dport ftp            -m state --state NEW,ESTABLISHED -j ACCEPT

iptables -A OUTPUT  -p tcp -m tcp  --dport ftp-data       -m state --state NEW,ESTABLISHED -j ACCEPT

iptables -A OUTPUT  -p tcp -m tcp  --dport pop3           -m state --state NEW,ESTABLISHED -j ACCEPT

iptables -A OUTPUT  -p tcp -m tcp  -o ! eth1 --dport smtp -m state --state NEW,ESTABLISHED -j ACCEPT

iptables -A OUTPUT  -p tcp -m tcp  --dport www            -m state --state NEW -j ACCEPT

iptables -A OUTPUT  -p tcp -m tcp  --dport https          -m state --state NEW -j ACCEPT

iptables -A OUTPUT  -p tcp -m tcp  --dport domain         -m state --state NEW -j ACCEPT

iptables -A OUTPUT  -p tcp -m tcp --sport gds_db --dport 1024:65535         -m state --state NEW,ESTABLISHED -j ACCEPT

iptables -A OUTPUT  -p tcp -m tcp --sport 3060 --dport 1024:65535         -m state --state NEW,ESTABLISHED -j ACCEPT


# UDP


iptables -A OUTPUT  -p udp -m udp  -d xxx.xxx.9.x/24 --dport 137:139 -m state --state NEW,ESTABLISHED -j ACCEPT

iptables -A OUTPUT  -p udp -m udp  --dport www     -m state --state NEW -j ACCEPT

iptables -A OUTPUT  -p udp -m udp  --dport https   -m state --state NEW -j ACCEPT

iptables -A OUTPUT  -p udp -m udp  --dport domain  -m state --state NEW -j ACCEPT

iptables -A OUTPUT  -p udp -m udp  --dport mysql   -m state --state NEW -j ACCEPT

iptables -A OUTPUT  -p udp -m udp  --dport pop3    -m state --state NEW -j ACCEPT



# ICMP

iptables -A OUTPUT  -p icmp -j ACCEPT

Geschrieben


....

#---------------------------------------------------------------------------

# Pakete, die hereinkommen

#---------------------------------------------------------------------------

iptables -A INPUT  -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT

...

#---------------------------------------------------------------------------

# Pakete, die herausgehen

#---------------------------------------------------------------------------

iptables -A OUTPUT  -m state --state NEW,ESTABLISHED,RELATED -j ACCEPT

...

Tu dir einen gefallen und nimm bei den beiden statements das NEW raus. Ansonsten ist das sicherheitstechnisch sehr bedenklich ;)

Dein Kommentar

Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung wiederherstellen

  Nur 75 Emojis sind erlaubt.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...