Zum Inhalt springen

File Transfer Protocol

aus Wikipedia, der freien Enzyklopädie
Dies ist eine alte Version dieser Seite, zuletzt bearbeitet am 10. Juni 2004 um 15:57 Uhr durch Burned (Diskussion | Beiträge) (Beispiele für FTP-Clients:: Mac-Clients verlinkt). Sie kann sich erheblich von der aktuellen Version unterscheiden.


FTP im TCP/IP-Protokollstapel
Anwendung FTP
Transport TCP
Netzwerk IP
Netzzugang Ethernet Token
Ring
FDDI ...


FTP steht für File Transfer Protocol, was im Deutschen in etwa Dateiübertragungsverfahren bedeutet.

Allgemeines

Dieses Netzwerk-Protokoll wird benutzt, um Dateien in TCP/IP-Netzwerken zwischen einem Server und einem FTP Client auszutauschen (Download (Server-->Client)). Das Protokoll kann aber auch zum Upload (Client-->Server) benutzt werden. Es ist in RFC 959 definiert. Im Gegensatz zu dem Protokoll sftp werden alle Daten, also auch das Kennwort, unverschlüsselt übertragen. FTP ist der Nachfolger des TFTP Protokolls.

FTP benutzt zwei Ports, nämlich den data-Port 20 zur Datenübertragung und den command- oder control-Port 21 zur Befehlsübertragung. Es kennt zwei unterschiedliche Übertragungsmodi. In beiden Fällen initiiert der Client auf Port 21 des FTP-Servers die Verbindung:

  1. Beim Aktiv Mode beginnt der Server auf Port 20 eine Datenverbindung zum Client (Port > 1023) hin aufzubauen.
  2. Beim Passiv Mode beginnt der Client eine Datenverbindung zum Server hin aufzubauen. Auf beiden Seiten wird ein Port > 1023 benutzt. Der Port 20 wird in diesem Fall nicht gebraucht.

Der Vorteil des weitverbreiteten und standardisierten FTP-Protokolls ist, dass Computer trotz komplett verschiedener Betriebssysteme, wie etwa Unix und Windows, untereinander Dateien austauschen können. Ein Nachteil ist, dass Passwörter und sonstige Daten unverschlüsselt, also in Klartext übermittelt werden.

Viele FTP-Server erlauben so genanntes "anonymous ftp". Das heißt, Benutzer brauchen kein Benutzerkonto auf dem Server. Als Benutzername muss anonymous eingegeben werden, als Passwort ist eine beliebige Eingabe möglich.

Beispiele für FTP-Clients:

  • Unter Unix
    • Kommandozeilenversion: ftp hostname oder IP-Adresse
    • kbear
    • AxY FTP
    • gFTP (Gnome)

Fast alle Webbrowser haben ebenfalls FTP implementiert und können als Clients für den Download von Dateien benutzt werden. Beispiel-URL für FTP: ftp://ftp.rfc-editor.org/

Der Benutzername und das Passwort können auch direkt in die URL eingebaut werden: ftp://login:password@ftp.rfc-editor.org

Die gebräuchlichsten ftp-Kommandos

Die gebräuchlichsten Kommandos des Kommandozeilenprogramms "ftp", welches FTP auf der Client-Seite versteht. (Bei einem grafischen FTP Programm funktioniert die Bedienung auf Klick.)

Befehl Beschreibung
open Öffnet eine Verbindung zum Server
user Definiert den User, der sich einloggen will. Fast immer kann hier anonymous angegeben werden, um eine anonyme Verbindung herzustellen. Da der User in diesem Fall dem Server nicht bekannt ist, hat er normalerweise auch nicht alle Rechte und kann zum Beispiel nur auf bestimmte Verzeichnisse zugreifen. Als Passwort ist hier eine beliebige Eingabe möglich.Diese Art der Verbindung wird als Anonymous-ftp bezeichnet.
close Beendet eine Verbindung zum Server.
cd Wechselt in ein anderes Verzeichnis auf dem ftp-Server. Statt "\" wie unter DOS und Windows wird als Trennzeichen der normale Schrägstrich "/" (Unix-Konvention) verwendet.
lcd Wechselt in ein anderes Verzeichnis auf dem Lokalen System.
list Fordert das Ergebnis eines Verzeichnisdurchsuchung auf. Es können auch das zu durchsuchende Verzeichnis und ein Suchmuster angegeben werden.
get Kopiert eine Datei vom Server auf den lokalen Rechner. Das Kopieren funktioniert aber nur, wenn man Leserechte auf dem Server hat.
put Kopiert eine Datei vom lokalen Rechner auf den Server. Funktioniert aber nur, wenn man Schreibrechte auf dem Server hat. Viele Server stellen für diesen Zweck ein incoming-Verzeichnis zur Verfügung, in das Dateien abgelegt werden dürfen.
mget Kopiert eine oder mehrere Dateien vom Server auf den lokalen Rechner. Vor jedem Kopiervorgang wird die Datei angezeigt und der Anwender gefragt, ob diese übertragen werden soll. Dies kann man mit dem ftp-Kommando "prompt" ab- und anschalten. Das Kopieren funktioniert aber nur, wenn man Leserechte auf dem Server hat.
mput Kopiert eine oder mehrere Dateien vom lokalen Rechner auf den Server. Vor jedem Kopiervorgang wird die Datei angezeigt und der Anwender gefragt, ob diese übertragen werden soll. Dies kann man mit dem ftp-Kommando "prompt" ab- und anschalten.

Das Kopieren funktioniert aber nur, wenn man Schreibrechte auf dem Server hat. Viele Server stellen für diesen Zweck ein incoming-Verzeichnis zur Verfügung, in das Dateien abgelegt werden dürfen.

prompt Damit kann man die Rückfragen bei dem Kommandos mget und mput an- oder abschalten.
mkdir Erzeugt ein neues Verzeichnis auf dem Server
delete Löscht eine Datei auf dem Server.
mdelete Löscht mehrere Dateien über eine Maske
rename Mit dieser Funktion können Dateien und Verzeichnisse auf dem Server umbenannt werden.

Vorlage:WikiReader Internet