Anwendungen
Einführung
Verzeichnisse
Telnet, FTP...
HTTP
E-Mail
Sicherheit
Management
Unix & Windows

Hauptmenü
Startseite
Einführung
Daten übertragen
Datennetze
Transport
Info

Themen
Einführung
FTP
Telnet
FTP (File Transfer Protocol)

FTP steht für "File Transfer Protocol". Es ist ein grundlegendes Protokoll zur Übertragung von Dateien vom Client zum Server (upload) oder umgekehrt (download). Ein klassischer FTP-Client arbeitet mit einer Textschnittstelle. Er verbindet sich zunächst mit Port 21 des angewählten Servers und erhält von diesem einen Text mit einer Login-Anforderung geschickt. Der Client zeigt diese dem Benutzer an. Dieser gibt daraufhin sein Benutzerkürzel ein, woraufhin noch das Passwort abgefragt wird. Soweit funktioniert der FTP-Client noch wie ein Telnet-Client, wobei jedoch auf eine Terminal-Emulation verzichtet wird.

Nach der Anmeldung erhält der Benutzer eine rudimentäre Befehlsschnittstelle, die direkt vom FTP-Server bereitgestellt wird. Zudem wird als aktuelles Verzeichnis das Heimverzeichnis des angemeldeten Benutzers gesetzt.

Die wichtigsten Befehle sind:
cd <pfad>Verzeichnis wechseln
mkdir <name>Verzeichnis erstellen
pwdaktuellen Pfad anzeigen
dirVerzeichnisinhalt anzeigen

Jeder Befehl wird mit einer dreiziffrigen Statusnummer, meist mit beschreibendem Text dazu, quittiert. Ein CD-Befehl führt z.B. normalerweise zur Rückmeldung "200 Port Command Successful".

Zur Datenübertragung dienen folgende Befehle:
get <name>Datei vom Server holen
mget <name>mehrere Dateien vom Server holen. Der Name darf Wildcards enthalten
put <name>Datei zum Server hochladen
mput <name>mehrere Dateien zum Server hochladen
promptEinzelbestätigung bei mput und mget abschalten
binAuf binäre Übertragung umschalten

Normalerweise versucht FTP bei einer zu übertragenden Datei selbständig eine Konvertierung vom Quell- zum Zielbetriebssystem vorzunehmen, z.B. im Bezug auf die Zeilentrennzeichen (CR+LF bei Windows, CR beim Mac, LF bei Unix) oder Umlaute. Bei Binärdateien, z.B. Bildern oder Programmen wird dadurch die Datei zuverlässig zerstört. Deswegen darf der Befehl "bin" bei der Übertragung von Binärdateien nie vergessen werden!

Für die eigentliche Datenübertragung wird bei FTP pro übertragener Datei eine eigene TCP-Verbindung aufgebaut. Dies erledigt normalerweise der FTP-Server. Problematisch ist dies jedoch bei Clients, die sich hinter einer Firewall befinden. Diese kann nämlich unter Umständen die von außen kommende Verbindungsanforderung nicht zuordnen und weist sie ab. Deswegen wurde im Zuge der Entwicklung der WWW-Browser der sogenannte "Passiv-Modus" eingeführt, bei dem der Client auch die Datenverbindung initiiert.

Unter Windows nutzt man meist nicht mehr den kommandozeilenorientierten FTP-Client (obwohl er sich im MS-DOS-Fenster jederzeit mit "ftp " aufrufen ließe), sondern ein Programm, das eine grafische Oberfläche ähnlich dem Dateimanager oder Windows Explorer präsentiert. Hinter den Kulissen läuft dabei aber das ganz normale FTP-Protokoll ab. Auch die WWW-Browser können mit dem FTP-Protokoll umgehen. Durch Eingabe einer URL in der Form "ftp://ftp.domain.tld/pfad/dateiname" wird eine Datei direkt im Passiv-Modus von einem FTP-Server heruntergeladen. Dabei wird als Benutzername "anonymous" angegeben. Als Passwort sollte man dann normalerweise die E-Mail-Adresse angeben. Die Browser tun dies jedoch typischerweise nicht, da es serverseitig auch nicht überprüft wird und man so die unkontrollierte Weitergabe der E-Mail-Adresse vermeidet. Der Login als "anonymous" ist im FTP-Protokoll vorgesehen. Der Administrator muss dies serverseitig jedoch zulassen und kann dann entsprechende Zugriffsrechte vergeben, damit anonyme Benutzer kein Unheil anrichten können.