Eigener FTP-Server - dyndns, CesarFTP - Probleme

Hallo @ all.

Ich habe ein Problem mit einer FTP-Server Geschichte.

Ich möchte mir gern einen eigenen FTP-Server einrichten. D.h. ich möchte Daten auf meinem PC freigeben, auf die dann andere Leute von außerhalb zugreifen können.

Mein PC (Win XP Prof, feste IP) hängt im Lan an einem Router (FritzBox), welcher die Verbindung zum Internet bringt.

Ich habe mich schon zu genüge belesen und sämtliche Vorschläge aus diversen anderen Foren beachtet.

Was ich bis jetzt getan habe:

  • dyndns.com genutzt um Hostname / Ip-Adresse für meinen Router im Internet festzulegen
  • FritzBox konfiguriert (Dyndns eingetragen, Port 21 für FTP frei gemacht)
  • CesarFTP auf meinem PC installiert und dementsprechend Daten freigegeben

Trotz alledem funktioniert es einfach nicht. Ich habe die Sache von zwei verschiedenen Rechnern (einer steht neben meinem Pc im gleichen Lan, ein anderer PC steht bei einem Bekannten) getestet. Auch habe ich es über den Browser und über totalcommander probiert - kein Erfolg.

Meine Frage jetzt: Was mache ich falsch?

Ich verstehe die Sache sowieso nicht komplett. Natürlich ist mir klar, dass dyndns dafür sorgt, dass mein Router immer unter dem gleichen Namen / gleichen IP erreichbar ist (für Außenstehende) - da ohne dyndns der Provider ja laufend die Adresse für mich ändern würde.
Mir ist auch alles andere soweit klar - Portfreigabe damit Jemand von außen durch die Firewall von meiner Fritz kommt. CesarFTP kümmert sich darum, dass ich selbst entscheide was ich via FTP zur Verfügung stelle.
Was ich allerdings nicht verstehe, ist die Tatsache, dass doch eigentlich der Router gar nicht weis, welcher Pc im Netzwerk jetzt angesprochen werden soll, oder?
Müsste man nicht eigentlich im Router eine Weiterleitung o.Ä. einrichten, die dafür sorgt, dass ein Zugriff von außen auf die dyndns-IP, also auf meinen Router, auf meinen PC weitergeschickt wird?
Wenn ja, wie richte ich das denn ein? In meiner FritzBox ist so etwas nicht möglich.

Kann mir vielleicht Jemand helfen?
Ich stelle auch gern die Zugangsdaten zur Verfügung um ggf. zu testen.

Vielen Dank schon mal.

Hallo!

  • FritzBox konfiguriert (Dyndns eingetragen, Port 21 für FTP frei gemacht)

Schlechte Idee.
FTP ist ein häufiges Ziel von Script-Kiddies, die mit rudimentären Scannern auf eben diesem Port nach FTP-Servern suchen, an denen sie dann ihre „Hacking“-Fähigkeiten erproben.
Verschieb den Server (und natürlich auch das Forwarding im Router) auf einen hohen Port, dann ist Ruhe. Musst natürlich diesen hohen Port dann auch an deine Freunde weitergeben, damit die den in ihr FTP-Programm eintragen, sonst klappt’s natürlich nicht.

Was ich allerdings nicht verstehe, ist die Tatsache, dass doch eigentlich der Router gar nicht weis, welcher Pc im Netzwerk jetzt angesprochen werden soll, oder?
Müsste man nicht eigentlich im Router eine Weiterleitung o.Ä. einrichten, die dafür sorgt, dass ein Zugriff von außen auf die dyndns-IP, also auf meinen Router, auf meinen PC weitergeschickt wird?

Richtig, das nennt man Port-Forwarding.
Mir ist nicht wirklich klar, was eine „Port-Freigabe“ ist, bei jedem Router muss man dafür auch immer die IP-Adresse des Zielrechners angeben. Schalte diese „Freigabe“ mal lieber wieder ab und dann such mal im Handbuch deiner Fritzbox nach Forwarding.

Meine Frage jetzt: Was mache ich falsch?

