vsftpd nicht von außen erreichbar - Portfreigabe?

Wenn man iptables nutzt erledigt das Modul ftp_conntrack die Übersetzung der nat-ip auf die öffentliche. Deshalb wie geschrieben die avm-Freigabe ausprobieren
 
Bei mir wird die Option "aktuelle öffentliche IP als pasv_address eintragen" nicht benötigt. Die Verbindung kommt so oder so zustande. Aber die FTP-Client (Filezilla) hat ein Problem mit der vom vsftpd-Server gesendeten IP-Adresse:
Status: Verbunden
Status: Empfange Verzeichnisinhalt...
Befehl: PWD
Antwort: 257 "/"
Befehl: TYPE I
Antwort: 200 Switching to Binary mode.
Befehl: PASV
Antwort: 227 Entering Passive Mode (169,254,2,1,95,180).
Status: Vom Server gesendete Adresse für den Passiv-Modus ist nicht routingfähig. Benutze stattdessen die Serveradresse.
Befehl: LIST
Der Inhalt wird nicht angezeigt.

Ausgabe von "lsof -nPi" auf der Box:
vsftpd 2845 root 3u inet 23956 TCP *:5**** (LISTEN)
vsftpd 3046 root 0u inet 25127 TCP 169.254.2.1:5****->***.***.**3.211:49274 (ESTABLISHED)
vsftpd 3046 root 1u inet 25127 TCP 169.254.2.1:5****->***.***.**3.211:49274 (ESTABLISHED)
vsftpd 3046 root 2u inet 25127 TCP 169.254.2.1:5****->***.***.**3.211:49274 (ESTABLISHED)
vsftpd 3050 root 0u inet 25127 TCP 169.254.2.1:5****->***.***.**3.211:49274 (ESTABLISHED)
vsftpd 3050 root 1u inet 25127 TCP 169.254.2.1:5****->***.***.**3.211:49274 (ESTABLISHED)
vsftpd 3050 root 2u inet 25127 TCP 169.254.2.1:5****->***.***.**3.211:49274 (ESTABLISHED)
vsftpd 3051 ftp### 0u inet 25127 TCP 169.254.2.1:5****->***.***.**3.211:49274 (ESTABLISHED)
vsftpd 3051 ftp### 1u inet 25127 TCP 169.254.2.1:5****->***.***.**3.211:49274 (ESTABLISHED)
vsftpd 3051 ftp### 2u inet 25127 TCP 169.254.2.1:5****->***.***.**3.211:49274 (ESTABLISHED)
Ausgabe von "pftop -s 2" auf dem Client-PC:
tcp Out 192.168.zzz.yyy:51190 ***.***.**2.193:5**** ESTABLISHED:ESTABLISHED 00:13:23 23:59:52 245 20678
 
genau, den FileZilla hatte ich eben ausprobiert. Ich hatte es auch mit WinSCP in der neuen Version getestet, aber dort sieht es noch schlimmer aus. Ist auch nicht verwunderlich, weil WinSCP erst seit kurzem FTPS überhaupt unterstützt.
ok, ich suche nach anderen FTPS-Klients.

Edit: Ich glaube mittlerweile weniger dran, dass es an Filezilla liegt, auch andere unzählige Klients haben bei mir momentan Problem mit LIST sowohl intern als auch extern:
Code:
211 End
       PWD
257 "/"
       TYPE A
200 Switching to ASCII mode.
       PROT P
200 PROT now Private.
       PASV
227 Entering Passive Mode (169,254,2,1,153,73).
       LIST
       QUIT

FileZilla scheint da sogar besser vor allen anderen abzuschneiden. Mit manchen hatte ich überhaupt keine sichere Verbindung zu stande bekommen.

Wie kann ich am besten sowas debuggen. Im LOG zu vsftp steht relativ wenig, selbst wenn da "zusätzlich Protokoll-Log" aktiviert ist. Dieses LIST-Problem ist im Protokoll nicht zu finden.

MfG
 
Zuletzt bearbeitet:
Mit kasablanca funktioniert es auch nicht. Im VPN funktioniert es einwandfrei, mit beiden ftp-Clienten.
 
