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.