FTP: la guida completa

Ftp Guida Completa

“Che cos’è il FTP?” Una domanda che molto spesso ci viene posta da chi è entrato da poco a far parte dell’hosting web. Per chi bazzica da un po’ in questo mondo può sembrare una domanda banale, ma è fondamentale per i newbies sapere cosa signfica questa sigla.

In questo articolo andremo a spiegare ogni aspetto del FTP, all’interno di una vera e propria guida completa che potrai consultare ogni volta che avrai il minimo dubbio. Se sei pronto, direi che possiamo cominciare.

Cos’è FTP?

La sigla FTP sta per File Transfer Protocol. Indica, infatti, il protocollo che si usa per trasferire i file tra host in base a un sistema client-server. Il protocollo è un insieme di regole che gestiscono la comunicazione su internet, così come su altre reti.

Il FTP è tra i protocolli più vecchi della storia di Internet. La sua prima definizione completa risale al 1985 e si può trovare all’interno della Request for Comments 959.

Come funziona il FTP?

Occorre sapere che per sfruttare il meccanismo del protocollo di trasferimento di file, è necessario sapere le credenziali di accesso (nome utente e password). Queste solitamente ci vengono fornite dal provider del server.

Tuttavia, qualche server offre la possibilità di utilizzare FTP anonimi. Il suo admin in questo caso decide di optare per un server con FTP aperto, garantendo agli utenti di scambiare dati senza aver bisogno della password. Ovviamente, però, si tratta di un metodo piuttosto rischioso in termini di sicurezza. Per questa ragione, alcuni limiti vengono imposti al traffico di dati.

Per permettere lo scambio di file, il FTP utilizza a sua volta il TCP (Transmission Control Protocol). Si tratta di un ulteriore protocollo, un insieme di regole atte a gestire il trasferimento dei dati.

Per dare inizio a una connessione FTP è necessaria l’apertura di due canali.

  1. Server e client creano un canale di controllo attraverso la porta 21. Questo canale servirà al client a trasmettere istruzioni al server che risponderà tramite codici di stato.
  2. Entrambi creano un canale dati atto a trasportare determinati file da server a client e viceversa.

Il compito del FTP sta anche nel controllare eventuali errori. E se la connessione dovesse venire interrotta per qualche motivo durante lo scambio di dati? Nessun problema, il trasporto dei file riprenderà non appena tornerà uno stabilimento di contatto.

Occorre però fare una distinzione importante all’interno del meccanismo del File Transfer Protocol: quello tra variante attiva e passiva.

FTP attivo e passivo: quali sono le differenze

Come abbiamo detto, il protocollo di trasferimento di file supporta due modalità differenti:

  • Standard (detta anche PORT o Attiva)
  • Passiva (detta anche PASV).

Nella modalità Attiva i comandi PORT vengono inviati al server, mentre in quella Passiva i comandi inviati sono di tipo PASV. Per capire meglio le differenze, ci siamo permessi di riassumere il loro funzionamento con un elenco puntato.

FTP Attivo

  • Il client, ad esempio FileZilla, inizia una connessione verso il server (generalmente sulla porta 21) e comunica la porta per lo scambio dei dati (la porta è spesso casuale e decisa dal client);
  • Il server conferma la connessione e verifica le credenziali;
  • Il server apre una connessione verso il client sulla porta comunicata in precedenza;
  • Il client conferma la connessione;
  • Ha inizio lo scambio dei dati.
Filezilla Ftp
FileZilla è un programma che sfrutta il Protocollo di trasferimento di file (FTP).

FTP Passivo

  • Il client inizia una connessione (porta 21) verso il server;
  • Il server conferma la connessione, verifica le credenziali e comunica la porta per lo scambio dei dati (anche qui la porta è casuale, ma questa volta è decisa dal server);
  • Il client apre una connessione verso il server sulla porta comunicata per lo scambio di dati;
  • Il server conferma la connessione;
  • Inizia la trasmissione dei dati.

La variante passiva è stata pensata per tutti quei client protetti da firewall, che non permettono al server di inviare risposte, essendo le connessioni esterne bloccate proprio dal firewall. Nella modalità passiva, il fatto che sia il client a iniziare la connessione non permette al firewall di bloccare lo scambio di dati.

Firewall
Il firewall è un coponente hardware o software in grado di difendere perimetralmente una rete

Per cosa viene usato il FTP?

Grazie al File Transfer Protocol è possibile svolgere diverse azioni nel quotidiano, che possiamo racchiudere in quattro gruppi:

  • scaricare file da un server sul proprio dispositivo (download)
  • caricare file dal proprio dispositivo a un server (upload)
  • cancellare, rinominare o spostare file su un server
  • cancellare, creare, rinominare o spostare cartelle su un server.

Si utilizza il protocollo di trasferimento di file anche per creare nuovi siti web. Infatti il procollo stesso permette la trasmissione del file HTML a un server remoto. Inoltre, grazie allo stesso principio, gli amministratori di questi siti saranno in grado di condividere file multimediali con i propri visitatori.

La questione della sicurezza

Fin dall’inizio, il File Transfer Protocol fu creato in assenza di alcuna misura di sicurezza preventiva. Una cosa da una parte comprensibile, date le dimensioni dell’Internet negli anni ’80 e la mancanza di cybercriminalità.

Tuttavia, con il passare del tempo, Internet è diventato un luogo sempre meno sicuro e i rischi associati all’utilizzo del protocollo di trasferimento di file sono aumentati a dismisura. Criptare le informazioni prima di scambiarle è ormai una pratica di fondamentale importanza, perciò il FTP si è dovuto evolvere.

Security
La sicurezza in rete è diventata sempre più importante negli anni.

Le varianti del FTP

Proprio a causa dei rischi sempre maggiori, negli ultimi anni sono state create due varianti che garantiscono un livello di sicurezza maggiore rispetto all’originale.

  • FTPS (File Transfer Protocol over Secure Socket Layers). Si stabilizza una connessione tramite i SSL, usando il Transport Layer Security (TLS), uno strumento in grado di criptare la trasmissione dei file. Necessita di due connessioni
  • SFTP (SSH File Transfer Protocol). Anche con questa variante la connessione viene criptata, tuttavia utilizza il Secure Shell come strumento di sicurezza. Per questa variante basta una sola connessione, ma è necessario l’utilizzo di un programma ulteriore.

Esiste un’altra variante ancora meno conosciuta del protocollo di trasmissione di file: il SFTP (Simple File Transfer Protocol). ATTENZIONE! Non bisogna confonderlo con la variante descritta in precedenza che viene abbrevviata allo stesso modo. Come si deduce dal suo nome, si tratta di una versione semplificata dell’originale.

Così come il fratello maggiore, non prevede nessun meccanismo di sicurezza. Questo protocollo, tuttavia, non ha avuto grande successo con il tempo e ad oggi possiamo affermare con sicurezza la sua pressoché nulla rilevanza storica.

I migliori client FTP

Abbiamo parlato tanto di client ma ne abbiamo citato solo uno finora. Andiamo ad analizzare i tre principali client per trasmettere file in modo gratuito:

  • FileZilla. Lo abbiamo già citato in precedenza, è compatibile con i principali sistemi operativi (Windows, Linux e MacOS). Si tratta di un client open source che offre transizioni di dati criptate e sicure.
  • CyberDuck. Compatibile con Windows e MacOS, permette di svolgere transizioni di file con i più comuni servizi cloud (Amazon, OpenStack, Azure o S3).
  • FreshFTP. Disponibile per Windows e molto facile da utilizzare grazie alla sua interfaccia user-friendly.

Ecco alcuni video tutorial che ti spiegheranno come utilizzare alcuni dei programmi sopra citati:

Tutorial su come usare FileZilla
Tutorial in lingua inglese su come utilizzare CyberDuck

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *