|
FTP im TCP/IP-Protokollstapel
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 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:
- Beim Aktiv Mode beginnt der Server auf Port 20 eine
Datenverbindung zum Client (Port > 1023) hin aufzubauen.
- 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, sondern sie können sich durch einfaches
Eingeben ihrer E-Mail-Adresse als Passwort auf dem Server
einloggen.
Beispiele für FTP-Clients:
Unter Windows
- Kommandozeilenversion: ftp
- Filezilla
- WS-FTP
- LeechFTP
- FlashFXP
- Unter Unix
Kommandozeilenversion: ftp hostname oder IP-Adresse
- kbear
- AxY FTP
- gFTP (Gnome)
Unter Mac OS X
- Fetch
- Captain FTP
- Anarchie
Fast alle Webbrowser haben ebenfalls FTP implementiert und können als Clients für den Download von Dateien benutzt werden.
Die gebräuchlichsten ftp-Kommandos:
- 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 all Rechte und kann zum Beispiel nur auf
bestimmte Verzeichnisse zugreifen. 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.
- 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.
Gängige Server sind:
- Webserver
- Proxyserver
- FTP-Server
- Mailserver
- Newsserver
- Fileserver
- Datenbankserver
- Authentifizierungsserver
- Print-Server
- Backup-Server
- Spieleserver
- Application Server
- Terminal Server
- DHCP- und Boot-Server
- Zertifikatsserver
- DNS-Server
|