Fehler gefunden! Wenigstens bei FileZilla funktioniert es nun einwandfrei. Dafür muss man allerdings wirklich und tief in diese beiden Modis (Active/Passive) von FTP sich einlesen. Und ich muss sofort kritisch sagen, dass vsftp-Webif bei mir mäßig dazu beigetragen hat mein intuitives Verständnis zu verwirren.
Wie cuma zurecht sagte, liegt das Problem an der Freigabe von passiven Ports nach draußen:
1. Man lege zunächst 2-3 Ports irgendwo im oberen Bereich mit AVM-Firewall-Forwarding frei. z.B. 10000,10001,10002. Destination ist natürlich 0.0.0.0
2. Dieselben Ports trägt man dann als "Passive Ports: Minimum / Maximum" unter VSFTP-WebIF ein.

Und genau hier lag mein Verständnisproblem. Ich hatte die Aussage "Minimum/Maximum" als ANZAHL der Ports verstanden, die irgendwo ausgesucht werden. Zwar sagte mir mein Gefühl, dass es nicht sein kann, dass es sich hierbei um ein RANGE handelt, hatte ich beim besten Willen nicht gedacht! Also, man sollte im WebIF diese Portgeschichte irgendwie anders beschriften und am besten in der gleichen kleinen Schrift wie sonstige Komentare dazu schreiben, dass dieselben Ports über Firewall freizugeben sind, wenn man PASV von Außen machen will.

Seitdem ich die Ports frei gegeben hatte, muss ich tatsächlich sogar nicht mehr "aktuelle öffentliche IP als pasv_address eintragen" anklicken. FileZilla kommt irgendwie auch so zu Recht.

Ich kürze da oben meine Protokollzitat, denn es bringt sowieso keinen weiter.

MfG
 
Dann sollten wir vielleicht die Begrifflichkeiten im Webinterface ein wenig adaptieren, wenn das denn so eher Verwirrung als denn Hilfe ist.

Wie wäre erster und letzter Port? Start und Ende?
 
Ich hatte das damals so genannt, weil das die üblichen Bezeichnungen sind und die Optionen auch so heissen. Vielleicht könnte man noch eine Hilfe hinzufügen, dass der Range freizugeben ist

siehe auch http://vsftpd.beasts.org/vsftpd_conf.html

...
pasv_max_port
The maximum port to allocate for PASV style data connections. Can be used to specify a narrow port range to assist firewalling.

Default: 0 (use any port)
pasv_min_port
The minimum port to allocate for PASV style data connections. Can be used to specify a narrow port range to assist firewalling.

Default: 0 (use any port)
...
 
Im Englischen heißt es "port range", wenn ich mich nicht irre. leo.org spuckt mir zum "range" Tausende Vorschläge, wobei mir davon nur "Bereich" als plausiebel erscheint.
Code:
Portbereich für passive Übertragung     Start: XXXX Ende: XXXX
würde ich sagen.

Ich habe übrigens noch ein Problem lösen können. Jetzt verbindet sich auch WinSCP. Lösung war:
Code:
require_ssl_reuse=no
in die Optionen einzutragen. Sollte angeblich einigen zickigen Clients erleichtern die Verbindung aufzubauen. Dadurch wird natürlich die Sicherheit deutlich abgestufft, deswegen nehme ich es lieber weg. Mit FireFTP kriege ich die SSL-Verbindung nicht hin. Liegt aber anscheinend an FireFTP. Ok, FileZilla funktioniert, mehr braucht man nicht.

MfG
 
Hi zusammen, leider klappt das von extern nicht bei mir.

vsftpd ohne SSL: intern / extern = OK
vsftpd mit SSL: intern = OK , extern erhalte ich Fehlermeldung:

Code:
500 Illegal PORT command.
Verzeichnisinhalt konnte nicht empfangen werden

getestet mit Filezilla und WinSCP.

Passive Ports: Minimum 21210 Maximum 21218
Forward-Regeln:
tcp 0.0.0.0:21 0.0.0.0:21 0 # FTP-Server
tcp 0.0.0.0:21210+9 0.0.0.0:21210 0 # FTP-Data

Bisher konnte ich mir selber helfen, aber nun komme ich nicht weiter...
 
Holen Sie sich 3CX - völlig kostenlos!
Verbinden Sie Ihr Team und Ihre Kunden Telefonie Livechat Videokonferenzen

Gehostet oder selbst-verwaltet. Für bis zu 10 Nutzer dauerhaft kostenlos. Keine Kreditkartendetails erforderlich. Ohne Risiko testen.

3CX
Für diese E-Mail-Adresse besteht bereits ein 3CX-Konto. Sie werden zum Kundenportal weitergeleitet, wo Sie sich anmelden oder Ihr Passwort zurücksetzen können, falls Sie dieses vergessen haben.