Dateitransferprotokoll

Dateitransferprotokoll
Kommunikationsprotokoll
Zweck Datei Übertragung
Entwickler (en) Abhay Bhushan Für RFC 959
Einführung 16. April 1971; Vor 51 Jahren
Häfen) 21 zur Kontrolle, 20 für die Datenübertragung
RFC (s) RFC 959

Das Dateitransferprotokoll (Ftp) ist ein Standard Kommunikationsprotokoll verwendet für die Übertragung von Computerdateien von einem Server zu einem Client auf a Computernetzwerk. FTP basiert auf einem Client -Server -Modell Architektur mit separaten Steuerungs- und Datenverbindungen zwischen dem Client und dem Server.[1] FTP -Benutzer können sich mit a authentifizieren Klartext Anmeldeprotokoll, normalerweise in Form eines Benutzernamens und eines Kennworts, kann jedoch anonym eine Verbindung herstellen, wenn der Server so konfiguriert ist, dass dies zulässig ist. Für sichere Übertragung, die den Benutzernamen und das Passwort schützt und den Inhalt verschlüsselt, ist FTP häufig gesichert mit SSL/TLS (Ftps) oder ersetzt durch SSH -Dateiübertragungsprotokoll (SFTP).

Die ersten FTP -Clientanwendungen waren Befehlszeilenprogramme zuvor entwickelt Betriebssysteme hatte Grafische Benutzeroberflächenund werden immer noch mit den meisten versendet Fenster, Unix, und Linux Betriebssysteme.[2][3] Viele dedizierte FTP Kunden und Automatisierungsversorgungsunternehmen wurden seitdem entwickelt für DesktopsServer, mobile Geräte und Hardware sowie FTP wurden in Produktivitätsanwendungen wie z. HTML -Redakteure und Dateimanager.

Ein FTP -Client wurde früher häufig in integriert Internetbrowser, wo Dateiserver mit dem durchsucht werden Uri Präfix "ftp: //". Während 2021 haben die beiden großen Webbrowser -Anbieter diese Fähigkeit entfernt. Die Unterstützung für das FTP -Protokoll wurde im Januar 2021 erstmals in Google Chrome 88 deaktiviert.[4] gefolgt von Firefox 88.0 im April 2021.[5] Im Juli 2021 ließ Firefox 90 FTP vollständig fallen,[6] und Google folgte im Oktober 2021 und entfernen FTP vollständig in Google Chrome 95.[7]

Geschichte der FTP -Server

Die ursprüngliche Spezifikation für das Dateiübertragungsprotokoll wurde von geschrieben von Abhay Bhushan und veröffentlicht als RFC 114 am 16. April 1971. Bis 1980 lief FTP weiter NCPder Vorgänger von TCP/IP.[2] Das Protokoll wurde später durch eine TCP/IP -Version ersetzt. RFC 765 (Juni 1980) und RFC 959 (Oktober 1985), die aktuelle Spezifikation. Mehrere vorgeschlagene Standards ändern RFC 959, zum Beispiel RFC 1579 (Februar 1994) ermöglicht eine Firewall-freundliche FTP (passiver Modus), RFC 2228 (Juni 1997) schlägt Sicherheitsverlängerungen vor, RFC 2428 (September 1998) unterstützt Unterstützung für IPv6 und definiert eine neue Art von passivem Modus.[8]

Protokollübersicht

Kommunikations- und Datenübertragung

Illustration des Starts einer passiven Verbindung mit Port 21

