FTP Server hinter FritzBox funktioniert nicht

Drakonomikon

Commander
Registriert
Okt. 2005
Beiträge
2.778
Ich habe mit Windows Server 2012 R2 einen FTP-Server erstellt. Port 21. Im internen Netzwerk kann ich auch problemlos auf diesen zugreifen. Allerdings nicht von außen. Weder über Browser, noch über Filezilla. Grund: Timeout. Die FritzBox hat eine Portfreigabe von 21 auf meinen Server mit dem Port 21. Ein Portscan von Außen meldet den Port als geschlossen. Die Windows-Firewall Einstellungen haben die FTP-Ports alle offen. Weiterhin habe ich bei der FTP-Site im IIS-Manager unter den Firewall-Einstellungen noch die IP meiner FritzBox übergeben (da in anderen Foren das als mögliche Problemlösung angegeben wurde). Funktioniert aber auch nicht.

Der HTTP Server (Port 80) funktioniert einwandfrei von Außen und Innen. Die IP Adresse meines Dynamic DNS Serivceanbieters funktioniert einwandfrei. D.h. ob ich nun den Domainnamen oder die IP von Außen nutze macht auch keinen Unterschied.

Exposed Host bei der FritzBox habe ich schon probiert, funktioniert nicht. Bei der FritzBox ist die MyFritz-FTP-Geschichte nicht aktiv (also damit kein Konflikt).
 
FTP nutzt den Port 21 nur um zu horchen. Für den Transfer selbst werden andere Ports genutzt. Auch die müssen freigegeben und weitergeleitet werden. Das solltest Du mal überprüfen.
 
Wie gesagt, alle Ports habe ich freigegeben. Auch dann geht es nicht.
 
Port 2121 benutzen, dann sollte das auch gehen. Entsprechend den Port im FTP und der Freigabe anpassen.

Gruß

nicknackman
 
Null Ahnung von FTP!
RTFM!

Passives FTP einschalten!
Ports im FTP Server fest eintragen, z.b. 10021 bis 10200.
Passive Range im FTP eintagen, z.b. 10021 als listen Ports und 10022-10200 als Daten Ports.
dann TCP 10021-10200 im Router auf die Server IP Weiterleiten lassen.
Am besten DynDNS Namen benutzen, im Router eintragen... und im FTP Server als Hostnamen.
 
@nicknackman1: Funktioniert (wenn man eine Portfreigabe bei der FritBox einstellt und eingehende Verbindungen bei der Windows Firewall). Aber warum?

@SkaFan: Wenn du mir schon Null Ahnung diagnostizierst, dann hätte deine Antwort auch für solch jemanden geschrieben sein sollen. Ich verstehe zwar was du mit der Antwort meinst, nicht aber wie ich diese umsetzen soll.
 
http://mywiki.wooledge.org/FtpMustDie
Punkt 3 und 4.

Nutz stattdessen lieber SFTP aka SSH. Das funktioniert mit Filezilla Server und Client genausogut. Und wenn du Dateien "anonymous" bereitstellen musst, nimm einen Webserver. Oder via Basic auth wenn es passwortgeschützt sein soll mit dem Webserver. FTP ist alt und gebrechlich, es darf in Rente gehen: es gibt jüngere Protokolle die den Job besser machen.
 
Danke, das war mir aber klar. Da Windows kein SFTP nativ unterstützt wird es FTPS werden.
 
Windows unterstützt aber nativ HTTP und Basic Auth.
FTPS ist immer noch FTP, nur noch komplizierter und noch schlechter.
 
Ich habe nun festgestellt dass es an der FritzBox lag, dass Port 21 nicht geöffnet wurde. Das ganze scheint bei der FritzBox verbuggt zu sein. Es funktioniert aber, wenn man einen beliebigen Port öffnet (z.B. 2121), die Eintstellung übernimmt, und den Port dann nachträglich auf 21 ändert. Nun ist Port 21 offen.

Nächstes Problem: Der FTP-Server ist erreichbar. Passives FTP funktioniert nicht. Filezilla meldet: "Vom Server gesendete Adresse für den Passiv-Modus ist nicht routingfähig. Benutze stattdessen die Serveradresse.". Das ist kein Drama, denn wenn ich alle Ports von 1024-65535 weiterleite auf meinen Server, dann geht alles reibungslos über Aktives FTP. Ich habe aber nicht vor einen Großteil aller Ports offen zu lassen. Ich möchte stattdessen am FTP-Server einen Portbereich angeben (z.B. 60000-60100). Das führt zu dem Problem, dass diese Option dummerweise bei mir auf 0-0 steht und ausgegraut ist. Zudem steht dort auch noch was zum Thema Passives FTP, woraus ich nicht schlau werde. Denn es geht auch nicht wenn ich den Server als Exposed Hosts setze.
Ergänzung ()

Lösung: Im IIS 8.5 euern Server auswählen. Unter "Verwaltung", den "Konfigurations-Editor" auswählen. Dort unter "system.ftpServer/firewallSupport" den "lowDataChannelPort" und "highDataChannelPort" einen gewünschten Portbereich angeben. Diesen Portbereich in der Windows-Firewall für eingehende Verbindungen zulassen und natürlich auch in der Fritzbox auf den Server weiterleiten. Passive Verbindungen sind damit zwar nicht möglich, aber Aktive.

Evt. muss man noch die externe IP der Fritzbox bei den Firewall-Eintellungen der FTP-Site angeben. Ich habe es gemacht, es geht aber glaube ich auch ohne.
 

Anhänge

  • FTP.png
    FTP.png
    22,7 KB · Aufrufe: 869
Zuletzt bearbeitet:
Drakonomikon schrieb:
Ich habe nun festgestellt dass es an der FritzBox lag, dass Port 21 nicht geöffnet wurde. Das ganze scheint bei der FritzBox verbuggt zu sein. Es funktioniert aber, wenn man einen beliebigen Port öffnet (z.B. 2121), die Eintstellung übernimmt, und den Port dann nachträglich auf 21 ändert. Nun ist Port 21 offen.

Nope verbuggt ist hier vermutlich eher deine Freigabenpolitik. Bei Sinnfreigen Freigaben wie beispielsweise, wenn du eine doppelte Freigabe auf demselben externen Port einrichtest, sperrt die FRITZ!Box für ~15 Minuten die zweite Freigabe und lässt nur die Erste zu. Was zugegebenermaßen auf den ersten Blick nach einem Bug aussehen mag, aber technisch gesehen keiner ist. Darüber hinaus ist dein Vorhaben mit dem ISS-FTP-'Geschiss' eine wirklich umständliche Lösung die du mit alternativen Möglichkeiten, die bereits aufgezählt wurden, deutlich effektiver, sichererer und vor allem Nachhaltiger umsetzen könntest. Aber hey, jeder hat so seine Hobbys. :D
 
Sc0rc3d schrieb:
[...] wenn du eine doppelte Freigabe auf demselben externen Port einrichtest, sperrt die FRITZ!Box für ~15 Minuten die zweite Freigabe und lässt nur die Erste zu. [...]
Ja, das könnte es erklären. Dann wäre es aber nicht dumm dem Administrator eine Warnmeldung zu geben, dass gerade Ports gesperrt werden. Danke für die Info.
 
Stimmt, eine Warnmeldung hätte mir auch das ein oder andere graue Haar erspart. ;)
 
Zurück
Oben