Was ist FTP?

Das File Transfer Protocol (englisch für "Dateiübertragungsverfahren", kurz FTP), ist ein im RFC 959 spezifiziertes Netzwerkprotokoll zur Dateiübertragung über TCP/IP-Netzwerke. Es wird benutzt, um Dateien vom Server zum Client (Download), vom Client zum Server (Upload) oder clientgesteuert zwischen zwei Servern zu übertragen. Außerdem können mit FTP Verzeichnisse angelegt und ausgelesen, sowie Verzeichnisse und Dateien umbenannt oder gelöscht werden.

FTP verwendet für die Steuerung und Datenübertragung jeweils separate Verbindungen: Eine FTP-Sitzung beginnt, indem vom Client zum Control Port des Servers (der Standard-Port dafür ist Port 21) eine TCP-Verbindung aufgebaut wird. Über diese Verbindung werden Befehle zum Server gesendet. Der Server antwortet auf jeden Befehl mit einem Statuscode, oft mit einem angehängten, erklärenden Text. Die meisten Befehle sind allerdings erst nach einer erfolgreichen Authentifizierung zulässig. Zum Senden und Empfangen von Dateien sowie zur Übertragung von Verzeichnislisten wird pro Vorgang jeweils eine separate TCP-Verbindung verwendet. FTP kennt für den Aufbau solcher Verbindungen zwei Modi: Den Active Mode und den Passive Mode.

Viele FTP-Server, vor allem Server von Universitäten, Fachhochschulen und Mirrors, bieten so genanntes Anonymous FTP an. Hier ist zum Einloggen neben den realen Benutzerkonten ein spezielles Benutzerkonto, typischerweise "anonymous" und/oder "ftp", vorgesehen, für das kein (oder ein beliebiges) Kennwort angegeben werden muss. Zum "guten Ton" gehört jedoch, bei anonymem FTP seine eigene, gültige E-Mail-Adresse als Kennwort anzugeben.

Da FTP ein textbasiertes Protokoll ist, werden sowohl die Daten als auch die Authentifizierungsinformationen unverschlüsselt im Klartext übertragen. Daher sollte FTP bei vertraulichen Daten nicht für Datentransfers jenseits von Anonymous FTP eingesetzt werden. Alternativen, die dieses Problem lösen, sind u. a. Secure File Transfer Protocol (Secure FTP), Secure Copy (SCP) und SSH File Transfer Protocol (SFTP).