FTP kann einlaufen aktiv oder passiv Modus, der bestimmt, wie die Datenverbindung hergestellt wird.[9] (Dieses Gefühl des "Modus" unterscheidet sich vom Befehl modus im FTP -Protokoll.

  • Im aktiven Modus beginnt der Client mit der Anhörung nach eingehenden Datenverbindungen vom Server auf Port M zu hören. Er sendet den FTP -Befehlsport m, um den Server darüber zu informieren, welcher Port er hört. Der Server initiiert dann einen Datenkanal an den Client aus dem Port 20, dem FTP -Server -Datenport.
  • In Situationen, in denen der Kunde hinter a steht Firewall und nicht in der Lage, eingehende TCP -Verbindungen zu akzeptieren, Passivmodus könnte genutzt werden. In diesem Modus verwendet der Client die Steuerverbindung, um einen PASV -Befehl an den Server zu senden, und empfängt dann eine Server -IP -Adresse und Server -Portnummer vom Server.[9] Mit welchem ​​Client wird eine Datenverbindung von einem beliebigen Client -Port zur Server -IP -Adresse und der empfangenen Serverportnummer geöffnet.[10]

Beide Modi wurden im September 1998 aktualisiert, um sie zu unterstützen IPv6. Weitere Änderungen wurden zu diesem Zeitpunkt in den passiven Modus eingeführt, um ihn zu aktualisieren erweiterter passiver Modus.[11]

Der Server reagiert über die Steuerverbindung mit Dreistellige Statuscodes in ASCII mit einer optionalen Textnachricht. Zum Beispiel bedeutet "200" (oder "200 OK"), dass der letzte Befehl erfolgreich war. Die Zahlen stellen den Code für die Antwort dar und der optionale Text stellt eine menschlich-lesbare Erklärung oder Anforderung dar (z. B. <Bedarf Konto für das Speichern von Dateien>).[1] Eine laufende Übertragung von Dateidaten über die Datenverbindung kann unter Verwendung einer Interrupt -Nachricht abgebrochen werden, die über die Steuerverbindung gesendet wurde.

FTP benötigt zwei Ports (eine zum Senden und eine zum Empfangen), da es ursprünglich für den Betrieb entwickelt wurde Netzwerkkontrollprogramm (NCP), was a war Simplex -Protokoll das benutzte zwei PortadressenAufbau von zwei Verbindungen für Zwei-Wege-Kommunikation. Ein seltsamer und gleichmäßiger Hafen war für jeden reserviert Anwendungsschicht Anwendung oder Protokoll. Die Standardisierung von TCP und UDP reduzierte die Verwendung von zwei Simplex -Ports für jede Anwendung auf einen Duplexanschluss.[12]: fünfzehn Das FTP -Protokoll wurde jedoch nie geändert, um nur einen Port zu verwenden, und setzte zwei für die Rückwärtskompatibilität fort.

Nat- und Firewall -Traversal

FTP überträgt normalerweise Daten, indem der Server nach dem Versenden des Befehls von Port vom Client wieder zum Client hergestellt wird. Dies ist für beide problematisch Nats und Firewalls, die keine Verbindungen aus dem Internet zu internen Hosts zulassen.[13] Für NATs besteht eine zusätzliche Komplikation darin, dass die Darstellung der IP -Adressen und der Portnummer im Befehl Port auf die IP -Adresse und den Port des internen Hosts und nicht die öffentliche IP -Adresse und den Port des NAT beziehen.

Es gibt zwei Ansätze, um dieses Problem zu lösen. Eine davon ist, dass der FTP -Client und der FTP -Server den Befehl PASV verwenden, wodurch die Datenverbindung vom FTP -Client zum Server hergestellt wird.[13] Dies wird von modernen FTP -Kunden häufig verwendet. Ein anderer Ansatz besteht darin, dass die NAT die Werte des Portbefehls mit einem verändert Gateway auf Anwendungsebene für diesen Zweck.[13]

Datentypen

Beim Übertragen von Daten über das Netzwerk werden vier Datentypen definiert:[2][3][8]

  • ASCII (Typ A): Wird für Text verwendet. Daten werden bei Bedarf von der Charakterdarstellung des Sendungshosts bis bei Bedarf konvertiert "8-Bit ASCII" Vor der Übertragung und (erneut, falls erforderlich) zur Charakterdarstellung des Empfangshosts. Infolgedessen ist dieser Modus für Dateien, die andere Daten als einfacher Text enthalten, unangemessen.
  • Bild (Typ I, allgemein genannt Binär Modus): Der Sendungsgerät sendet jede Datei sendet Byte von Byte und der Empfänger speichert die Bytestream wie es es erhält. (Der Bildmodusunterstützung wurde für alle Implementierungen von FTP empfohlen).
  • Ebcdic (Typ E): Wird für einfache Text zwischen Hosts verwendet, die den Ebcdic -Zeichensatz verwenden.
  • Lokal (Typ L n): Entwickelt, um die Dateiübertragung zwischen Maschinen zu unterstützen, die keine 8-Bit-Bytes verwenden, z. 36-Bit-Systeme wie dec PDP-10s. Beispielsweise wird "Typ L 9" verwendet, um Daten in 9-Bit-Bytes oder "Typ L 36" zu übertragen, um 36-Bit-Wörter zu übertragen. Die meisten zeitgenössischen FTP -Clients/Server unterstützen nur L 8, was I. entspricht.

Ein abgelaufener Internetentwurf definierte einen Typ u zum Übertragen Unicode Textdateien verwenden UTF-8;[14] Obwohl der Entwurf nie ein RFC wurde, wurde er von mehreren FTP -Clients/Servern implementiert.

Beachten Sie, dass diese Datentypen häufig als "Modi" bezeichnet werden, obwohl zweideutig das Wort verwendet wird, um sich auch auf den Kommunikationsmodus Active-VS-Passive zu beziehen (siehe oben), und die Modi, die vom Befehl ftp Protocol-Modus festgelegt werden (siehe unten).

Für Textdateien (Typ A und Typ E) werden drei verschiedene Formatsteuerungsoptionen bereitgestellt, um zu steuern, wie die Datei gedruckt werden würde:

  • Nichtabdruck (Typ A N und Typ E n)-Die Datei enthält keine für einen Drucker vorgesehenen Beförderungssteuerzeichen
  • Telnet (Typ A T und Typ E T) - Die Datei enthält Telnet (oder mit anderen Worten, ASCII C0) Wagensteuerungszeichen (CR, LF usw.)
  • ALS EIN (Geben Sie A A und Typ E A) - Die Datei enthält ASA -Wagensteuerzeichen

Diese Formate waren hauptsächlich relevant für Zeilendrucker; Die meisten zeitgenössischen FTP -Clients/Server unterstützen nur die Standardformatkontrolle von N.

Dateistrukturen

Die Dateiorganisation wird mit dem STRU -Befehl angegeben. Die folgenden Dateistrukturen sind in Abschnitt 3.1.1 von RFC959 definiert:

  • F oder Dateistruktur (streamorientiert). Dateien werden als willkürliche Abfolge von Bytes, Zeichen oder Wörtern angesehen. Dies ist die übliche Dateistruktur auf UNIX-Systemen und anderen Systemen wie CP/M, MS-DOS und Microsoft Windows. (Abschnitt 3.1.1.1)
  • R oder Aufzeichnungsstruktur (Datensatzorientierung). Dateien werden als unterteilt in Datensätze angesehen, die behoben oder variabler Länge sein können. Diese Dateiorganisation ist bei Mainframe- und Mitteltöner -Systemen wie MVS, VM/CMS, OS/400 und VMs üblich, die unterstützen rekordorientierte Dateisysteme.
  • P oder Seitenstruktur (Seitenorientierung). Dateien sind in Seiten unterteilt, die entweder Daten oder Metadaten enthalten können. Jede Seite kann auch einen Header haben, der verschiedene Attribute enthält. Diese Dateistruktur wurde speziell für für TEMEX Systeme und wird im Allgemeinen nicht auf anderen Plattformen unterstützt. RFC1123 Abschnitt 4.1.2.3 empfiehlt, dass diese Struktur nicht implementiert wird.

Die meisten zeitgenössischen FTP -Clients und Server unterstützen nur Stru F. Stru R in Mainframe- und Minicomputer -Dateiübertragungsanwendungen.

Datenübertragungsmodi

Die Datenübertragung kann in drei Modi durchgeführt werden:[1][2]

  • Stream -Modus (Modus S): Daten werden als kontinuierlicher Stream gesendet, wodurch FTP von einer Verarbeitung abgebaut wird. Vielmehr ist die gesamte Verarbeitung bis auf TCP. Es ist kein Indikator am Datei am Ende des Datei erforderlich, es sei denn Aufzeichnungen.
  • Blockmodus (Modus B): In erster Linie zum Übertragen von Datensatzdateien (STRU R) konzipiert, kann jedoch auch zum Übertragen von Textdateien streamorientierter (STRU F) verwendet werden. FTP stellt jede Datensätze (oder jede Datenlinie) von Daten in mehrere Blöcke (Blockheader, Byte -Anzahl und Datenfeld) ein und übergibt sie dann an TCP.[8]
  • Komprimierter Modus (Modus C): Erweitert den Modus B mit Datenkomprimierung mithilfe der Verwendung Kodierung der Lauflänge.

Die meisten zeitgenössischen FTP -Clients und -Invers implementieren den Modus B oder den Modus C nicht. FTP -Clients und Server für Mainframe- und Minicomputer -Betriebssysteme sind die Ausnahme.

Einige FTP -Software implementiert auch a Deflate-Basierendem komprimierter Modus, der nach dem Befehl manchmal als "Modus z" bezeichnet wird, der es ermöglicht. Dieser Modus wurde in einem beschrieben Internetentwurf, aber nicht standardisiert.[15]

Gridftp definiert zusätzliche Modi, Modus e[16] und Modus x,[17] als Erweiterungen des Modus B.

Zusätzliche Befehle

Neuere Implementierungen von FTP unterstützen die Fakten ändern: Änderungszeit (Mfmt) Befehl, mit dem ein Client dies anpassen kann Dateiattribut Remote, um die Erhaltung dieses Attributs beim Hochladen von Dateien zu aktivieren.[18][19]

Um einen Remotedatei -Zeitstempel abzurufen, gibt es da Mdtm Befehl. Einige Server (und Clients) unterstützen die nicht standardmäßige Syntax der Mdtm Befehl mit zwei Argumenten, die genauso funktionieren wie Mfmt[20]

Anmeldung

Das FTP -Login verwendet das normale Benutzername- und Kennwortschema, um Zugriff zu gewähren.[2] Der Benutzername wird mit dem Benutzerbefehl an den Server gesendet und das Passwort über den Befehl Pass gesendet.[2] Diese Sequenz ist "auf dem Draht" unverschlüsselt, und kann daher für ein Netzwerk anfällig sein Schnüffelnangriff.[21] Wenn die vom Client bereitgestellten Informationen vom Server akzeptiert werden, sendet der Server eine Begrüßung an den Client und die Sitzung beginnt.[2] Wenn der Server dies unterstützt, können sich Benutzer ohne Anmeldeinformationen anmelden, aber derselbe Server kann nur einen begrenzten Zugriff für solche Sitzungen genehmigen.[2]

Anonymous FTP

Ein Host, der einen FTP -Dienst anbietet, kann bieten anonym FTP -Zugang.[2] Benutzer melden sich in der Regel mit einem „Anonymous“ (niedrigerer Fall und Fallempfindlichkeit in einigen FTP-Servern) an, wenn sie für den Benutzernamen aufgefordert werden. Obwohl Benutzer häufig gebeten werden, ihre zu senden Email Adresse anstelle eines Passworts,[3] An den gelieferten Daten wird tatsächlich keine Überprüfung durchgeführt.[22] Viele FTP -Hosts, deren Ziel es ist, Software -Updates bereitzustellen, ermöglichen anonyme Anmeldungen.[3]

Unterschiede von HTTP

Http Behebt die Fehler in FTP im Wesentlichen, die es unpraktisch gemacht haben, für viele kleine kurzlebige Übertragungen zu verwenden, wie es auf Webseiten typisch ist.

FTP verfügt über eine staatliche Kontrollverbindung, die ein aktuelles Arbeitsverzeichnis und andere Flags beibehält, und für jede Übertragung ist eine sekundäre Verbindung erforderlich, durch die die Daten übertragen werden. Im "passiven" Modus stammt diese sekundäre Verbindung von Client zu Server, während diese Verbindung im Standard "Active" -Modus von Server zu Client ist. Diese offensichtliche Umkehrung im aktiven Modus und zufällige Portnummern für alle Transfers ist der Grund, warum Firewalls und NAT -Gateways mit FTP eine so schwere Zeit haben. Http ist staatenlos und multiplexe steuern und Daten über eine einzelne Verbindung vom Client zu Server auf bekannten Portnummern, die trivial durch NAT Gateways geleitet und für die Verwaltung von Firewalls einfach sind.

Das Einrichten einer FTP-Steuerungsverbindung ist aufgrund der Rückfahrverzögerung beim Senden aller erforderlichen Befehle und Warten auf Antworten sehr langsam. -EINFACH Die Sitzung jedes Mal neu. Im Gegensatz dazu hat HTTP die Verbindung nach jeder Übertragung ursprünglich fallen, da dies so billig war. Während HTTP anschließend die Möglichkeit gewonnen hat, die TCP -Verbindung für mehrere Überweisungen wiederzuverwenden, besteht das konzeptionelle Modell immer noch unabhängiger Anfragen und nicht von einer Sitzung.

Wenn FTP über die Datenverbindung übertragen wird, ist die Steuerverbindung im Leerlauf. Wenn die Übertragung zu lang dauert, kann die Firewall oder die NAT entscheiden, dass die Steuerverbindung tot ist und nicht mehr verfolgt, um die Verbindung effektiv zu brechen und den Download zu verwirren. Die einzelne HTTP-Verbindung ist nur zwischen Anfragen im Leerlauf und ist normal und erwartet, dass solche Verbindungen nach einer Auszeit fallen.

Software-Unterstützung

Webbrowser

Am gebräuchlichsten Internetbrowser Kann Dateien abrufen, die auf FTP -Servern gehostet werden, obwohl sie möglicherweise keine Protokollverlängerungen wie z. Ftps.[3][23] Wenn ein FTP - anwesend als ein HTTP -URL Es wird geliefert, der zugängliche Inhalt auf dem Remote -Server wird auf eine Weise angezeigt, die dem für andere Webinhalte verwendet wird. Fireftp ist eine Browsererweiterung, die als FTP-Client mit vollem Funktionsgeschäft entworfen wurde. Sie kann innerhalb des Innens ausgeführt werden Feuerfuchs in der Vergangenheit, aber es wird jetzt empfehlen, mit zu arbeiten Waterfox.

Google Chrome hat die FTP -Unterstützung vollständig in Chrome 88 entfernt.[24] Ab 2019 diskutierte Mozilla Vorschläge, einschließlich der Entfernung der Unterstützung alter FTP -Implementierungen, die nicht mehr verwendet werden, um ihren Code zu vereinfachen.[25][7] Im April 2021 veröffentlichte Mozilla Firefox 88.0, was die FTP -Unterstützung standardmäßig deaktivierte.[26] Im Juli 2021 ließ Firefox 90 die FTP -Unterstützung vollständig fallen.[6]

Syntax

Die FTP -URL -Syntax wird in beschrieben RFC 1738, die Form nehmen: ftp: // [user [: password]@] host [: port]/url-pad (Die klammernden Teile sind optional).

Beispiel myFile.txt aus dem Verzeichnis Mydirectory auf dem Server public.ftp-servers.example.com Als FTP -Ressource. Die URL ftp: // user001: [email protected]/mydirectory/myfile.txt fügt eine Spezifikation des Benutzernamens und des Kennworts hinzu, mit dem zum Zugriff auf diese Ressource zugegriffen werden muss.

Weitere Details zum Angeben eines Benutzernamens und eines Kennworts finden Sie in der Dokumentation der Browser (z. B.,,. Feuerfuchs[27] und Internet Explorer[28]). Standardmäßig verwenden die meisten Webbrowser den PASV-Modus (PASV), der leichter Endbenutzer-Firewalls durchquert.

Es gab eine gewisse Variation darin, wie unterschiedliche Browser in Fällen, in denen ein Nicht-Root-Heimverzeichnis für einen Benutzer vorliegt, die Pfadauflösung behandelt.[29]

Download-Manager

Am gebräuchlichsten Laden Sie Manager herunter Kann Dateien empfangen, die auf FTP -Servern gehostet werden, während einige von ihnen auch die Schnittstelle zum Abrufen der auf FTP -Server gehosteten Dateien geben. Downloadstudio Ermöglicht nicht nur eine Datei von FTP Server herunterladen, sondern auch die Liste der Dateien auf einem FTP -Server anzeigen.[30]

Sicherheit

FTP wurde nicht als sicheres Protokoll ausgelegt und hat viele Sicherheitsschwächen.[31] Im Mai 1999 die Autoren von RFC 2577 listete eine Anfälligkeit für die folgenden Probleme auf:

FTP verschlüsselt seinen Verkehr nicht; Alle Übertragungen befinden sich im klaren Text, und Benutzernamen, Passwörter, Befehle und Daten können von jedem gelesen werden, der die Paketaufnahme ausführen kann (erfasst (schnüffeln) auf dem Netzwerk.[2][31] Dieses Problem ist vielen der Spezifikationen des Internet -Protokolls üblich (wie z. SMTP, Telnet, POP und IMAP), die vor der Schaffung von Verschlüsselungsmechanismen entworfen wurden, wie z. Tls oder SSL.[8]

Gemeinsame Lösungen für dieses Problem sind:

  1. Verwenden der sicheren Versionen der unsicheren Protokolle, z. B.,, Ftps anstelle von ftp und tellnets anstelle von telnet.
  2. Verwenden eines anderen, sichereren Protokolls, das den Job erledigen kann, z. SSH -Dateiübertragungsprotokoll oder Sichern Sie das Kopierprotokoll.
  3. Mit einem sicheren Tunnel wie z. Sichere Schale (Ssh) oder virtuelles privates Netzwerk (VPN).

FTP über SSH

FTP über SSH ist das Tunneln einer normalen FTP -Sitzung über eine sichere Shell -Verbindung.[31] Weil FTP mehrere verwendet TCP Verbindungen (ungewöhnlich für ein TCP/IP -Protokoll, das noch verwendet wird) ist besonders schwierig, über SSH abzutuneln. Bei vielen SSH-Kunden schützt der Versuch, einen Tunnel für den Steuerkanal (die anfängliche Kunden-Server-Verbindung auf Port 21) einzurichten, nur diesen Kanal. Wenn Daten übertragen werden, legt die FTP -Software an beiden Enden neue TCP -Verbindungen (Datenkanäle) ein und haben daher keine Vertraulichkeit oder Integritätsschutz.

Andernfalls ist es erforderlich, dass die SSH -Client -Software über spezifische Kenntnisse des FTP -Protokolls verfügt, um FTP -Steuerungskanalnachrichten zu überwachen und neu zu schreiben und neu zu öffnen Paketweiterungen Für FTP -Datenkanäle. Softwarepakete, die diesen Modus unterstützen, umfassen:

Derivate

Ftps

Explicit FTPS ist eine Erweiterung des FTP -Standards, mit dem Clients die Anfrage von FTP -Sitzungen anfordern können, um verschlüsselt zu werden. Dies geschieht durch Senden des Befehls "auth tls". Der Server hat die Möglichkeit, Verbindungen zuzulassen oder zu verweigern, die keine TLS anfordern. Diese Protokollverlängerung ist in definiert in RFC 4217. Implizite FTPS ist ein veralteter Standard für FTP, der die Verwendung einer SSL- oder TLS -Verbindung erforderte. Es wurde angegeben, verschiedene Ports als einfache FTP zu verwenden.

SSH -Dateiübertragungsprotokoll

Das SSH -Dateitransferprotokoll (chronologisch die zweite der beiden Protokolle SFTP) überträgt Dateien und verfügt über einen ähnlichen Befehlssatz für Benutzer, verwendet jedoch die Sichere Schale Protokoll (SSH) zum Übertragen von Dateien. Im Gegensatz zu FTP verschlüsselt es sowohl Befehle als auch Daten, wodurch verhindern, dass Passwörter und vertrauliche Informationen offen über das Netzwerk übertragen werden. Es kann nicht mit der FTP -Software zusammenarbeiten, obwohl einige FTP -Client -Software auch Unterstützung für das SSH -Dateitransferprotokoll bietet.

Triviales Dateiübertragungsprotokoll

Trivial File Transfer Protocol (TFTP) ist eine einfache FTP mit Sperre-Step-FTP, mit der ein Client eine Datei von einer Datei auf einen Remote-Host abruft oder. Eine seiner Hauptnutzungen liegt in den frühen Stadien von Booten aus einem örtlichen Netzwerk, weil TFTP sehr einfach zu implementieren ist. TFTP fehlt die Sicherheit und die meisten erweiterten Funktionen, die von robusteren Dateiübertragungsprotokollen wie dem Dateiübertragungsprotokoll angeboten werden. TFTP wurde erstmals 1981 standardisiert und die aktuelle Spezifikation für das Protokoll kann in gefunden werden RFC 1350.

Einfaches Dateiübertragungsprotokoll

Einfaches Dateiübertragungsprotokoll (das erste Protokoll -Abkürzung SFTP), wie definiert von RFC 913, wurde als (ungesicherter) Dateiübertragungsprotokoll mit einem Grad an Komplexität zwischen TFTP und FTP vorgeschlagen. Es wurde nie weithin auf dem akzeptiert Internetund wird nun von der historischen Status zugewiesen Ietf. Es läuft durch Port 115 und erhält oft den Initialismus von Sftp. Es verfügt über einen Befehlssatz von 11 Befehlen und unterstützt drei Arten von Datenübertragung: ASCII, binär und kontinuierlich. Für Systeme mit a Wortgröße Das ist ein Vielfaches von 8 Bits, die Implementierung von Binär und kontinuierlich ist gleich. Das Protokoll unterstützt auch die Anmeldung mit Benutzer -ID und Kennwort, hierarchischen Ordnern und Dateiverwaltung (einschließlich der Dateiverwaltung umbenennen, löschen, Hochladen, Download, Download mit überschreibend, und Download mit Append).

FTP -Befehle

FTP -Antwortcodes

Unten ist eine Zusammenfassung von FTP -Antwortcodes Das kann von einem FTP zurückgegeben werden Server. Diese Codes wurden in standardisiert RFC 959 von der IETF. Der Antwortcode ist ein dreistelliger Wert. Die erste Ziffer wird verwendet, um eines von drei möglichen Ergebnissen anzuzeigen - Erfolg, Misserfolg oder einen Fehler oder eine unvollständige Antwort:

  • 2YZ - Erfolgs Antwort
  • 4yz oder 5yz - Versagensantwort
  • 1yz oder 3yz - Fehler oder unvollständige Antwort

Die zweite Ziffer definiert die Art des Fehlers:

  • X0Z - Syntax. Diese Antworten beziehen sich auf Syntaxfehler.
  • X1Z - Informationen. Antworten auf Anfragen nach Informationen.
  • X2Z - Verbindungen. Antworten auf die Steuerungs- und Datenverbindungen.
  • X3Z - Authentifizierung und Buchhaltung. Antworten auf den Anmeldungsprozess und die Rechnungslegungsverfahren.
  • x4z - nicht definiert.
  • X5Z - Dateisystem. Diese Antworten Relay -Statuscodes aus dem Serverdateisystem.

Die dritte Ziffer des Antwortcodes wird verwendet, um zusätzliche Details für jede der durch die zweiten Ziffer definierten Kategorien anzugeben.

Siehe auch

Verweise

  1. ^ a b c Forouzan, B.A. (2000). TCP/IP: Protokollsuite (1. Aufl.). Neu-Delhi, Indien: Tata McGraw-Hill Publishing Company Limited.
  2. ^ a b c d e f g h i j Kozierok, Charles M. (2005). "Die TCP/IP -Handbuch v3.0". TcpipGuide.com.
  3. ^ a b c d e Dean, Tamara (2010). Netzwerk+ Handbuch zu Netzwerken. Delmar. S. 168–171.
  4. ^ "Abschreibungen und Umbauten in Chrome 87". Abgerufen 18. November 2020.
  5. ^ "Firefox 88.0, siehe alle neuen Funktionen, Updates und Korrekturen". Abgerufen 23. April 2021.
  6. ^ a b Vonau, Manuel (7. Juli 2021). "Firefox folgt in Chromes Fußstapfen und Drops FTP Support (APK Download)". Android Police. Abgerufen 12. Juli 2021.{{}}: CS1 Wartung: URL-Status (Link)
  7. ^ a b "FTP -Unterstützung entfernen - Chrome -Plattformstatus". www.chromestatus.com. Abgerufen 2. September 2021.
  8. ^ a b c d Clark, M.P. (2003). Datennetzwerke IP und das Internet (1. Aufl.). West Sussex, England: John Wiley & Sons Ltd.
  9. ^ a b "Active FTP vs. Passive FTP, eine endgültige Erklärung". SlackSite.com.
  10. ^ RFC 959 (Standard) Dateiübertragungsprotokoll (FTP). Postel, J. & Reynolds, J. (Oktober 1985).
  11. ^ RFC 2428 (Vorgeschlagene Standard) Erweiterungen für IPv6-, NAT- und erweiterte passive Modus. Allman, M. & Metz, C. & Ostermann, S. (September 1998).
  12. ^ Stevens, W. Richard (1994). TCP/IP illustriertes Volumen i. Vol. 1. Reading, Massachusetts, USA: Addison-Wesley Publishing Company. ISBN 0-201-63346-9.
  13. ^ a b c Gleason, Mike (2005). "Das Dateiübertragungsprotokoll und Ihre Firewall/nat". Ncftp.com.
  14. ^ Klensin, John. FTP -Typerweiterung für internationalisierten Text. I-D Draft-Klensin-Fftpext-Typ-00. Abgerufen 9. Juni 2020.
  15. ^ Preston, J. (Januar 2005). Deflate -Übertragungsmodus für FTP. Ietf. I-D Draft-Preston-Fftpext-Deflate-03. Abgerufen 27. Januar 2016.
  16. ^ Allcock, W. (April 2003). "Gridftp: Protokollverlängerungen zu FTP für das Raster" (PDF).
  17. ^ Mandrichenko, I. (4. Mai 2005). "Gridftp V2 -Protokollbeschreibung" (PDF).
  18. ^ "MFMT FTP -Befehl". Support.SolarWinds.com. 11. Oktober 2018.
  19. ^ "FTP-Befehle: DSIZ, MFCT, MFMT, AVBL, PASS, XPWD, XMKD | Serv-U". www.serv-u.com.
  20. ^ "MDTM FTP -Befehl". Support.SolarWinds.com. 11. Oktober 2018.
  21. ^ Prinz, Brian. "Sollten Organisationen für Sicherheit in den Ruhestand gehen?". Sicherheitswoche. Sicherheitswoche. Abgerufen 14. September 2017.
  22. ^ RFC 1635 (Information) Wie man anonyme FTP verwendet. P. & Emtage, A. & Marine, A. (Mai 1994).
  23. ^ Matthews, J. (2005). Computernetzwerk: Internetprotokolle in Aktion (1. Aufl.). Danvers, MA: John Wiley & Sons Inc.
  24. ^ Sneddon, Joey (26. Januar 2021). "Linux Release Roundup: GParted, Lightworks, Google Chrome + More". omgubuntu.co.uk. Abgerufen 30. Januar 2021.
  25. ^ "1574475 - FTP -Unterstützung entfernen".
  26. ^ "Sehen Sie, was neu in Firefox ist: 88.0 Firefox Release". Mozilla.org. 19. April 2021. Abgerufen 20. April 2021.
  27. ^ "Zugriff auf FTP -Server | Wie man Firefox hilft". Support.mozilla.com. 5. September 2012. Abgerufen 16. Januar 2013.
  28. ^ "So geben Sie das FTP -Site -Passwort in Internet Explorer ein". Archiviert vom Original am 2. Juli 2015. Abgerufen 13. Februar 2020.{{}}: CS1 Wartung: Bot: Original -URL -Status unbekannt (Link) Geschrieben für IE -Versionen 6 und früher. Könnte mit neueren Versionen funktionieren.
  29. ^ Jukka „Yucca“ Korpela (18. September 1997). "FTP -URLs". "It and Communication" (jkorpela.fi). Abgerufen 26. Januar 2020.
  30. ^ "DownloadStudio - Internet -Download -Manager und Download Accelerator - Funktionen". Konziva. Abgerufen 19. Oktober 2021.
  31. ^ a b c "Sicherung von FTP mit SSH". Nurdletech.com.
  32. ^ "Komponenten der Informationssicherungsplattform (Abschnitt Tectia ConnectSecure)". ssh.com. Archiviert von das Original am 31. Juli 2020.

Weitere Lektüre

  • RFC 697 - CWD -Befehl von FTP. Juli 1975.
  • RFC 959 - (Standard) Dateiübertragungsprotokoll (FTP). J. Postel, J. Reynolds. Oktober 1985.
  • RFC 1579 -(Informations-) Firewall-freundliche FTP. Februar 1994.
  • RFC 1635 - (Information) Wie man anonyme FTP verwendet. Mai 1994.
  • RFC 1639 - FTP -Operation über große Adressdatensätze (Foobar). Juni 1994.
  • RFC 1738 - Einheitliche Ressourcenlokatoren (URL). Dezember 1994.
  • RFC 2228 - (vorgeschlagener Standard) FTP -Sicherheitsweiterungen. Oktober 1997.
  • RFC 2389 - (vorgeschlagener Standard) Feature -Verhandlungsmechanismus für das Dateitransferprotokoll. August 1998.
  • RFC 2428 - (vorgeschlagene Standard) Erweiterungen für IPv6-, NAT- und erweiterte passive Modus. September 1998.
  • RFC 2577 - (Informations-) FTP -Sicherheitsüberlegungen. Mai 1999.
  • RFC 2640 - (Vorgeschlagene Standard) Internationalisierung des Dateiübertragungsprotokolls. Juli 1999.
  • RFC 3659 - (vorgeschlagene Standard) Erweiterungen zu FTP. P. hethmon. März 2007.
  • RFC 5797 - (vorgeschlagener Standard) FTP -Befehls- und Erweiterungsregister. März 2010.
  • RFC 7151 - (vorgeschlagener Standard) Dateiübertragungsprotokoll -Hostbefehl für virtuelle Hosts. Marz 2014.
  • IANA FTP -Befehle und -verlängerungsregister - Das offizielle Register der FTP -Befehle und -Anweiterungen

Externe Links