Skip to content
You are here: Home » Unsere Angebote für berufliche Schulen » Arbeitsgruppen » Online-Dienste » Online-News » Ausgabe 15 » FTP - Grundsätzliches Landeswappen

FTP - Grundsätzliches

FTP Grundsätzliches

Rainer Utz, Gebhard-Müller-Schule Biberach
   
1 FTP Grundsätzliches

1.1 Was ist FTP?

Einleitung

Einer der wichtigsten Dienste im Internet ist FTP.

FTP steht für File Transfer Protocol und bezeichnet neben dem Protokoll auch gleichzeitig den Dienst, der mit dem Protokoll realisiert ist: die Übertragung von Dateien zwischen verschiedenen Rechnern über das Netz. FTP ist einer der am meisten genutzten Dienste im Internet. Wie viele andere Internet-Dienste auch, arbeitet ftp/client/server- orientiert und steht auf fast allen Plattformen zur Verfügung.

Mit FTP ist es möglich Dateien von einem Rechner zum anderen zu übertragen. Hierfür benötigt man natürlich auf den beteiligten Rechnern die entsprechenden Zugriffsrechte. Seine enorme Bedeutung für das Internet erhält FTP jedoch durch weltweit verteilte frei zugängliche Anonymous FTP Server; das sind Rechner, auf denen immense Mengen an unterschiedlichen Dokumenten über FTP zur Verfügung gestellt werden. Man findet auf diesen Archiven Software für fast alle denkbaren Rechnertypen; Gerätehersteller bieten neueste Treiber für ihre Produkte zum Download an; es gibt Dokumente jeglicher Art in allen möglichen Formaten, Bilder, Videosequenzen, Sounddateien und vieles mehr.

Für Anonymous FTP Server braucht man keine individuellen Zugriffsrechte. Als Benutzername kann anonymous oder ftp, was auf vielen Servern auch akzeptiert wird, angeben werden. Als Passwort gibt man seine komplette E-Mail-Adresse ein.

Architektur und Konzept

TCP/IP ist der kleinste gemeinsame Nenner des gesamten Datenverkehrs im Internet. Erst durch dieses Protokoll wurde historisch gesehen aus einem begrenzten Netz ein Netz der Netze. Egal ob Web-Seiten aufgerufen, E-Mails versandt, mit Telnet auf einem entfernten Rechner gearbeitet wird oder mit FTP Dateien up- und downgeloadet werden: stets werden die Daten mit TCP/IP adressiert und transportiert.

Nach dem OSI-Schichtenmodell ist TCP/IP in der Transportschicht bzw. Vermittlungsschicht angesiedelt. FTP liegt in den höheren Schichten.

OSI-Schichtenmodell
Abbildung: OSI - Schichtenmodell

Das File Transfer Protocol spezifiziert den benutzergesteuerten Datenaustausch zwischen zwei Rechnern, basierend auf einer TCP-Endsystemverbindung. Es durchlief seit den Anfängen des Internet mehrere Entwicklungsstufen.

Der FTP-Standard beschreibt eine Architektur nach dem Client/Server-Prinzip, deren zentraler Bestandteil die Trennung von Kontroll- und Datenverbindung ist.

Eine FTP-Sitzung läuft schematisch folgendermaßen ab: Der Client initiiert den Aufbau einer Kontrollverbindung zum Server und schickt über diese Kontrollverbindung Kommandos an den Server. Der Server antwortet auf die Kommandos des Client ebenfalls über die Kontrollverbindung. Die Kommandos des Client legen die Parameter für die Datenübertragung, z.B. Datentyp, Übertragungsmodus, Datenstruktur, und die durchzuführenden Operationen fest, z.B. Verzeichnisse wechseln, Verzeichnisse anlegen, Speichern, Anfügen, Abholen, Löschen von Dateien. Ist eine Aktion mit den erforderlichen Parametern festgelegt, findet die Datenübertragung über die Datenverbindung statt.

FTP-Client-Server-Verbindung
Abbildung: FTP-Client-Server-Verbindung
Eine weitere, weniger bekannte Einsatzmöglichkeit von FTP zeigt die folgende Abbildung, bei der ein Benutzer eine Datei zwischen zwei Rechnern austauscht, von denen keiner der eigene ist. Der Benutzerclient initiiert dabei zwei Kontrollverbindungen zu den beiden Servern A und B und versetzt anschließend Rechner A in den Passivzustand. Nun teilt er Rechner B die Adresse von A als zu nutzende Datenverbindung mit und gibt das Kommando zum Datentransfer. Nach Vollzugsmeldung beendet der Benutzerclient die Verbindungen.
FTP-Server-Server-Verbindung
Abbildung: FTP-Server-(Client)-Server-Verbindung

Im FTP-Protokoll wurden Vorkehrungen für viele unterschiedliche Fälle und Konstellationen getroffen. Es gibt unterschiedliche Datentypen, z.B. ASCII, EBCDIC, IMAGE, die der Benutzer angeben kann. Auch wurden verschiedene Übertragungsarten, z.B. Stream (Datenstrom ohne Struktur), Block (Daten werden blockweise übertragen) und Compressed (einfache Datenkompression bei der Übertragung) berücksichtigt. Selbst für unterschiedliche Datenstrukturen wie Datei, Record oder Seite wurden Vorkehrungen getroffen. In konkreten Implementierungen werden jedoch meistens nicht alle Möglichkeiten realisiert. Als Übertragungsart steht meist nur Stream und als Datenstruktur Datei zur Verfügung.

