File Transfer Protocol (FTP): cos’è e come funziona
Quello denominato FTP è un protocollo di rete standard, basato su TCP, che permette di trasferire file tra un client e un server attraverso due connessioni separate, una per i comandi e una per i dati, definito nella RFC 959.
File transfer protocol (FTP) in sintesi
- Definizione: protocollo applicativo client-server per caricare e scaricare file su rete TCP/IP.
- Porte: la porta 21 gestisce i comandi, la porta 20 (o una porta dinamica in modalità passiva) gestisce i dati.
- Sicurezza: la versione classica trasmette credenziali e contenuti in chiaro, quindi è esposta a intercettazioni.
- Alternative: FTPS e SFTP aggiungono cifratura, rispettivamente via TLS/SSL e via SSH sulla porta 22.
- Attualità: i principali browser hanno rimosso il supporto nativo, ma il protocollo resta in uso in contesti industriali e di automazione.
- Connessione: richiede indirizzo del server, credenziali e un client dedicato o da riga di comando.
Cos’è l’FTP e a cosa serve
L’FTP serve a spostare file di qualsiasi dimensione tra due macchine collegate in rete, mantenendo l’integrità del contenuto durante il trasferimento. Il protocollo nasce nel 1971 con la RFC 114 e viene ridefinito nella versione attuale dalla RFC 959 del 1985, pensata per funzionare su TCP al posto del precedente NCP.
Un esempio tipico di utilizzo è il caricamento di pagine web su un hosting: un webmaster apre una connessione verso l’indirizzo del server, si autentica con username e password e trasferisce i file del sito dalla cartella locale a quella remota. Lo stesso meccanismo serve per scambiare aggiornamenti software, backup di configurazione o archivi voluminosi tra sedi aziendali, senza i limiti di dimensione tipici di un allegato email.
L’architettura è client-server: il client FTP (un’applicazione grafica, un browser o un comando da terminale) avvia la richiesta; il server FTP (software come vsftpd, ProFTPD o FileZilla Server) la riceve, autentica l’utente e autorizza le operazioni consentite su directory e file. Il protocollo è stateful: mantiene lo stato della sessione (directory corrente, utente autenticato) per tutta la durata della connessione, a differenza di protocolli stateless come HTTP.
Per indirizzare il server è necessario un sistema di risoluzione dei nomi di dominio oppure un indirizzo IP diretto, oltre alla porta su cui il servizio resta in ascolto.
Come funziona il protocollo FTP
Ogni sessione FTP apre due connessioni TCP distinte: una di controllo, che resta attiva per tutta la sessione e veicola comandi e risposte, e una dati, aperta e chiusa a ogni trasferimento. Questa separazione, detta out-of-band, è ciò che rende il protocollo efficace per grandi volumi ma anche più complesso da gestire dietro firewall e NAT.
Il server risponde ai comandi con codici numerici a tre cifre, leggibili anche da un operatore umano: 220 indica che il servizio è pronto, 331 richiede la password dopo lo username, 230 conferma il login riuscito, 150 annuncia l’apertura del canale dati, 226 segnala il trasferimento completato, 221 chiude la sessione. Codici come 502, 503 e 530 segnalano invece errori di sequenza, comandi non implementati o autenticazione fallita.
Durante il trasferimento, FTP applica uno tra diversi tipi di rappresentazione dei dati: la modalità ASCII converte la codifica dei caratteri tra sistemi diversi ed è adatta ai file di testo; la modalità Image (o Binary) trasmette i byte senza alcuna conversione ed è quella raccomandata per quasi tutti i file moderni; la modalità EBCDIC riguarda sistemi che usano quella codifica specifica; la modalità Local gestisce byte di lunghezza non standard, utile solo su architetture storiche. Per i file di testo la codifica corretta dei caratteri è lo stesso tema affrontato in modo più ampio parlando di codifica dei caratteri sul web.
Che porta usa FTP: porta 21 e porta 20

FTP utilizza la porta 21 per il canale di controllo e, in modalità attiva, la porta 20 per il canale dati: la risposta diretta alla domanda “FTP è 20 o 21” è che servono entrambe, ciascuna con un ruolo distinto.
Porta 21: il canale di controllo
La porta 21 resta aperta per l’intera durata della sessione: su di essa transitano l’autenticazione (comandi USER e PASS), la navigazione tra directory e l’avvio di ogni operazione di trasferimento. Se questa porta è bloccata da un firewall, la connessione FTP non si stabilisce affatto, indipendentemente dalla modalità scelta per i dati.
Porta 20: il canale dati in modalità attiva
La porta 20 viene aperta dal server solo quando deve inviare o ricevere il contenuto effettivo di un file o una lista di directory, e si chiude al termine di ogni trasferimento. In modalità passiva questa porta fissa non viene usata: il server comunica al client un numero di porta dinamico, spesso superiore a 1024, su cui aprire la connessione dati.
| Protocollo | Porta standard | Trasporto | Cifratura |
|---|---|---|---|
| FTP (controllo) | 21 | TCP | No |
| FTP (dati, modalità attiva) | 20 | TCP | No |
| FTP (dati, modalità passiva) | porta dinamica indicata dal server | TCP | No |
| SFTP | 22 | TCP (su SSH) | Sì |
| FTPS implicito | 990 | TCP | Sì |
| SMB | 445 | TCP | Parziale |
| TFTP | 69 | UDP | No |
Per cambiare la porta di default, due strade sono percorribili: modificare il parametro nel pannello di configurazione del server, oppure indicare la nuova porta nell’indirizzo di connessione del client aggiungendo i due punti seguiti dal numero, prima dell’eventuale percorso.
Modalità attiva e passiva: quale scegliere
La scelta tra modalità attiva e passiva dipende da dove si trova il firewall o il NAT rispetto al client e al server, e determina quale dei due apre la connessione dati.
Se il client è dietro un firewall o un NAT
Usa la modalità passiva: il client invia il comando PASV, il server risponde con un indirizzo IP e un numero di porta dinamico, e sarà il client stesso ad aprire la connessione dati verso il server. Questo evita che il firewall del client blocchi una connessione in ingresso non richiesta.
Se la rete del client non ha restrizioni in ingresso
- Il client apre una porta in ascolto e invia il comando PORT con il proprio indirizzo e numero di porta.
- Il server avvia una connessione dati dalla propria porta 20 verso la porta indicata dal client.
- Il trasferimento avviene su questa connessione, che si chiude al termine dell’operazione.
La modalità attiva resta valida quando non ci sono NAT a complicare il percorso, ma è meno compatibile con le configurazioni di rete moderne, motivo per cui la maggior parte dei client odierni adotta la modalità passiva come impostazione predefinita.
Tipi e varianti di FTP
- FTP Plain
- Versione standard senza cifratura, in ascolto sulla porta 21, compatibile con la maggior parte dei client.
- FTPS (FTP Secure)
- Aggiunge cifratura TLS/SSL al canale FTP; può essere implicita, con handshake automatico su porta 990, o esplicita.
- FTPES
- Variante esplicita: la connessione inizia come FTP normale sulla porta 21, poi passa a un canale cifrato tramite il comando AUTH TLS.
- SFTP
- Non è una variante di FTP ma un protocollo distinto basato su SSH, con un’unica connessione cifrata sulla porta 22.
- Anonymous FTP
- Accesso in sola lettura con l’utente “anonymous”, senza credenziali personali, usato per distribuire file pubblici.
- Password-protected FTP
- Accesso con username e password dedicati, con permessi configurabili dall’amministratore del server.
La differenza pratica tra FTPS e SFTP non riguarda solo la cifratura ma anche l’architettura: FTPS mantiene la separazione tra canale di controllo e canale dati tipica di FTP, mentre SFTP la elimina a favore di un’unica connessione, più semplice da far passare attraverso firewall restrittivi.
FTP è sicuro? Vulnerabilità e alternative
L’FTP classico non è sicuro: username, password e contenuto dei file viaggiano in chiaro sulla rete, quindi chiunque intercetti il traffico può leggerli senza alcuna decifratura.
Le conseguenze pratiche riguardano soprattutto lo sniffing del traffico, lo spoofing dell’identità del server e gli attacchi a forza bruta sulle credenziali, favoriti dall’assenza di qualsiasi meccanismo di hashing sulla password trasmessa. Per questo motivo, l’uso di FTP non cifrato su reti pubbliche o non controllate espone a rischi concreti di interruzione o compromissione del servizio oltre che di furto dei dati trasferiti.
Le soluzioni praticabili sono due. Se il requisito è mantenere compatibilità con l’architettura a due canali di FTP ma aggiungere cifratura, la scelta ricade su FTPS. Se invece si preferisce un protocollo più semplice da gestire dietro firewall, con un’unica connessione cifrata, SFTP è l’alternativa più diffusa. In entrambi i casi il protocollo di trasferimento file più sicuro tra i due non è stabilito in assoluto: dipende dal supporto lato server, dalla compatibilità con i client esistenti e dal livello di controllo richiesto sui certificati o sulle chiavi SSH.
Per contesti aziendali con esigenze di audit, rotazione automatica delle credenziali e conformità normativa, l’evoluzione naturale è il Managed File Transfer (MFT), che integra queste funzioni senza doverle costruire manualmente sopra un server FTP tradizionale, un tema che si collega alla pianificazione della continuità operativa dei sistemi che gestiscono dati sensibili.
FTP vs SFTP, HTTP e altri protocolli
FTP utilizza TCP, non UDP: la connessione orientata al circuito garantisce consegna affidabile dei dati, a differenza di TFTP, che si appoggia su UDP ed è pensato per trasferimenti semplici senza autenticazione, tipici del boot di dispositivi di rete.
| Protocollo | Cifratura | Canali | Caso d’uso tipico |
|---|---|---|---|
| FTP | No | Due (controllo + dati) | Trasferimenti massivi su rete fidata |
| SFTP | Sì (SSH) | Uno | Accesso remoto sicuro a file e server |
| FTPS | Sì (TLS/SSL) | Due | Continuità con infrastrutture FTP esistenti |
| HTTP | No (salvo HTTPS) | Uno, stateless | Download singoli, API, pagine web |
| SMB | Parziale | Uno | Condivisione file in reti locali Windows |
Rispetto a HTTP, FTP resta preferibile quando serve autenticazione obbligatoria lato client e gestione nativa di directory remote: HTTP, essendo stateless, non conserva informazioni di sessione tra una richiesta e l’altra e per questo gestisce meglio un numero elevato di connessioni simultanee, ma richiede logiche applicative aggiuntive per replicare le funzioni di navigazione tipiche di un client FTP. Servizi di invio file una tantum come quelli basati su link temporanei risolvono un’esigenza diversa, pensata per il singolo trasferimento occasionale più che per l’accesso strutturato a un’area file condivisa.
Come connettersi a un server FTP

Per connettersi a un server FTP servono tre informazioni di base: l’indirizzo del server, le credenziali di accesso e, se diversa dallo standard, la porta da usare.
- Raccogliere indirizzo del server (dominio o IP), nome utente e password forniti dall’amministratore.
- Aprire un client FTP con interfaccia grafica, oppure un browser compatibile, oppure il comando da riga di testo disponibile nei principali sistemi operativi.
- Inserire le credenziali e, se richiesto, selezionare la porta personalizzata e la modalità passiva o attiva.
- Attendere la risposta 230 del server, che conferma il login riuscito.
- Navigare tra le directory remote con i comandi di spostamento e avviare il trasferimento con i comandi dedicati al download o al caricamento.
- Chiudere la sessione al termine dell’operazione per liberare la connessione sul server.
I comandi più comuni in un’interfaccia a riga di comando sono get per scaricare un singolo file, mget per scaricarne più di uno in sequenza, put per caricare un file sul server, ls per elencare il contenuto di una directory e cd per cambiarla. Le applicazioni grafiche traducono questi stessi comandi in operazioni di trascinamento tra due pannelli, uno per il file system locale e uno per quello remoto.
Errori frequenti nella connessione FTP
La maggior parte dei problemi di connessione FTP riguarda il blocco di una delle due porte necessarie oppure un conflitto tra modalità di trasferimento e configurazione di rete.
Se la connessione viene rifiutata sulla porta 21
Il firewall del server o della rete locale blocca il canale di controllo: verifica che la porta 21 sia aperta in uscita dal client e in ingresso sul server prima di controllare qualunque altro parametro.
Se il login riesce ma il trasferimento dei file si blocca
Il problema riguarda quasi sempre il canale dati: in modalità attiva il server non riesce a raggiungere la porta indicata dal client, in modalità passiva il range di porte dinamiche usato dal server non è aperto sul firewall. Passare a modalità passiva, o aprire l’intervallo di porte dedicato, risolve la maggior parte dei casi.
Se il certificato FTPS non viene accettato dal client
Il client non riconosce l’autorità che ha emesso il certificato del server, oppure il certificato è scaduto: la connessione cifrata non si avvia finché il certificato non viene aggiornato o importato manualmente come attendibile.
FTP è ancora usato oggi?
FTP è ancora in uso, ma non più come canale predefinito per l’utente finale: Chrome e Firefox hanno rimosso il supporto nativo al protocollo nel 2021, spostando l’accesso tramite browser verso soluzioni cifrate come SFTP e FTPS.
Nonostante questo, il protocollo resta diffuso in ambito industriale, nell’automazione di trasferimenti batch tra sistemi legacy e nella distribuzione di archivi pubblici tramite accesso anonimo. Il mercato del software dedicato conferma questa persistenza: il mercato del software FTP cresce a un CAGR del 9,1% dal 2026 al 2033, secondo File Transfer Protocol (FTP) Software Market Research (2026). Tra i fornitori attivi nel settore, Progress Software ha registrato ricavi di circa 532 milioni di dollari nel 2022, mentre Globalscape ha registrato ricavi di vendita di circa 32 milioni di dollari nello stesso anno, secondo la medesima analisi di mercato.
Ciò che ha sostituito FTP nell’uso quotidiano degli utenti non è un singolo protocollo ma una combinazione di servizi cloud con cifratura integrata, link di condivisione temporanei e, nei contesti più tecnici, SFTP o soluzioni MFT. Il motivo principale per cui FTP viene considerato superato riguarda proprio l’assenza di cifratura nativa, non la sua capacità di trasferire grandi volumi di dati, che resta tecnicamente valida.
Altri significati della sigla FTP
La sigla FTP, fuori dal contesto informatico, assume significati completamente diversi a seconda dell’ambito in cui compare.
Nel ciclismo e negli sport di resistenza, FTP indica la Functional Threshold Power, la potenza massima sostenibile per circa un’ora di sforzo continuo, usata per calibrare gli allenamenti. In ambito medico, l’espressione “FTP in pregnancy” si riferisce al “failure to progress”, una mancata progressione del travaglio che richiede valutazione clinica. Sui social, in particolare su Instagram, “FTP” è usata come slang con significati legati a espressioni colloquiali del linguaggio giovanile, del tutto scollegati dal protocollo di rete. Nessuno di questi utilizzi condivide meccanismi o terminologia tecnica con il protocollo di trasferimento file descritto in questo articolo.
Domande frequenti sull’FTP
Cos’è l’FTP?
È un protocollo di rete standard, basato su TCP, che permette di trasferire file tra un client e un server tramite due connessioni separate per comandi e dati, definito nella RFC 959 del 1985.
Che porta usa l’FTP?
Usa la porta 21 per il canale di controllo e la porta 20 per il canale dati in modalità attiva; in modalità passiva il canale dati sfrutta una porta dinamica comunicata dal server.
FTP è un protocollo TCP o UDP?
FTP è basato su TCP, non su UDP: questo garantisce consegna affidabile dei dati, a differenza di TFTP che invece si appoggia su UDP ed è pensato per trasferimenti semplici senza autenticazione.
Meglio usare FTP o SFTP?
SFTP è preferibile quando serve cifratura end-to-end delle credenziali e dei dati trasferiti; FTP plain resta accettabile solo su reti isolate o per distribuzione pubblica anonima senza dati sensibili.
L’FTP è ancora usato oggi?
Sì, soprattutto in ambito industriale e nell’automazione di trasferimenti batch, anche se i browser principali hanno rimosso il supporto nativo dal 2021 a favore di protocolli cifrati.
Cosa ha sostituito l’FTP?
Non un protocollo unico, ma una combinazione di servizi cloud cifrati, link di condivisione temporanei e, per usi tecnici, SFTP o soluzioni di Managed File Transfer con audit e gestione credenziali integrati.
Perché l’FTP usa due porte diverse?
Perché separa il canale di controllo, sempre attivo durante la sessione, dal canale dati, aperto solo per la durata del singolo trasferimento: una scelta ereditata dal progetto originale del protocollo negli anni settanta.
Fonti e riferimenti
- File Transfer Protocol (FTP) Software Market Research … (2026) www.linkedin.com