File Transfer Protocol

netplanet Werbung

Reine Datenübertragung, ohne viel Schnickschnack - das ist die Stärke des File Transfer Protocol. Seine kompromisslose Effizienz macht FTP trotz seines, in der Computerbranche ungewöhnlich hohen Alters, im Internet immer noch zu einem Übertragungsprotokoll erster Wahl.

Was ist FTP?

Das File Transfer Protocol (engl. "Datenübertragungsprotokoll") ist ein relativ einfach aufgebautes und zuverlässiges Protokoll im Internet zur Übertragung und Verwaltung von Dateien von beziehungsweise auf einem Server.

Geschichtliches

FTP gehört neben Telnet zu den ältesten Protokollen im Internet und hat seine Ursprünge im ARPANet, dem militärischen Vorläufer des heutigen Internet. Während Telnet für die Fernnutzung von Großrechnern eingesetzt wurde, wurden mit FTP erforderliche Dateiübertragungen vorgenommen, aber auch das Bereithalten von Dokumenten abgewickelt. Beispielsweise waren in den Anfangsjahren die meisten Dokumente auf öffentlich zugänglichen FTP-Server im ARPANet für Jedermann erreichbar.

Technisches

FTP arbeitet verbindungsorientiert mit zwei getrennten Verbindungen: Der Steuerverbindung auf dem TCP-Port 21 und der Datenverbindung auf dem TCP-Port 20.

Wird mit einem Client Kontakt zu einem FTP-Server hergestellt, wird zunächst eine Steuerverbindung aufgebaut. Über diese Steuerverbindung werden die FTP-Befehle und Parameter zwischen Client und Server ausgetauscht. Wählt der Nutzer mit seinem Client nun eine Datei zur Übertragung aus, wird vom Server eine Datenverbindung zum Client aufgebaut und die zu übertragende Datei übertragen. Danach wird die Datenverbindung wieder abgebaut, während die Steuerverbindung so lange aufrechterhalten bleibt, wie die Kommunikation zwischen Client und Server besteht.

Bei der Datenübertragung gibt es zwei unterschiedliche Modi, die als ASCII-Mode und Binary-Mode bezeichnet werden. Die beiden Modi unterscheiden sich grundsätzlich in der Art der Codierung, wie sie übertragen werden. Der ASCII-Mode wird vor allem zur Übertragung von reinen Textdateien genutzt, da hier eine Umcodierung der Zeilenstruktur des Textes erfolgt. Der Binary-Mode hingegen überträgt eine Datei byteweise, es wird also nur im Binary-Mode eine Datei ohne Änderungen übertragen, weshalb dieser Modus auch der am häufigsten genutzte ist.

Die Besonderheit, dass die Datenverbindung vom Server aus initiiert wird, kann allerdings ein Problem für Clients mit sich bringen, die keine direkte Verbindung zum Internet haben, also zum Beispiel hinter einer Firewall oder einem Router mit NAT stehen. Hier muss der Client auch die Datenverbindung initiieren, da ansonsten die eingehende Verbindung abgeblockt würde. Dieses grundlegende Verhalten muss am Client eingestellt werden und nennt sich passives FTP.

Benutzung

Für alle internetfähigen Betriebssysteme gibt es mehr oder weniger komfortable FTP-Programme. Sehr einfache FTP-Programme arbeiten auf Kommandozeilenebene, modernere mit intuitiven Benutzerführungen. Auch die meisten Webbrowser besitzen von Hause aus FTP-Funktionalitäten und ermöglichen das Nutzen eines FTP-Server ohne die üblichen Befehle, da diese vom Browser gemäß den Benutzereingaben ausgeführt werden. Vergleichbar wäre dies zum Beispiel mit Dateioperationen auf DOS-Ebene und dem Windows Explorer.

