FTP mit TLS funktioniert nicht, noch kann ich den Port in pure-ftpd ändern

FTP mit TLS funktioniert nicht, noch kann ich den Port in pure-ftpd ändern

Ich habe seit über einer Woche Probleme mit meinem FTP-Server, die ich zu beheben versuche.

Meine Konfiguration:

  • Ich verwende Raspbian auf einem Raspberry Pi.
  • Mein FTP-Server ist ein reiner FTPD-Server und ich betreibe ihn mit diesen Schaltern:

/usr/local/sbin/pure-ftpd -D -C 5 -E -A -H -x -p 35000:36000 -u 0 -y 5:3 -Y 1

  • Ich habe es mit der Option "--with-tls" kompiliert
  • ich benutzeexplizite TLS-Verschlüsselung, (ich habe es auch implizit versucht, gleiches Ergebnis)
  • Ich habe meinen passiven Portbereich weitergeleitet, wie durch den Schalter -p in pure-ftpd definiert
  • Ich habe auch Port 20 auf 21 weitergeleitet

Andere Server, die ich betreibe:

  • Ein Samba-Server
  • Ein Apache-Webserver
  • Benutzerdefinierter Python-Socket-Server
  • und der eingebaute shh/sftp-Server

Ich habe auch den No-IP-DUC-Client am Laufen

Kurz gesagt, hier sind die Probleme, die ich mit pure-ftpd habe:

  • FTP im LAN ohne TLS (Aktiv und Passiv): Funktioniert
  • FTP im LAN mit TLS (Aktiv und Passiv): Funktioniert
  • FTP im WAN ohne TLS (Passiv): Funktioniert
  • FTP im WAN mit TLS (Aktiv und Passiv): Funktioniert nicht
  • Port kann nicht geändert werden, da er im WAN nicht funktioniert

Hier sind die Fehlerprotokolle und die Dinge, die ich versucht habe:

ftptest.net Ergebnisse (für FTP mit TLS):

........

Befehl: PASV

Antwort: 227 Wechsel in den Passivmodus (192,168,0,4,138,78)

Fehler: Der Server hat in der PASV-Antwort eine nicht weiterleitbare private IP-Adresse zurückgegeben

Ich habe in Foren gelesen, dass man die PASV-IP-Adresse mit dem Schalter -P angeben muss, also habe ich das getan und das ist das Ergebnis:

Antwort: 211-Unterstützte Erweiterungen:

....................

Fehler: Wagenrücklauf ohne Zeilenvorschub empfangen

Und das ist fürsowohl ohne als auch mit TLS!Also, der Schalter -P funktioniert überhaupt nicht!

Ich möchte auch darauf hinweisen, dass die Ports im passiven Modus korrekt sind (aus dem PASV-Befehl übernommen).

Filezilla-Protokoll (mit explizitem TLS):

Befehl: PASV

Antwort: 227 Wechsel in den passiven Modus (192,168,0,4,138,251)

Status: Der Server hat eine passive Antwort mit einer nicht weiterleitbaren Adresse gesendet. Stattdessen wird die Serveradresse verwendet.

Befehl: MLSD

Fehler: Die Datenverbindung konnte nicht hergestellt werden: ECONNREFUSED - Verbindung vom Server abgelehnt

Fehler: Verbindung vom Server geschlossen

Fehler: Verzeichnisliste konnte nicht abgerufen werden.

Mit Schalter -P:

Dasselbe, nur dass es kein „Server hat nicht weiterleitbare Adresse gesendet*“ gibt.

Ich habe auch versucht, die Firewall (iptables) zu manipulieren, indem ich mit diesen Befehlen alles zugelassen (und so die Firewall deaktiviert) habe:

iptables -X
iptables -t nat -F
iptables -t nat -X
iptables -t mangle -F
iptables -t mangle -X
iptables -P INPUT ACCEPT
iptables -P FORWARD ACCEPT
iptables -P OUTPUT ACCEPT

Ich kann den Standardport auch nicht ändern, da ich sonst die Fehlermeldung „Verbindung abgelehnt“ erhalte.

Und ich habe noch ein weiteres seltsames Symptom, das heute aufgetreten ist:

Ich kann nur Port 21 bis 21 öffnen (es funktioniert), denn wenn ich 20 öffne, gelange ich zum SSH-Server.

Loggen Sie sich dazu ein:

Status: Verbunden, warte auf Willkommensnachricht ... Antwort:

SSH-2.0-OpenSSH_6.0p1 Debian-4+deb7u2

Fehler: Die Antwort enthält keinen gültigen Antwortcode.

Ich habe auch versucht, die Ports 443, 989 bis 990 weiterzuleiten (das war für implizites TLS) und ich habe versucht, den Raspberry Pi als DMZ-Host einzurichten.

Hinweis: Ich bin von vsftpd gewechselt, da es langsam war und kein sicheres FTP unterstützte (die Version 3.x für Raspberry Pi muss mit Unterstützung für sicheres FTP kompiliert werden, aber beim Kompilieren ist ein Fehler aufgetreten) und ich verwende proftpd nicht, da es nicht mit TLS-Unterstützung kompiliert werden konnte.

/var/log/messages bietet keine hilfreichen Informationen (sagt nur, dass der Benutzer jedes Mal mit oder ohne TLS angemeldet ist)

Hoffentlich könnt ihr mir hier weiterhelfen, denn ich bin wirklich ratlos!

Antwort1

ES IST ENDLICH GELÖST!Ich musste lediglich meinen passiven Portbereich von 50000-51000 auf 12000-13000 ändern! Jetzt funktioniert alles super!!! Ich verwende Pure-Ftpd jetzt folgendermaßen:

/usr/local/sbin/pure-ftpd -D -C 5 -E -A -H -x -S 192.168.0.4,60 -p 12000:13000 -u 0 -y 5:3 -Y 1 -P &

verwandte Informationen