Die wichtigsten Kommandos sind GET und PUT zum Holen bzw. Schicken von Dateien.

Doch selbst deren Kenntnis ist für den Endbenutzer heute nicht mehr nötig, denn moderne graphische FTP-Clients ermöglichen das Manipulieren von Dateien und Verzeichnissen per einfachem Drag and Drop.

Die Arbeit mit FTP:

Die meisten heutigen FTP-Programme unterscheiden sich äußerlich kaum von bekannten Dateimanagern. Viele gängige Dateimanager wie z.B. der Windows Commander haben bereits einen FTP-Client im Programm.

Dateimanager mit integriertem FTP-Client
Abbildung: Dateimanager mit integriertem FTP-Client
Aktuelle Browser wie der MS Internet Explorer oder der Navigator von Netscape besitzen implementierte FTP-Funktionalität. Sie zeigen die Dateilisten auf FTP-Servern als anklickbare Ordner bzw. Dateien an. Je nach Dateityp lassen sich diese dann downloaden oder direkt im Browser-Fenster anzeigen.
Anonymer FTP-Zugriff per Browser
Abbildung: Anonymer FTP-Zugriff per Browser

Für anspruchsvollere Arbeiten, die sich nicht mit einem Browser oder Dateimanager erledigen lassen, z.B. die Verwaltung der eigenen Homepage, sind FTP-Clients wie beispielsweise WS_FTP Pro (ipswitch.com) im Gebrauch.

Sie zeigen zumeist in einem Programmfenster die lokale Verzeichnisstruktur und in einem anderen Programmfenster die Verzeichnisstruktur des aufgerufenen Servers an. Durch Markieren und Ziehen mit der Maus lassen sich Dateien uploaden oder downloaden. Ebenso einfach können Dateien gelöscht oder umbenannt werden. Moderne FTP-Clients können unterbrochene Downloads wiederaufnehmen oder wiederholen. Sie lassen Mehrfachverbindungen zu Servern zu, was die Bandbreite erhöht bzw. paralleles Arbeiten in verschiedenen Verzeichnisebenen erlaubt.

Sie passen beim Upload eines Webprojekts mit untereinander verlinkten Web-Seiten automatisch die lokale Pfadstruktur der HTML-Seiten an die Pfadstruktur des Webservers an.

FTP-Programme verfügen in der Regel auch über eine Site-Verwaltung. Dort können für jede benutzte FTP-Adresse die Zugangsdaten und technischen Einstellungen gespeichert werden. Außerdem arbeiten sie mit den gängigsten Firewalls zusammen und unterstützen in den neuesten Versionen auch bereits eine sichere verschlüsselte Kennungs- und Datenübertragung per SSL (Secure Socket Layer).

Anmeldedialog FTP-Client am Beispiel von WS_FTP Pro
Abbildung: Anmeldedialog FTP-Client am Beispiel von WS_FTP Pro

Beim „normalen" FTP bekommt man nur Zugriff auf den Server, wenn beim Einwählen zusätzlich zum Host-Name (IP-Adresse oder DNS-Name) ein Benutzername und ein Kennwort angegeben werden. Mit diesen Zugangsdaten muss der Benutzer vom FTP-Serververwalter als berechtigter Anwender am Server eingetragen sein.

Bei anonymem FTP wählt man sich beispielsweise mit dem Benutzernamen anonymous oder ftp ein und gibt als Passwort seine E-Mail Adresse an. Es gibt viele öffentliche FTP-Server im Internet, die umfangreiche Dateibestände zum Download anbieten. Für öffentliche, anonyme FTP-Server gibt es bestimmte Verhaltensregeln die eingehalten werden sollten. Es sind z.B. nicht unbeschränkt viele simultane Nutzer möglich. Deshalb sollte man eine FTP-Verbindung nur solange wie nötig aufrechterhalten. In den meisten öffentlichen FTP-Servern gibt es zudem Readme-Dateien, die Inhalt und Struktur der Serververzeichnisse erläutern.

FTP-Client Oberfläche
Abbildung: FTP-Client Oberfläche

Nachteile und Ausblick:

Ein gravierender Nachteil beim normalen FTP ist, dass Kennungen und Daten unverschlüsselt übertragen werden.

Dies lässt sich jedoch vergleichsweise einfach beheben. Denn ein FTP-Server kann, wie jeder andere Server-Prozess auch, mit einem starken Authentisierungsverfahren und Datenverschlüsselung betrieben werden.

Zudem bietet neuere FTP-Client und -Serversoftware wie WS_FTP (für Windows NT/2000/XP Server) oder die SSH Secure Shell (alle Betriebssysteme) eine starke SSL-Verschlüsselung.

Es bleibt zu erwarten, dass die Browserhersteller nicht nur https, sondern auch sftp (Secure FTP) in ihre neuesten Produkte integrieren.

Quellen:

  • Catherine West [OSI Illustration]

  • Data Becker Computer Lexikon (Data Becker Verlag)

  • Internet Sicherheit (Hanser Verlag)

  • Internet: Werkzeuge und Dienste (Springer Verlag)

  • RFC 959

  • SelfHTML80 

  • SSH Secure Shell

  • WS_FTP