PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Proftpd und Iptables Firewall



jonlar
11.01.10, 16:44
Ich hab hier ein Problem mit Proftpd bei dem ich nicht weiterkommen.
Ich hab auf einem kleinen vserver Proftpd eingerichtet und dazu einige IPtables Regeln.
Sobald ich mich auf den FTP verbinden will bekomme ich das


[R] 227 Entering Passive Mode (84,200,208,86,150,33).
[R] Öffne Datenkanal-IP: 84.200.208.86 PORT: 38433
[R] Daten Socket Fehler: Verbindung abgewiesen
[R] Auflistungsfehler
[R] PASV
[R] 227 Entering Passive Mode (84,200,208,86,206,167).
[R] Öffne Datenkanal-IP: 84.200.208.86 PORT: 52903
[R] Daten Socket Fehler: Verbindung abgewiesen
[R] Auflistungsfehler
[R] PASV Modus fehlgeschlagen, versuche PORT Modus.
[R] Warte auf PORT: 62259, erwarte Verbindung.
[R] PORT 192,168,1,33,243,51
[R] 500 Illegal PORT command
[R] Auflistungsfehler

Ich habe nun gelesen das man in dem Fall die passiven Ports freigeben muss was ich auch getan habe, nur leider bringt das nicht das gwünschte Ergebnis.

Da ich nicht viel Erfahrung habe bräuchte ich bitte hilfe.
in den IPTables habe ich das hier eingetragen.


# FTP
iptables -A INPUT -i $device -m state --state NEW -p tcp --dport 42142 -j ACCEPT
iptables -A INPUT -i $device -m state --state NEW -p tcp --sport 49152:65534 --dport 49152:65534 -j ACCEPT

In der proftpd.conf steht folgendes

# Port 21 is the standard FTP port.
Port 42142

# In some cases you have to specify passive ports range to by-pass
# firewall limitations. Ephemeral ports can be used for that, but
# feel free to use a more narrow range.
PassivePorts 49152 65534

Wyatt
11.01.10, 21:35
Hallo,
evtl. kannst du es ja über das Modul ip_conntrack_ftp versuchen.

deine proftpd.conf

...
Port 42142
...

und eben das über ein FW_Script aufgerufene Modul...


#!/bin/bash
modprobe ip_conntrack_ftp
...
...
#FTP
iptables -A INPUT -p tcp --dport 42142 -j ACCEPT
iptables -A OUTPUT -p tcp --dport 42142 -j ACCEPT
...

Habe unter Debian meinen ProFTP samt Iptables_FW so eingerichtet und kann mir dadurch die Highportfreigaben schenken.

jonlar
12.01.10, 19:15
Vielen Dank habs hinbekommen ;) Jetzt hab ich allerdings noch ein weiteres Problem
Ich hab auf einem 2. Server einen Eggdrop (server2) laufen der den FTP (server1) nutzen muss um daten (server2) zu speichern.

Netstats gibt mir das aus

tcp 0 0 84.200.211.50:2222 0.0.0.0:* LISTEN 28369/eggdrop
udp 0 0 0.0.0.0:33745 0.0.0.0:* 28369/eggdrop
udp 0 0 0.0.0.0:53681 0.0.0.0:* 28369/eggdrop

Wäre euch dankbar wenn ihr mir bei der Erstellung der Regel helfen könnt.Danke

Dono
18.02.10, 12:34
Hallo!
Ich hoffe es passt hier zum Thema. (möglichts gute Firewall für einen FTP Server)
Zur Zeit habe ich folgendes:

modprobe ip_conntrack_ftp
iptables -A INPUT -m helper --helper ftp -j ACCEPT
iptables -A INPUT -p tcp --sport 1024:65535 --dport 21 -m state --state NEW,ESTABLISHED -j ACCEPT

passt das?

derRichard
18.02.10, 15:00
Hallo!
Ich hoffe es passt hier zum Thema. (möglichts gute Firewall für einen FTP Server)
Zur Zeit habe ich folgendes:

modprobe ip_conntrack_ftp
iptables -A INPUT -m helper --helper ftp -j ACCEPT
iptables -A INPUT -p tcp --sport 1024:65535 --dport 21 -m state --state NEW,ESTABLISHED -j ACCEPT

passt das?

nein, das macht keinen sinn. machs lieber so:


modprobe ip_conntrack_ftp
iptables -P INPUT DROP
iptables -A INPUT -m state --state ESTABLISHED, RELATED -j ACCEPT
iptables -A INPUT -p tcp --dport 21 -m state --state NEW -j ACCEPT
...


hth,
//richard

Dono
19.02.10, 09:52
Hi!

iptables -P INPUT DROP hab ich ganz oben schon stehen, fehlte in meinem Posting

iptables -A INPUT -m helper --helper ftp -j ACCEPT hab mal als Beispiel gefunden,
mit der Zeile gehts (Filetransfer), ohne nicht.

Aus der einen Zeile (mit NEW) etc. zwei zu machen, durchblicke ich zwar jetzt nicht auf Anhieb, aber dann kann ja noch kommen. Ich habe erstmal zwei daraus gemacht.

Mit der Zeile in der nur NEW stehe bekomme ich aber die Fehlermedlung:
iptables v1.4.2-rc1: Bad state `'

derRichard
19.02.10, 11:16
Hi!

iptables -P INPUT DROP hab ich ganz oben schon stehen, fehlte in meinem Posting

iptables -A INPUT -m helper --helper ftp -j ACCEPT hab mal als Beispiel gefunden,
mit der Zeile gehts (Filetransfer), ohne nicht.

Aus der einen Zeile (mit NEW) etc. zwei zu machen, durchblicke ich zwar jetzt nicht auf Anhieb, aber dann kann ja noch kommen. Ich habe erstmal zwei daraus gemacht.

Mit der Zeile in der nur NEW stehe bekomme ich aber die Fehlermedlung:
iptables v1.4.2-rc1: Bad state `'
der fehler schein ein copy&paste-fehler zu sein.

warum verwendest du eine rc-version von iptables?!

//richard

Dono
19.02.10, 12:32
rc, weil die bei opensuse 11.1 mir drauf ist (iptables-1.4.1.91-1.23)
bei 11.0 ist es: iptables-1.4.0-40.1

ich habe die Zeilen abgetippt und bekommen auf beiden Server die Fehlermeldung:
iptables v1.4.0: Bad state `'

Lösung: das Leerzeichen vor RELATED

:)

derRichard
19.02.10, 12:44
rc, weil die bei opensuse 11.1 mir drauf ist (iptables-1.4.1.91-1.23)
bei 11.0 ist es: iptables-1.4.0-40.1

ich habe die Zeilen abgetippt und bekommen auf beiden Server die Fehlermeldung:
iptables v1.4.0: Bad state `'

Lösung: das Leerzeichen vor ESTABLISHED

:)
ah ok :)

//richard

Dono
19.02.10, 12:56
Lösung: das Leerzeichen vor RELATED (sollte es heissen) :ugly: