È necessario distinguere però tra FTP attivo e passivo. Nella variante attiva è il client a stabilire la connessione, come spiegato, attraverso la porta 21 e a comunicare al server su quale porta lato cliente questo può inviare la propria risposta. Ma se il client è protetto da un firewall, allora il server non potrà inviare alcuna risposta in quanto tutte le connessioni esterne sono bloccate. Proprio per questi casi è stata sviluppata una modalità passiva, che prevede che sia il server a rendere nota la porta tramite la quale il client può creare il canale dati. In questo modo, essendo il client a iniziare la connessione, il firewall non blocca il trasferimento dei dati.
Il File Transfer Protocol dispone di vari comandi e codici di stato. Grazie a ben 32 comandi totali - non sempre necessariamente tutti implementati dal server - il client istruisce il server su qual è l’operazione desiderata: caricare o scaricare file, organizzare cartelle, o cancellare file. Il server risponde ogni volta con un codice di stato che serve a informare se il comando può essere eseguito o meno con successo.
Solitamente si necessitano i dati di accesso per poter utilizzare il FTP su un server, ma c’è anche la possibilità che un server offra un FTP anonimo. In quest’ultimo caso, l'amministratore del server permette a ciascun utente di spostare o scaricare file sul server tramite FTP, senza dover aver bisogno di una password. Tuttavia, i server con FTP aperto corrono dei rischi di sicurezza, motivo per il quale si pongono dei limiti agli utenti.