PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : proftp->andere port



C_h_r_i_s
22.08.02, 18:13
hiho all.

wenn ich den proftp auf dem normalen prt also 21 laufen lasse muss in der fire noch den port 20 mit freigeben. wenn ich jetzt aber den port z.B. auf 7777 stelle. welcher is dann der dem 20 port entspricht? also 20 is es net, weil ich mich dann nicht mehr einloggen konnte und der port eins drunter also 7776 auch net.

weis einer rat?

mfg
Chris

Harry
22.08.02, 20:35
Hallo Chris,

der Connect vom Port 20 des FTP-Servers hört sich zunächst mal nach aktivem FTP an (muss aber nicht so sein). Ob aktiv oder passives FTP benutzt wird, hängt jedoch meist vom Client an und ob er vor einem Datentransfer den Server in den passive-Mode schaltet oder nicht.

Möglicherweise hast Du bei dem 2. Versuch (Kommandokanal auf Port 7777) mit einer anderen Einstellung Deines FTP-Clients (passive) gearbeitet; in diesem Fall sind die Ports für den Datenkanal (auf Client- und Serverseite) von vorneherein nicht bekannt sondern werden für jede Datenverbindung neu definiert.

Wenn Du einen 2.4-Kernel mit iptables verwendest, dann kannst Du dieses Problem aber ruhig dem Connection-Tracking Code überlassen.

#!/bin/bash
# Connection-Tracking Module laden
modprobe ip_conntrack
modprobe ip_conntrack_ftp

# Chains flushen und Default-Policy auf DROP
iptables -F INPUT
iptables -F OUTPUT
iptables -P INPUT DROP
iptables -P OUTPUT DROP

# Filterregeln für das Connection-Tracking auf FTP und sonstige
# notwendige Regeln für Loopback-Network und Logging
iptables -A INPUT -m state --state INVALID -j LOG --log-prefix "INVALID "
iptables -A INPUT -m state --state INVALID -j REJECT
iptables -A INPUT -i lo -j ACCEPT
iptables -A INPUT -p tcp --dport 21 -m state --state NEW -j ACCEPT
iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -A INPUT -j LOG
iptables -A INPUT -j REJECT

iptables -A OUTPUT -m state --state INVALID -j LOG --log-prefix "INVALID "
iptables -A OUTPUT -m state --state INVALID -j REJECT
iptables -A OUTPUT -o lo -j ACCEPT
iptables -A OUTPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -A OUTPUT -j LOG
iptables -A OUTPUT -j REJECT

Diese Zeilen sollten das Problem auf dem FTP-Server eigentlich lösen (hoff' ich zumindestens, da ich das gerade so aus dem Stand runtergetippt habe und sowas auch mal schiefgeht ;)) soweit dort direkt auch der Paketfilter installiert ist.

Harry