Kaimane
07.11.08, 13:44
Hallo Community!
Sicherlich wurde das Thema FTP im Passive-Mode hinter'm Router schon desöfteren besprochen. Habe soweit die SuFu und Google befragt, aber zu meinem Problem keine wirkliche Antwort bekommen.
Mein Problem ist folgendes:
Habe einen FTP-Server hinter einem Router laufen. FTP läuft auf Port 21, Passive-Ports liegen auf 13680 - 13699; am Router Port 20 - 21 sowie 13680 - 13699 zum Server auf TCP durchgeschleift.
Nun versuche ich vom einem anderen Rechner (nicht im LAN, übers INet also) auf den FTP zuzugreifen, um Backups per ftplicity hochzuladen. ProFTPd springt an, zeigt im Log, dass eine Verbindung aufgebaut wurde und der Login erfolgreich war.
Nach fünf Versuchen scheitert es und ProFTPd gibt mir im Log die Fehlermeldung:
Nov 02 02:08:16 server proftpd[24880] server (xxx): Passive data transfer failed, possibly due to network issues
Nov 02 02:08:16 server proftpd[24880] server (xxx): Check your PassivePorts and MasqueradeAddress settings,
Nov 02 02:08:16 server proftpd[24880] server (xxx): and any router, NAT, and firewall rules in the network path.
Die proftpd.conf sieht folgendermaßen aus:
Include /etc/proftpd/modules.conf
UseIPv6 off
ServerName "Homeserver"
ServerType standalone
DeferWelcome off
MultilineRFC2228 on
DefaultServer on
ShowSymlinks on
TimeoutNoTransfer 300
TimeoutStalled 600
TimeoutIdle 600
DisplayLogin welcome.msg
DisplayFirstChdir .message
ListOptions "-l"
DenyFilter \*.*/
DefaultRoot ~
RequireValidShell off
UseReverseDNS off
IdentLookups off
Port 21
PassivePorts 13680 13699
MasqueradeAddress *meineDynDNS-Adresse*
MaxInstances 30
User proftpd
Group nogroup
Umask 022 022
AllowOverwrite on
TransferLog /var/log/proftpd/xferlog
SystemLog /var/log/proftpd/proftpd.log
<IfModule mod_tls.c>
TLSEngine off
</IfModule>
<IfModule mod_quota.c>
QuotaEngine on
</IfModule>
<IfModule mod_ratio.c>
Ratios on
</IfModule>
<IfModule mod_delay.c>
DelayEngine off
</IfModule>
<IfModule mod_ctrls.c>
ControlsEngine on
ControlsMaxClients 2
ControlsLog /var/log/proftpd/controls.log
ControlsInterval 5
ControlsSocket /var/run/proftpd/proftpd.sock
</IfModule>
<IfModule mod_ctrls_admin.c>
AdminControlsEngine on
</IfModule>
Soweit so gut. Habe die Conf mit den Docs von proftpd.org verglichen. Gehe davon aus, dass die Conf richtig gesetzt ist. Meine Vermutung geht nun dahin, dass iptables hier am Server nicht richtig gesetzt sind. Ein iptables -L ergibt:
Chain INPUT (policy ACCEPT)
target prot opt source destination
Chain FORWARD (policy ACCEPT)
target prot opt source destination
Chain OUTPUT (policy ACCEPT)
target prot opt source destination
Da ich mich mit iptables nicht auskenne, im INet auch nichts Hilfreiches dazu gefunden habe, weiß nicht nicht, ob ich iptables überhaupt anpassen muss. Läuft iptables die ganze Zeit im Hintergrund, oder müsste ich es (wenn ich es benötige) erst mal starten?
Falls es daran liegen sollte, wie müsste ich iptables einrichten, damit die Passive Verbindung zwischen Client und Server einwandfrei läuft?
Danke im Voraus!
Kaimane
Sicherlich wurde das Thema FTP im Passive-Mode hinter'm Router schon desöfteren besprochen. Habe soweit die SuFu und Google befragt, aber zu meinem Problem keine wirkliche Antwort bekommen.
Mein Problem ist folgendes:
Habe einen FTP-Server hinter einem Router laufen. FTP läuft auf Port 21, Passive-Ports liegen auf 13680 - 13699; am Router Port 20 - 21 sowie 13680 - 13699 zum Server auf TCP durchgeschleift.
Nun versuche ich vom einem anderen Rechner (nicht im LAN, übers INet also) auf den FTP zuzugreifen, um Backups per ftplicity hochzuladen. ProFTPd springt an, zeigt im Log, dass eine Verbindung aufgebaut wurde und der Login erfolgreich war.
Nach fünf Versuchen scheitert es und ProFTPd gibt mir im Log die Fehlermeldung:
Nov 02 02:08:16 server proftpd[24880] server (xxx): Passive data transfer failed, possibly due to network issues
Nov 02 02:08:16 server proftpd[24880] server (xxx): Check your PassivePorts and MasqueradeAddress settings,
Nov 02 02:08:16 server proftpd[24880] server (xxx): and any router, NAT, and firewall rules in the network path.
Die proftpd.conf sieht folgendermaßen aus:
Include /etc/proftpd/modules.conf
UseIPv6 off
ServerName "Homeserver"
ServerType standalone
DeferWelcome off
MultilineRFC2228 on
DefaultServer on
ShowSymlinks on
TimeoutNoTransfer 300
TimeoutStalled 600
TimeoutIdle 600
DisplayLogin welcome.msg
DisplayFirstChdir .message
ListOptions "-l"
DenyFilter \*.*/
DefaultRoot ~
RequireValidShell off
UseReverseDNS off
IdentLookups off
Port 21
PassivePorts 13680 13699
MasqueradeAddress *meineDynDNS-Adresse*
MaxInstances 30
User proftpd
Group nogroup
Umask 022 022
AllowOverwrite on
TransferLog /var/log/proftpd/xferlog
SystemLog /var/log/proftpd/proftpd.log
<IfModule mod_tls.c>
TLSEngine off
</IfModule>
<IfModule mod_quota.c>
QuotaEngine on
</IfModule>
<IfModule mod_ratio.c>
Ratios on
</IfModule>
<IfModule mod_delay.c>
DelayEngine off
</IfModule>
<IfModule mod_ctrls.c>
ControlsEngine on
ControlsMaxClients 2
ControlsLog /var/log/proftpd/controls.log
ControlsInterval 5
ControlsSocket /var/run/proftpd/proftpd.sock
</IfModule>
<IfModule mod_ctrls_admin.c>
AdminControlsEngine on
</IfModule>
Soweit so gut. Habe die Conf mit den Docs von proftpd.org verglichen. Gehe davon aus, dass die Conf richtig gesetzt ist. Meine Vermutung geht nun dahin, dass iptables hier am Server nicht richtig gesetzt sind. Ein iptables -L ergibt:
Chain INPUT (policy ACCEPT)
target prot opt source destination
Chain FORWARD (policy ACCEPT)
target prot opt source destination
Chain OUTPUT (policy ACCEPT)
target prot opt source destination
Da ich mich mit iptables nicht auskenne, im INet auch nichts Hilfreiches dazu gefunden habe, weiß nicht nicht, ob ich iptables überhaupt anpassen muss. Läuft iptables die ganze Zeit im Hintergrund, oder müsste ich es (wenn ich es benötige) erst mal starten?
Falls es daran liegen sollte, wie müsste ich iptables einrichten, damit die Passive Verbindung zwischen Client und Server einwandfrei läuft?
Danke im Voraus!
Kaimane