Die Kommunikation von Menschen und Geräten über das Internet und anderen Netzwerken funktioniert über Protokolle. Diese legen quasi die Gesprächsregeln fest: Wer muss wann welche Informationen verschicken? Was passiert, wenn die Daten den Empfänger nicht erreichen? Wie schützt man die Übertragung vor Störungen und Spionage? Immer dann, wenn wir im Internet unterwegs sind, werden solche Protokolle – aus dem OSI-Modell – durchgängig eingesetzt. Sehr bekannt sind HTTP und HTTPS, mit denen in der Regel Webseiten aufgerufen werden. Ein weiteres wichtiges Protokoll ist FTP. Wofür wird dieses eingesetzt?

Wofür braucht man das File Transfer Protocol?

Das File Transfer Protocol (FTP) ist eines der ältesten Protokolle des Internets. Bereits seit 1974 arbeitet man mit der Technik zur Übertragung von kompletten Dateien. 1985 hat man FTP schließlich im RFC 959 exakt definiert. Das Protokoll ist dafür gedacht, mit Befehlen Downloads und Uploads auszulösen. So kann man Dateien von dem eigenen Gerät (PC, Smartphone usw.) auf einen Server übertragen – und umgekehrt: Per FTP können Dateien auch vom Server auf das Gerät heruntergeladen werden.

Dabei steht dem Nutzer ein Dateimanagementsystem zur Verfügung, dass man so auch aus dem Betriebssystem kennt. Dateien lassen sich in Ordnern ablegen, die wiederum in anderen Ordnern liegen dürfen. Dadurch ergibt sich eine hierarchische Verzeichnisstruktur.

Das File Transfer Protocol kommt häufig beim Erstellen von Websites zum Einsatz. Über den FTP-Zugang können HTML-Dateien auf den Server übertragen werden. Außerdem können Betreiber von Websites Mediendateien für Besucher der Homepage bereitstellen.

Wie funktioniert FTP?

Das File Transfer Protocol läuft innerhalb der Anwendungsschicht des TCP/IP-Protokollstapels. Damit liegt es auf der gleichen Schicht wie HTTP oder POP. Diese Protokolle zeichnen sich dadurch aus, dass sie mit Programmen wie Browsern oder E-Mail-Clients zusammenarbeiten, um ihre Dienste durchzuführen. Auch für das File Transfer Protocol gibt es spezielle FTP-Programme.

In der Regel bestehen diese Programme aus zwei Bereichen: Auf der einen Seite wird die lokale Verzeichnisstruktur mit allen Dateien der Festplatte dargestellt. Die andere Seite zeigt den Speicherbereich des Servers, die dort liegenden Dateien und Ordner. Die Software ermöglicht es dem Nutzer, Dateien zwischen den beiden Bereichen hin- und herzuschieben. Praktisch lassen sich inzwischen aber auch Browser oder die Kommandozeile des Betriebssystems für FTP einsetzen.

Bei einer FTP-Verbindung werden zwei Kanäle geöffnet. Zunächst bauen Client und Server einen Steuerkanal über Port 21 auf. Hierüber sendet der Client Befehle an den Server und dieser gibt Statuscodes zurück. Anschließend können beide Kommunikationsteilnehmer den Datenkanal aufbauen. Hier werden dann die ausgewählten Dateien transportiert. Das Protokoll achtet währenddessen auf Fehler. Sollte eine Verbindung während der Übertragung abgebrochen werden, kann der Transport nach Wiederherstellung des Kontakts wiederaufgenommen werden.

Man unterscheidet aktives von passivem FTP: Bei der aktiven Variante baut der Client die Verbindung wie beschrieben über Port 21 auf und teilt dem Server so mit, über welchen clientseitigen Port der Server seine Antworten übermitteln kann. Wenn der Client allerdings durch eine Firewall geschützt ist, kann der Server keine Antworten senden, da alle externen Verbindungen geblockt werden. Dafür hat man den passiven Modus entwickelt. Hierbei gibt der Server einen Port bekannt, über den der Client den Datenkanal aufbauen kann. Da der Client bei dieser Methode die Verbindung initiiert, blockt die Firewall den Transfer nicht ab.

Das File Transfer Protocol kennt verschiedene Befehle und Statuscodes. Mit den insgesamt 32 Befehlen – von denen nicht immer alle auch beim Server implementiert sind – weist die Clientseite die Serverseite an, Dateien hoch- oder runterzuladen, Verzeichnisse zu organisieren oder Dateien zu löschen. Der Server antwortet jeweils mit einem Statuscode, der Aufschluss darüber gibt, ob der Befehl erfolgreich umgesetzt werden konnte.

Für gewöhnlich benötigt man Zugangsdaten, um FTP bei einem Server nutzen zu können. Es gibt aber auch die Möglichkeit, dass ein Server Anonymous FTP anbietet. Der Betreiber des Servers ermöglicht dann jedem Benutzer, Dateien per FTP auf den Server zu schieben oder von dort herunterzuladen – ohne dafür ein Passwort benutzen zu müssen. Da mit einem solchen öffentlichen FTP-Server Sicherheitsrisiken einhergehen, sind die Möglichkeiten für Nutzer meist beschränkt.

Sicherheit bei FTP

Das ursprüngliche File Transfer Protocol wurde ohne Sicherheitsvorkehrungen geschaffen. Zur Zeit der Entwicklung war das Internet noch sehr klein und Cyberkriminalität existierte nicht. Inzwischen sind mit dem Einsatz von FTP aber zahlreiche Sicherheitsrisikos verbunden, da alle Informationen komplett unverschlüsselt übertragen werden. Deshalb hat man zwei sicherere Varianten entwickelt, die seitdem in Konkurrenz zueinander stehen: FTPS und SFTP. Bei der ersten Variante handelt es sich um FTP über SSL. Die Verbindung wird also in Kombination mit Secure Socket Layers (SSL) bzw. Transport Layer Security (TLS) hergestellt. Dabei findet der Datenaustausch verschlüsselt statt.

SSH File Transfer Protocol (SFTP) hingegen verwendet die Secure Shell (SSH) für die sichere Übertragung von Dateien. Auch hierbei ist die Verbindung verschlüsselt. Doch während FTPS zwei Verbindungen benötigt, kommt SFTP mit nur einer aus. Dafür muss man allerdings ein zusätzliches Programm verwenden.

Quelle: https://www.ionos.at/digitalguide/server/knowhow/ftp-file-transfer-protocol/