Das FTP-Protokoll (File Transfer Protocol) ist ein Netzwerkprotokoll zur Übertragung von Dateien zwischen einem Client und einem Server. Es funktioniert, indem zwei Verbindungen, ein Steuerkanal und ein Datenkanal, zwischen Client und Server aufgebaut werden. Der Steuerkanal dient zur Kommunikation von Befehlen und Antworten, während der Datenkanal für die eigentliche Dateiübertragung verwendet wird.
Hier ist ein detaillierterer Blick auf die Funktionsweise:
1. Aufbau der Verbindung:
Der Client stellt eine Verbindung zum FTP-Server her, üblicherweise über Port 21.
Diese Verbindung wird über den Steuerkanal aufgebaut, der für die Kommunikation von Befehlen und Antworten zuständig ist.
2. Authentifizierung:
Der Client muss sich am FTP-Server authentifizieren, indem er Benutzernamen und Passwort sendet (oder bei anonymem FTP keine Authentifizierung erforderlich ist).
3. Befehle und Antworten:
Der Client sendet Befehle an den Server über den Steuerkanal, z.B. zum Herunterladen, Hochladen, Löschen oder Umbenennen von Dateien.
Der Server antwortet mit Statuscodes auf die Befehle des Clients.
4. Datenübertragung:
Für die Datenübertragung wird ein zusätzlicher Datenkanal aufgebaut.
Der Datenkanal wird entweder im aktiven oder passiven Modus aufgebaut.
5. Dateiübertragung:
Der Client und der Server tauschen Dateien über den Datenkanal aus.
6. Beendigung der Verbindung:
Nach Abschluss der Dateiübertragung kann die Verbindung zum FTP-Server geschlossen werden.
Zusätzliche Informationen:
Aktiver vs. Passiver Modus:
Im aktiven Modus öffnet der Client einen zufälligen Port und teilt ihn dem Server mit, der dann eine Verbindung zu diesem Port herstellt.
Im passiven Modus öffnet der Server einen zufälligen Port und teilt ihn dem Client mit, der dann eine Verbindung zu diesem Port herstellt.
Sicherheit:
FTP war ursprünglich nicht für Sicherheit ausgelegt und sendet Anmeldedaten im Klartext.
Um dies zu vermeiden, gibt es sicherere Alternativen wie FTPS (FTP über SSL/TLS) oder SFTP (SSH File Transfer Protocol), die eine Verschlüsselung bieten.
Funktionen:
Mit FTP können Dateien hoch- und heruntergeladen, Verzeichnisse angelegt, verändert und gelöscht sowie die Datei- und Verzeichnisberechtigungen verwaltet werden.