Il protocollo FTP

FTP

 

Sono stati fatti passi da gigante negli ultimi anni in termini di UI per quanto riguarda la gestione di un server, grazie al potenziamento di strumenti come pannelli di controllo tipo Plesk o CPanel, o client FTP come FileZilla (di cui ho redatto una piccola guida).

In quest’articolo parlerò del protocollo FTP:  dalla nasciata alle esigenze alle quali viene incontro, dal suo utilizzo al suo funzionamento.

Cos’è l’FTP e come funziona

L’FTP (File Transfer Protocol) è un sistema di comunicazione presente da qualche anno in ambito informatico, molto semplice da utilizzare e molto immediato lato utente. La combinazione di questi due aspetti lo rende preferibile ad altri sistemi più completi ma indubbiamento più complicati da utilizzare per l’utente odierno.

La sua forza consiste nella minimalità del protocollo che utilizza pochi semplici comandi per impostare permessi, eliminare o spostare file, caricare o scaricare dati, mostrare il contenuto di directory etc.

Tuttavia non sono tutte rose e fiori: essendo una tecnologia datata presenta qualche inconveniente. In questo caso ci sono dei problemi legati al sistema di funzionamento, in particolare nel sistema di trasferimento dei dati tra il client ed il server. L’utilizzo infatti di due distinti canali di comunicazione (uno per lo scambio di comando, aperto alla connessione, l’altro per lo scambio dei file, aperto in contemporanea durante le operazioni) ha portato alcuni disservizi agli utilizzatori finali di questi servizi.

Connessioni attive e passive

La differenza principale tra le due modalità di funzionamento FTP sta nel fatto che la modalità passiva consente l’apertura e la chiusura di porte casuali riducendo i rischi legati a possibili attacchi.

L’FTP passivo risolve i problemi relativi al firewall nei client, ma d’altro canto il server dovrebbe lasciare aperte molte porte non privilegiate, con i rischi conseguenti.  Molti server FTP consentono di impostare un ventalgio di porte in cui il server può accettare input.

Dal punto di vista dell’utente non cambia nulla apparentemente nel modo di funzionamento del proprio client, se non qualche accorgimento nella configurazione del firewall, che dovrà accettare ogni tipo di traffico FTP, piuttosto che quello su una specifica porta.

Il protocollo FTP è basato su un’architettura client/server e necessita quindi di un software client (per esempio il solito Filezilla, come descritto nell’articolo Guida a Filezilla, il client FTP gratuito) per gestire le funzionalità esposte dal server in modo più semplice.

Comandi testuali

Tuttavia è anche possibile utilizzare programmi come Telnet e connettersi alla shell di comando dove poter inviare comandi testuali. Qui di seguito sono elencati una serie di comandi implementati dal protocollo FTP:

  • USER, serve ad inviare il nome utente per l’autenticazione;
  • PASS, utilizzato per completare la fase di autenticazione inviando la password;
  • PASV, necessario per impostare la connessione passiva acquisendo quindi la porta da utilizzare per lo scambio di files e liste di files;
  • PWD, per acquisire la directory corrente;
  • CWD, per spostarsi tra le directory;
  • TYPE, permette di impostare il tipo di codifica usato per lo scambio dei files;
  • RNFR e RNTO, indicano rispettivamente Rinomina Da e Rinomina A permettendo di rinominare un file o una directory;
  • MKD, crea una cartella;
  • RMD, elimina una cartella esistente;
  • DELE, permette l’eliminazione di files;
  • HELP, restituisce l’help dei comandi;
  • SYST, restituisce il sistema operativo utilizzato dal server FTP;
  • NOOP, comando per bloccare un’eventuale chisura di connessione dovuta al timeout di trasferimento dei file;
  • LIST, elencadirectory e file presenti nella cartella corrente sul canale dati;
  • STAT, che sostituisce LIST permettendo di acquisire l’elenco delle cartelle sul canale dei comandi;
  • STOR, indica al server FTP di acquisire il file che verrà sul canale dati;
  • RETR, scarica il file indicato tramite il canale dati;
  • QUIT, esegue la disconnessione.

I comandi qui sopra elencati sono solo un estratto della lista di quelli più comunemente utilizzati per eseguire le operazioni sui server FTP. Per un maggiore approfondimento in merito consiglio di consultare guide specialistiche.

Tags:

Condividi :

Post correlati

Lascia un commento