Du musst - musst! - deinen FTP-Server (also, die Server-Software) auf den passive Mode umstellen! Ansonsten wird niemand, der selber hinter einem Router sitzt, mit deinem Server Kontakt aufnehmen können.
Das hat nur was damit zu tun, wie und von wem der Datenübertragungsport festgelegt wird (also, von welchem Programm).
Du musst dazu in deiner Server-Software den passive Mode aktivieren, deine Adresse (also die DynDNS-Adresse) angeben und eine Port-Range für die eigentliche Datenübertragung definieren. 10 Ports tun’s für normale User allemal.
Sollte deine Software keinen passive Mode anbieten, ist sie für deine Zwecke nicht geeignet.

Im Router musst du dann neben dem Kommandoport (also 21 bzw. dem Ersatz dafür) auch diese 10 Ports auf den Rechner mit dem FTP-Server forwarden.

Damit läuft mein FTP-Server schon seit Jahren absolut zuverlässig.

Sollte dir das nicht reichen, so schreib mir ne Nachricht - dann richte ich dir einen Account auf meinem Server ein - dort liegt nämlich auch eine ausführliche Anleitung als PDF rum, nebst der benötigten Software und allem, was man braucht, um auch das letzte Quentchen Performance da herauszuquetschen . . . ;D

lg, mabuse

Wenn ja, wie richte ich das denn ein? In meiner FritzBox ist
so etwas nicht möglich.

Also bei mir schon , da geb ich für den PC (bzw feste IP , oder im DHCP festlegen) den einagnagsport und ausgangsport und das protokoll an.

Das wird dann wohl auch bei deiner Box so sein .

Und verwechsel nicht Firewall Portfreigabe und Router Portweiterleitung.
Wenn dein PC natürlich immer eine andere IP bekommt, dann klappt das nicht.

Ich möchte mir gern einen eigenen FTP-Server einrichten. D.h.
ich möchte Daten auf meinem PC freigeben, auf die dann andere
Leute von außerhalb zugreifen können.

Das ist mit Sicherheit sehr unsicher.

Eigentlich würde man sowas in einer DMZ machen.

Mein PC (Win XP Prof, feste IP) hängt im Lan an einem Router
(FritzBox), welcher die Verbindung zum Internet bringt.

Feste interne IP ist schonmal gut.

Was ich bis jetzt getan habe:

  • dyndns.com genutzt um Hostname / Ip-Adresse für meinen
    Router im Internet festzulegen
  • FritzBox konfiguriert (Dyndns eingetragen, Port 21 für FTP
    frei gemacht)

Und da fehlt was:

Woher soll der Router wissen, dass er Anfragen an deine momentane öffentliche IP (von dyndns mitgeteilt) an genau den Rechner weiterleiten soll, wo die FTP Software läuft?

Eben!

Du musst ihm eine Portweiterleitung beibringen. Alle Anfragen unter Port 21 werden auf den einen PC mit sagen wir mal 192.168.2.12 weitergegeben.

  • CesarFTP auf meinem PC installiert und dementsprechend Daten
    freigegeben

Das sagt mir alles nichts.

Trotz alledem funktioniert es einfach nicht. Ich habe die
Sache von zwei verschiedenen Rechnern (einer steht neben
meinem Pc im gleichen Lan, ein anderer PC steht bei einem
Bekannten) getestet.

Aus dem selben LAN geht es nicht? Moment!
Hast du versucht, den FPT Server über 192.168.2.12 (Beispiel!) anzusprechen oder über meinname.dyndns.com?

Erste Variante (rein intern) sollte auch ohne Routerkonfiguration passen.
Die zweite geht natürlich ohne Portweiterleitung nicht.

Ich verstehe die Sache sowieso nicht komplett. Natürlich ist
mir klar, dass dyndns dafür sorgt, dass mein Router immer
unter dem gleichen Namen / gleichen IP erreichbar ist (für
Außenstehende) - da ohne dyndns der Provider ja laufend die
Adresse für mich ändern würde.
Mir ist auch alles andere soweit klar - Portfreigabe damit
Jemand von außen durch die Firewall von meiner Fritz kommt.
CesarFTP kümmert sich darum, dass ich selbst entscheide was
ich via FTP zur Verfügung stelle.
Was ich allerdings nicht verstehe, ist die Tatsache, dass doch
eigentlich der Router gar nicht weis, welcher Pc im Netzwerk
jetzt angesprochen werden soll, oder?

Du hast das Problem erkannt. Sehr gut!
Und du weißt ja nun, wie du es lösen kannst.

