Sie befinden sich hier: Home | fli4l | FTP | FTP-Verbindungsarten

Beschreibung der verschiedenen FTP-Arten

Hinweis: diese Seite ist im Orginal in Englisch unter www.openbsdjournal.org/howto/pfftp.html zu erreichen!

Sie wurde von mir ins Deutsche übersetzt und um spezielle Hinweise zu fli4l erweitert.

Grundlegendes zum FTP-Protokoll

FTP ist ein einfaches Protokoll das nicht unter Berücksichtigung der Sicherheit entwickelt wurde. Zu der Zeit als es entwickelt wurde, gab es keine Firewall/NAT-Router. Nach deren Entstehung wurden Änderungen vorgenommen, die es einfacher machen die Sicherheit zu erhöhen, jedoch sind noch nicht alle FTP-Clienten entsprechend angepasst worden, so das entsprechende Funktionen/Maßnahmen auf der Firewall / dem NAT-Router getroffen werden müssen.

Active FTP-Session

Bei einer Standard activen FTP-Übertragung, wird zuerst vom Client eine FTP-Control -Verbindung von einem zufälligen unpriviligierten Port (N > 1024) zum Port 21 des FTP-Servers hergestellt. Wenn Daten übertragen werden sollen, z.b. Dateienliste oder Dateiübertragung, wird vom Daten-Port (20) des FTP-Servers eine Verbindung zu einem zufälligen unpriviligierten Port des Clienten aufgebaut und diese Verbindung zum Datenaustausch genutzt, der entsprechende Port wird den FTP-Client über den Control-Kannal mitgeteilt.

 

Active-FTP

 

Anmerkung: die Pfeile kennzeichnen die Richtung des Verbindungsaufbaues - ein Datenaustausch findet aber in beiden Richtungen statt.

Passive FTP-Session

Wie man sehen kann, ist Actives-FTP ein sehr kompliziertes Protokoll aus Sicherheitssicht, da die Firewall (der Client befindet sich hinter einer) alle unpriviligierten Port's für reinkommende Verbindungen zu dahinterliegenden Hosts akzeptieren muss. Das ist aber nicht akzeptabel für die meisten Nutzer/Firmen. Darum wurde durch die IETF das FTP-Protokoll überarbeitet, es entstand der passive (PASV) FTP Übertragungsmodus.
Bei einer passiven FTP-Verbindung, baut der Client eine Verbindung zum Control-Port (21) des FTP-Servers auf. Der FTP-Server gibt dem Clienten darauf über den Control-Kanal einen freien unpriviligierten Port (> 1024) bekannt, worauf dieser wiederum von einem eigenen Port der eins (N + 1) über dem Controlport liegt, zu diesem eine Verbindung zum Datenaustausch aufbaut.

 

Passive-FTP

 

Anmerkung: die Pfeile kennzeichnen die Richtung des Verbindungsaufbaues - ein Datenaustausch findet aber in beiden Richtungen statt.

 

 

Hiermit ist es nun für die Nutzer/Firmen möglich, einen FTP-Proxy zwischenzuschalten. Zwischen Proxy und Client kann der active und auch der passive FTP-Übertragungsmodus, und zwischen Proxy und FTP-Server dann der passive FTP-Übertragungsmodus genutzt werden.