venerdì 4 gennaio 2013

FTP. Funzionamento generale

FTP, 
a differenza di altri protocolli 
come ad esempio 
HTTP, 
utilizza due connessioni separate 
per gestire comandi e dati. 

Un server FTP rimane tipicamente in ascolto 
sulla porta 21 TCP 
a cui si connette il client. 

La connessione da parte del client 
determinerà l'inizializzazione del canale comandi 
attraverso il quale 
client e server 
si scambieranno 
comandi e risposte. 

Lo scambio effettivo di dati 
(come ad esempio file) 
richiederà l'apertura del canale dati 
il quale può essere di due tipi.

In un canale dati 
di tipo attivo 
 il client apre una porta 
tipicamente random, 
tramite il canale comandi 
rende noto il numero di tale porta al server 
e attende che esso si connetta. 

Una volta che il server ha attivato la connessione dati 
al client FTP, 
quest'ultimo effettua il 
binding della porta sorgente 
alla porta 20 del server FTP. 

A tale scopo 
possono venire impiegati i comandi  
PORT o  
EPRT
a seconda del protocollo di rete utilizzato 
(tipicamente IPv4 o IPv6). 

Sia il canale comandi 
sia il canale dati 
sono delle connessioni 
TCP; 
FTP crea un nuovo canale dati 
per ogni file trasferito all'interno della sessione utente, 
mentre il canale comandi 
rimane aperto per l'intera durata della sessione utente, 
in altre parole 
il canale comandi 
è persistente 
mentre il canale dati 
è non persistente.

Un server FTP 
offre svariate funzioni 
che permettono al client 
di interagire 
con il suo filesystem 
e i file 
che lo popolano, 
tra cui:


Download/upload di file.


Resume di trasferimenti interrotti.


Rimozione e rinomina di file.


Creazione di directory.


Navigazione tra directory.


FTP 
fornisce inoltre 
un sistema di autenticazione 
(N.B. in chiaro) 
degli accessi. 

Il client 
che si connette 
potrebbe dover fornire delle credenziali 
a seconda delle quali 
gli saranno assegnati determinati privilegi 
per poter operare sul filesystem. 

L'autenticazione cosiddetta "anonima" 
prevede che il client 
non specifichi nessuna password di accesso 
e che lo stesso 
abbia privilegi 
che sono tipicamente di "sola lettura".

Nessun commento:

Posta un commento