Für den Zugriff auf einen FTP-Server (beziehungsweise abgelegte Verzeichnisse und Dateien) sind grundsätzlich immer Benutzerdaten erforderlich, bestehend aus einem Benutzernamen und einem Kennwort. Damit können veröffentlichte Ressourcen nur einen bestimmten Kreis von Personen zur Verfügung gestellt werden. Wie aber funktionieren dann FTP-Server, auf denen ohne die Eingabe von Benutzerdaten zugegriffen werden kann?

Auch wenn Sie für solche öffentlich zugänglichen FTP-Server wissentlich keine Benutzerdaten eingeben, sind diese erforderlich. Jedoch handelt es sich dann meistens um so genannte Anonymous FTP-Server, die bewusst öffentlich zugänglich gemacht werden sollen und deshalb den Benutzernamen "anonymous" als berechtigten Benutzer eingetragen haben. Dieser Benutzername ist im Internet für diese Zwecke geläufig und als Passwort wird Ihre E-Mail-Adresse erwartet. Viele FTP-Programme nehmen diese Anmeldungen standardmäßig vor.

FTP-Befehle

FTP besitzt einen umfangreichen Befehlssatz. Viele Befehle haben nahezu gleiche Funktionen mit teilweise minimalen Unterschieden bei der Ausgabe, da mehrere Befehlssätze ihren Ursprung in eigens für sie zugeschnittenen Plattformen haben. Eine Auswahl an wichtigen Befehlen sei an dieser Stelle angefügt und kurz erklärt:

  • ! - Betriebssystem-Fenster öffnen
  • ? - Lokale Hilfe
  • APPEND - Verknüpfen von lokaler und Server-Datei
  • ASCII - Stellt ASCII-Übertragungsmodus ein
  • BELL - Akustische Meldung, wenn Befehl ausgeführt ist
  • BINARY - Stellt Binär-Übertragungsmodus ein
  • BYE - Beenden der FTP-Sitzung und des Interpreters
  • CD - Wechseln des Verzeichnisses
  • CLOSE - Beenden der FTP-Sitzung
  • DELETE - Löschen einer Datei
  • DEBUG - Schaltet in den Debug-Modus
  • DIR - Verzeichnisinhalt anzeigen
  • DISCONNECT - Beenden der FTP-Sitzung
  • GET - Download einer Datei
  • GLOB - Umschalten zwischen normaler und erweiterter Zeichenanzeige
  • HASH - Grafische Anzeige der Übertragung (mit '#')
  • HELP - Lokale Hilfe
  • LCD - Wechseln des Verzeichnisses
  • LITERAL - Senden eines willkürlichen FTP-Befehls
  • LS - Verzeichnisinhalt anzeigen
  • MDELETE - Mehrere Dateien gleichzeitig löschen
  • MDIR - Verzeichnisinhalt inklusive Unterverzeichnisse anzeigen
  • MGET - Download mehrerer Dateien gleichzeitig
  • MKDIR - Erstellen eines Verzeichnisses
  • MLS - Verzeichnisinhalt inklusive Unterverzeichnisse anzeigen
  • MPUT - Upload mehrerer Dateien gleichzeitig
  • OPEN - Verbindung zu einem FTP-Server aufnehmen
  • PROMPT - Aktivieren von interaktiven Ausgaben bei Mehrfach-Befehlen
  • PUT - Upload einer Datei
  • PWD - Anzeigen des aktuellen Verzeichnisses
  • QUIT - Beenden der FTP-Sitzung und des Interpreters
  • QUOTE - Senden eines willkürlichen FTP-Befehls
  • RECV - Download einer Datei
  • REMOTEHELP - Hilfe des FTP-Servers anfordern
  • RENAME - Datei umbenennen
  • RMDIR - Verzeichnis entfernen
  • SEND - Upload einer Datei
  • STATUS - Anzeigen des aktuellen Status
  • TRACE - Schaltet in den Packet-Tracing-Modus
  • TYPE - Umschalten des Transfer-Typs
  • USER - Senden von neuen User-Informationen
  • VERBOSE - Umschalten in den ausführlichen Modus
WERBUNG
Zum Beginn dieser Seite