Bitte beachte die Sicherheitsbedenken.
Eine kleine Hürde wäre es für Angreifer, wenn du eben nicht Port:21 für FTP nutzt, sondern z.B. Port:45723 auf intern 192.168.2.12 mit Port 21 leitest.
Dann müssen die, die legal Zugriff auf den FTP-Server haben wollen, halt genau diese, exotische Portnummer kennen und nutzen.

Müsste man nicht eigentlich im Router eine Weiterleitung o.Ä.
einrichten, die dafür sorgt, dass ein Zugriff von außen auf
die dyndns-IP, also auf meinen Router, auf meinen PC
weitergeschickt wird?

FAST richtig gedacht. Es wird Port bezogen weitergeleitet.

Wenn ja, wie richte ich das denn ein? In meiner FritzBox ist
so etwas nicht möglich.

Öhh, sicher nicht?
Ist eigentlich ein Standardfeature von Routern.
Such mal.
Bei einigen Modellen muss man dazu erstmal den „Expertenmodus“ aktivieren. Aber ich kenne mich mit Fritz nicht aus.

Danke für Eure Antworten. Hat mir wirklich sehr geholfen.

Ich habe jetzt meine(n) entscheidende(n) Fehler gefunden.

Es lag einmal an der fritzbox-Konfiguration sowie am ftp-server-Tool CesarFTP.

In der fritzbox musste ich die tatsächliche Portweiterleitung zu meinem Pc einrichten, welche ich vorher schlichtweg nicht gefunden habe, in der Konfig. Nun weis ich, wo sich diese befindet (Vorraussetzung ist die Expertenansicht: ->Internet -&gt:stuck_out_tongue_winking_eye:ortfreigabe ->Neue Portfreigabe -&gt:stuck_out_tongue_winking_eye:ortfreigabe aktiv für „FTP-Server“ ->an IP-Adresse „-eigene PC-IP eintragen-“ FERTIG.

Im CesarFTP musste ich die IP von dyndns sowie dessen Zugangsdaten (Nutzer, PW) eintragen.

Dann hat es funktioniert. Ohne Probleme. Sogar aus dem gleichen Netzwerk. Was ich übrigens nicht verstehe - ich hab in vielen Dokumenten und Foren gelesen, dass jene Geschichte aus dem selben Netzwerk (also ein anderer PC im gleichen Netzwerk greift darauf zu) nicht geht. Bei mir geht es allerdings.

Naja, egal. Danke

Das zugreifen klappt natürlich, die Frage ist nur wie schnell.

Möglichkeit 1:
PC1 -> Router -> DynDNS -> Router -> Caesar-FTP auf PC2
Der Traffic geht dann über das Internet und ist ziemlich langsam (je nach DSL-Anschluß)

Möglichkeit 2:
PC1 -> Router -> PC2
Der Traffic verlässt das lokale Netzwerk nicht, und nutzt die volle interne Bandbreite aus.

Evtl. wird nur beim Verbindungsaufbau über den DNS die IP aufgelöst, danach aber ist der Router schlau genug zu merken, dass somit eine interne Adresse gesucht wird und verbindet dann die beiden direkt.

Welche der beiden Versionen bei dir grade läuft, weiß ich nicht, wahrscheinlich die erste, da sonst sich die Leute nicht so aufgeregt hätten, wie du meintest. Um das zu verhindern, verbinde einfach direkt über die interne IP im Netzwerk.

Gruß

Das zugreifen klappt natürlich, die Frage ist nur wie schnell.
Möglichkeit 1:
PC1 -> Router -> DynDNS -> Router -> Caesar-FTP auf PC2
Der Traffic geht dann über das Internet und ist ziemlich langsam (je nach DSL-Anschluß)

Unfug.
Lediglich die DNS-Namensauflösung läuft in dem Fall über das Internet - wodurch sich der erste Zugriff um ein paar Millisekunden verzögern kann. Dannach schickt dein Client die Daten an deine eigene öffentliche IP - und ein Router, der so dämlich ist, Daten nach draussen zu schicken, die für seine eigene Adresse bestimmt sind, den hat’s vieleicht vor 10 Jahren mal gegeben, heute gibt’s das nicht mehr (oder der bedarf dringend eines Firmware-Updates).

Intern läuft mein FTP-Server mit ~30 MB/s, egal ob ich die feste IP des Servers oder die DnyDNS-Adresse verwende.

lg, mabuse