Server  »  Articoli  »  Altri Server 

Introduzione al protocollo FTP

di: Daniele Salvatore Albano     19 Luglio 2006

Gestire un server o un sito in hosting diventa ogni giorno più facile grazie alla progressione della tecnologia e alla diffusione di strumenti flessibili ed avanzati come pannelli di controllo tipo Plesk o CPanel, o client FTP come FileZilla o SmartFTP, software come Putty per connettersi in SSH o Telnet ed altro ancora.

In quest'articolo ci occuperemo del protocollo FTP: come è nato, a quali esigenze viene incontro, come si utilizza e soprattutto come funziona. Il suo comportamento un po' particolare causa molto spesso confusione nella configurazione rischiando cosi di creare problemi d'utilizzo agli utenti che tentano di usufruire di questi serivizi.

Negli articoli successivi, invece, prenderemo in considerazione, sempre dal lato Server del processo, alcuni software da installare sia su server Windows sia su server Linux.

Cos'è l'FTP e come funziona

L'FTP (File Transfer Protocol) è un sistema di comunicazione abbastanza datato ma estremamente semplice da implementare nei software ed è molto semplice da utilizzare per gli utenti. Questa combinazione lo rende preferibile ad altri sistemi più avanzati ma sicuramente più complessi.

La sua semplicità consiste nel fatto che la struttura del protocollo utilizza pochi semplici comandi per impostare permessi, eliminare o spostare file, uploadare o scaricare dati, mostrare il contenuto delle directory e cosi via.

Purtroppo però, come ogni strumento che si basa su tecnologie ormai datate, ci sono delle problematiche legate al sistema di funzionamento, tanto che uno dei più grossi problemi di sempre di questo protocollo è stato il sistema di trasferimento dei dati, come file o elenchi di file, tra il client ed il server. L'utilizzo di due distinti canali di comunicazione, il primo per lo scambio di comando, aperto alla connessione, ed il secondo per lo scambio dei file, aperto al volo durante le operazioni, ha portato con sé notevole scompiglio ai fruitori di questi servizi.

Le connessioni passive

Per ovviare a questo problema è stato implementato nel protocollo il supporto per le connessioni passive: connessioni avviate dal client e non dal server in modo da evitare problemi legati a firewall, router o architettura della rete dell'utente finale.

A differenza di quelle attive, le connessioni passive portano con loro notevoli problemi di sicurezza perché, quando il server apre la connessione verso il client, il software è sicuro che dall'altra parte ci sia l'utente. Utilizzando invece l'altro tipo di connessioni questa sicurezza viene a mancare: potrebbe esserci infatti qualche software malevolo pronto a intercettare la comunicazione e ad agganciarsi ad essa al posto del client FTP. Inoltre la porta di connessione utilizzata in queste transizioni è casuale e questo ha costretto molti amministratori di sistema ad aprire tutte le porte dei propri server per permettere un corretto funzionamento del servizio.

Ovviamente esistono soluzioni più o meno efficaci e utilizzando dei firewall che supportino la Stateful Inspection è possibile risolvere le problematiche di sicurezza: questi software, estremamente avanzati, sono in grado di carpire il contenuto di una sequenza di pacchetti e di agire di conseguenza! Nel caso dell'FTP questo si traduce in un'apertura al volo della porta necessaria per eseguire la connessione passiva richiesta dal client o per bloccare una connessione passiva proveniente da un'ip diverso da quello originario della connessione principale.

Guide Server

Guida risparmio energetico per server

Dalla determinazione dei consumi al risparmio, dalla...

Guida Subversion

SVN è uno dei sistemi per il versioning più utilizzati al mondo....

Guida Application server

Cosa sono, quali sono e come possono essere utilizzati nella...

Altre guide

Newsletter

Ogni settimana, in due distinte newsletter: notizie a approfondimenti su Apache e IIS.

Iscriviti alla newsletter

Altre newsletter

Corsi in aula

Amministratore di Reti Windows Server 2008

11 Giugno 2012 a Milano
Disponibilità: 5 Posti

Nessun corso previsto