Il protocollo FTP (File Transfer Protocol)



Documenti analoghi
Modulo 8: Applicativi. Parte 5: FTP e TFTP. Gennaio Marzo Introduzione a FTP. Storia. Alessandro Brunengo Mirko Corosu Reti di Calcolatori 2

il trasferimento di file

Reti di Telecomunicazione Lezione 7

Reti di Calcolatori PROTOCOLLO FTP

Reti di Calcolatori PROTOCOLLO FTP. File. File Transfer Protocol Modello FTP Operazioni FTP Comandi del protocollo Esempi di Client FTP avanzati

2.5. L'indirizzo IP identifica il computer di origine, il numero di porta invece identifica il processo di origine.

Nelle reti di calcolatori, le porte (traduzione impropria del termine. port inglese, che in realtà significa porto) sono lo strumento

Protocolli applicativi: FTP

Il client deve stampare tutti gli eventuali errori che si possono verificare durante l esecuzione.

FTP. Appunti a cura del prof. ing. Mario Catalano

URI. Introduzione. Pag. 1

1. RETI INFORMATICHE CORSO DI LAUREA IN INGEGNERIA INFORMATICA SPECIFICHE DI PROGETTO A.A. 2013/ Lato client

Corso di Reti di Calcolatori T

I.N.A.I.L. Certificati Medici via Internet. Manuale utente

Reti di Calcolatori. Il Livello delle Applicazioni

Reti di Telecomunicazione Lezione 6

1) GESTIONE DELLE POSTAZIONI REMOTE

LABORATORIO DI TELEMATICA

MODELLO CLIENT/SERVER. Gianluca Daino Dipartimento di Ingegneria dell Informazione Università degli Studi di Siena

10.1. Un indirizzo IP viene rappresentato in Java come un'istanza della classe InetAddress.

Pagina 2 di 14. Indice

Descrizione flussi per integrazione Travel Card presso negozi online e-commerce: integrazione carrello degli acquisti

Tabelle di riferimento Pulsanti Inserire documento Predisposizione doc Approvazione Doc Numerazione Doc Pubblicazione Albo Webservice

FtpZone Guida all uso

Internet: Domini e spazi web. conoscerlo al meglio per usarlo meglio Gabriele Riva - Arci Barzanò

Classe 5 Bi Laboratorio di informatica Esercitazione di gruppo: configurazione server Apache

Utilizzo di Certificati SSL e relative implicazioni

Transmission Control Protocol

Active Directory. Installatore LAN. Progetto per le classi V del corso di Informatica

Architettura del. Sintesi dei livelli di rete. Livelli di trasporto e inferiori (Livelli 1-4)

account Fornisce una password supplementare (richiesta da un sistema remoto per accedere alle risorse) una volta eseguito il login.

PORTALE CLIENTI Manuale utente

Dopo aver installato WSFTP.le, alla prima schermata quando lo apriamo vedremo questo.

Gestione dei servizi all utenza. 3. Autorizzazioni

ATTIVAZIONE SCHEDE ETHERNET PER STAMPANTI SATO SERIE ENHANCED

Topologia delle reti. Rete Multipoint: ogni nodo è connesso agli altri tramite nodi intermedi (rete gerarchica).

GUIDA AL PRONTUARIO MOBILE

Le Reti Informatiche

Come funziona il WWW. Architettura client-server. Web: client-server. Il protocollo

Cenni di programmazione distribuita in C++ Mauro Piccolo

PSNET UC RUPAR PIEMONTE MANUALE OPERATIVO

Esercizio 2. Client e server comunicano attraverso socket TCP

NAS 323 Uso del NAS come server VPN

Real Time Control (RTC): modalità di invio dei dati

Il file seme o file modello del disegno

FTP. studioand CORTILE DEL MAGLIO. manuale per la configurazione dell accesso FTP. Via Andreis, 18/ Torino (To)

Gestione On Line delle Domande

Guida rapida per l utilizzo del servizio OwnCloud-MIUR (versione 1.6)

Introduzione. Coordinazione Distribuita. Ordinamento degli eventi. Realizzazione di. Mutua Esclusione Distribuita (DME)

Talento LAB UTILIZZARE FTP (FILE TRANSFER PROTOCOL) L'UTILIZZO DI ALTRI SERVIZI INTERNET. In questa lezione imparerete a:

Reti di Telecomunicazione Lezione 8

I Principali Servizi del Protocollo Applicativo

Wi-Pie Social Network Punti di accesso alla Rete Internet Manuale d'uso

Stampe in rete Implementazione corretta

1. Compilazione dell istanza di adesione

AVCP Generatore di XML

Con accesso remoto s'intende la possibilità di accedere ad uno o più Personal Computer con un modem ed una linea telefonica.

Omnia Web Timesheet. Manuale utente

Airone Gestione Rifiuti Funzioni di Esportazione e Importazione

Plugin di integrazione con Wordpress

COLLEGAMENTO ALLA M.C.T.C. PER VISURA TARGHE

Consiglio regionale della Toscana. Regole per il corretto funzionamento della posta elettronica

Configurazione di Outlook Express

SMSPortal. SMS-Gateway interfaccia SMTP. Versione , 2005, 2006 SMSPortal. Digitel Mobile Srl Via Raffaello, Pescara (Italy)

TeamPortal. Servizi integrati con ambienti Gestionali

COME CONFIGURARE UN CLIENT DI POSTA

MANUALE UTENTE FORMULA PEC

. A primi passi con microsoft a.ccepss SommarIo: i S 1. aprire e chiudere microsoft access Start (o avvio) l i b tutti i pro- grammi

NAS 259 Proteggere i dati con la sincronizzazione remota (Rsync)

Oreste Signore, Responsabile Ufficio Italiano W3C Area della Ricerca CNR - via Moruzzi, Pisa

Servizi Remoti. Servizi Remoti. TeamPortal Servizi Remoti

Standard Nazionale di Comunicazione Mercato Gas

InterNet: rete di reti

L ACQUISIZIONE E LA GESTIONE DEI DOCUMENTI ELETTRONICI

Università degli Studi di L Aquila. Facoltà di Ingegneria. Corso di Laurea in Ingegneria Elettronica Corso di Sistemi Informativi

Istruzioni per inserire una determina

Product Shipping Cost Guida d'installazione ed Utilizzo

DNS-Tunneling. Reference to. Ettore di Giacinto Luca Montunato

ARCHIVIA PLUS - ARCHIFILE

TECNOLOGIE E PROGETTAZIONE DI SISTEMI INFORMATICI E DI TELECOMUNICAZIONI

Upload del CMS sul server scelto

MANUALE PER IL CONDUTTORE DEL GIOCO

MANUALE D USO DELL E-COMMERCE. Versione avanzata

Interesse, sconto, ratei e risconti

Il Web Server e il protocollo HTTP

Note per generazione file.txt per invio trimestrale V.P. all AGENZIA DELLE ENTRATE

Guida all uso del Portale Web

Lezione n 1! Introduzione"

CONFIGURARE IL DISPOSITIVO DI TELEASSISTENZA

La Fatturazione Elettronica

Come configurare l accesso ad Internet con il tuo telefonino GPRS EDGE* UMTS* (Sistema Operativi Microsoft Win95 e Win98).

MANUALE DEL FLASH POINT MANAGER 19 Luglio 2007 INDEX

Posta Elettronica Certificata

Accise Settore Prodotti Alcolici Manuale d uso

Guida alla registrazione on-line di un DataLogger

Inizializzazione degli Host. BOOTP e DHCP

Conferencing. Novell. Conferencing 1.0. novdocx (it) 6 April 2007 AVVIARE IL CLIENT CONFERENCING: ACCESSO. Luglio 2007

Il Sistema Operativo: il File System

Procedura SMS. Manuale Utente

PROGETTO FABBISOGNI STANDARD GUIDA DI ACCESSO E COMPILAZIONE DEL QUESTIONARIO.

Transcript:

Il protocollo FTP (File Transfer Protocol) Introduzione al protocollo FTP Il protocollo FTp ( File Transfer Protocol), è, come indicato dal suo nome, un protocollo di trasferimento di file. La creazione del protocollo FTP data 1971, anno nel quale un meccanismo di trasferimento di file (descritti nel RFC 141) tra i terminali de MIT (Massachussetts Institute of Technology) era stato messo a punto. Numerosi RFC hanno apportato in seguito dei miglioramenti al protocollo di base, ma le più grandi innovazioni sono del luglio del 1973. Il protocollo FTP è attualmente definito dall' RFC 959 (File Transfer Protocol (FTP) - Specifications). Il ruolo del protocollo FTP Il protocollo FTP definisce il modo in cui i dati devono essere trasferiti su una rete TC/IP. Il protocollo FTP a come obiettivo di : permettere una condivisione di file tra terminali remoti permettere un'indipendenza ai sistemi di file dei terminali client e server permettere di trasferire dei dati in modo efficace Il modello FTP Il protocollo FTP si iscrive in un modello client-server, cioè un terminale invia degli ordini (il client) e un altro aspetta delle richieste per effettuare delle azioni (i server). Durante una connessione FTP, si aprono due canali di trasmissione : Un canale per i comandi (canale di controllo) Un canale per i dati Così, sia il client che il server possiedono due processori che permettono di gestire questi due tipi di informazione : il DTP (Data Transfer Process) è il processo incaricato di stabilire la connessione e di gestire il canale di dati. Il DTP lato server è detto SERVER-DTP, il DTP lato client è detto USER-DTP il PI (Protocol Interpreter) è l'inter prestatore di protocollo che permette di comandare 1-6

il DTP attraverso degli ordini ricevuti sul canale di controllo. Esso è diverso sul client e sul server : Il SERVER-PI è incaricato di ascoltare gli ordini provenienti da uno USER-PI sul canale di controllo su una data porta, di stabilire la connessione per il canale di controllo, di ricevere su quest'ultimo gli ordini dell'user-pi, di rispondervi e di pilotare il SERVER-DTP Lo USER-PI è incaricato di stabilire la connessione con il server FTP, d'inviare gli ordini FTP, di ricevere le risposte del SERVER-PI e di controllare lo USER-DTP se necessario Durante la connessione di un client FTP ad un server FTP, lo USER-PI inizia la connessione al server secondo il protocollo Telnet. Il client invia degli ordini FTP al server, quest'ultimo li interpreta, pilota il suo DTP, poi rinvia una risposta standard. Una volta che la connessione è stabilita, il server-pi da la porta sulla quale i dati saranno inviati al client DTP. Il client DTP ascolta allora sulla porta specifica i dati provenienti dal server. E' importante notare che, visto che le porte di controllo e di dati sono su canali separati, è possibile inviare gli ordini partendo da un terminale e di ricevere i dati su un altro. Così, ad esempio, è possibile trasferire i dati tra due server FTP passando da un client per inviare le istruzioni di controllo e trasferendo le informazioni tra due processi di server connessi alla porta corretta. In questa configurazione, il protocollo impone che i canali di controllo restino aperti durante tutto il trasferimento dei dati. Così un server può bloccare una trasmissione se il canale di controllo è interrotto durante la trasmissione. 2-6

I comandi FTP Tutte le comunicazioni effettuate sul canale di controllo seguono le raccomandazioni del protocollo Telnet. Così i comandi FTP sono delle stringhe di caratteri Telnet (in codice NVT.- ASCII) terminati dal codice finale di linea Telnet (cioè la sequenza <CR>+<LF>, Carriage Return (ritorno a capo) seguito dal carattere Line Feed, sigla lt;crlf>). Se il comando FTP ammette un parametro, questo è separato dal comando da uno spazio (<SP>). I comandi FTP permettono di precisare : La porta utilizzata Il modo d trasferimento dei dati La struttura dei dati La natura dell'azione da effettuare (Retrieve, List, Store,...) Si distinguono tre tipi di comandi FTP : I comandi da controllo di accesso I comandi da para metraggio di trasferimento I comandi di servizio FTP Comando di controllo d'accesso Comando USER PASS ACCT CWD CDUP Descrizione Stringa di caratteri che permette di identificare l'utente. L'identificazione dell'utente è necessaria per stabilire una comunicazione sul canale dei dati. Stringa di caratteri che specifica la password dell'utente. Questo comando deve essere immediatamente preceduto dal comando USER. Al client conviene mascherare la visualizzazione di questo comando per ragioni di sicurezza Stringa di caratteri che rappresenta l'account dell'utente. Questo comando non è generalmente necessario. Al momento della risposta all'accettazione della password, se la risposta è 230 questa fase non è necessaria, si la risposta è 332, allora lo è. Change Working Directory : questo comando permette di cambiare la cartella corrente. Esso necessita del percorso di accesso alla cartella da raggiungere come argomento Change to Parent Directory : questo comando permette di risalire alla cartella parente. E' stato introdotto per rimediare ai problemi di denominazione di cartelle parenti secondo il sistema (generalmente "..") SMNT Structure Mount : REIN Reinitialize : QUIT Comando che permette di terminare la sessione in corso. Il server aspetta di finire il trasferimento in corso e, se questo avviene, di fornire una risposta prima di chiudere la connessione. Comando dei parametri di trasferimento Comando PORT PASV Descrizione Stringa di caratteri che permette di precisare il numero di porta da usare Comando che permette di indicare al server DTP di aspettare una connessione du una porta specifica scelta casualmente fra quelle disponibili. La risposta a 3-6

questo comando è l'indirizzo IP del terminale e la porta. TYPE STRU MODE Comando RETR STOR STOU APPE ALLO REST RNFR RNTO ABOR DELE RMD MKD PWD LIST Questo comando permette di precisare il tipo di formato in cui i dati saranno inviati Carattere Telnet che precisa la struttura del file (F per File, R per Record, P per Page) Carattere Telnet che precisa il modo di trasferimento dei dati (S per Stream, B per Block, C per Compressed) Comando di servizio FTP Descrizione Questo comando (RETRIEVE) chiede al server DTP una copia del file il cui percorso di accesso è passato in parametri. Questo comando (store) chiede al server DTP di accettare i dati inviati sul canale di dati e di stoccarli nel file che porta il nome passato nei parametri. Se il file non esiste, il server lo crea, altrimenti lo sopprime Questo comando è identico al precedente, se non per il fatto che chiede al server di creare un file il cui nome è unico. Il nome del file è incluso nella risposta Grazie a questo comando (append) i dati inviati sono concatenati nel file che ha il nome passato in parametro se già esistente, in caso contrario esso viene creato Questo comando (allocate) chiede al server di prevedere uno spazio di stoccaggio sufficiente per contenere il file il cui nome è passato in argomento. Questo comando (restart) permette di riprendere un trasferimento al punto dove si era interrotto. Per fare questo il comando invia in parametro evidenziato che rappresenta la posizione nel file alla quale il trasferimento era stato interrotto. Questo comando deve essere immediatamente seguito da un comando di trasferimento. Questo comando (rename from) permette di rinominare un file. Esso indica in parametri il nome del file da rinominare e deve essere immediatamente seguito dal comando RNTO Questo comando (rename to) permette di rinominare un file. Esso indica in parametri il nome del file da rinominare e deve essere immediatamente preceduto dal comando RNFR Questo comando (abort) indica al server DTP di abbandonare tutti i trasferimenti associati al comando precedente. Si nessuna connessione di dati è aperta, il server DTP non fa niente, altrimenti la chiude. Il canale di controllo resta invece aperto. Questo comando (delete) permette di sopprimere il file il cui nome è passato in parametri. Questo comando è irrimediabile, può essere fatta una conferma solo a livello del client. Questo comando (remove directory) permette di sopprimere una cartella. Esso indica in parametri in nome della cartella da sopprimere Questo comando (make directory) permette di creare una cartella. Esso indica in parametri il nome della cartella da creare Questa cartella (print working directory) permette di rinviare il percorso completo della cartella corrente Questo comando permette di rinviare l'elenco dei file e cartelle presenti nella cartella corrente. Questo elenco è inviato sul DTP passivo. E' possibile passare in parametri di questo comando un nome di cartella, il server DTP invierà la lista dei file nella cartella passata in parametri. 4-6

NLST SITE SYST STAT HELP NOOP Questo comando (name liste) permette di inviare l'elenco dei file e cartelle nella cartella corrente Questo comando (site parameters) permette al server di proporre dei servizi specifici, non definiti nel protocollo FTP Questo comando (system) permette di inviare delle informazioni sul server remoto Questo comando (status) permette di emettere lo stato del server, ad esempio per conoscere la progressione di un trasferimento in corso. Questo comando accetta come argomento un percorso d'accesso, esso rinvia allora le stesse informazioni di LIST ma sul canale di controllo. Questo comando permette di conoscere l'insieme dei comandi compresi dal server. Le informazioni sono rinviate sul canale di controllo Questo comando (no operations) serve unicamente ad ottenere un comando OK dal server. Esso può servire unicamente per non essere disconnessi dopo un tempo di inattività troppo lungo Le risposte FTP Le risposte FTP permettono di assicurare la sincronizzazione tra client e server FTP. Così ad ogni comando inviato dal client, il server effettuerà eventualmente un'azione e rinvierà sistematicamente una risposta. Le risposte sono costituite da un codice a 3 cifre indicante il modo in cui il comando inviato dal client è stato trattato. Tuttavia, essendo questo codice a 3 cifre difficilmente leggibile da un essere umano, è accompagnato da un testo (stringa di caratteri Telnet separata dal codice numerico da uno spazio). I codici di risposta sono costituiti da 3 cifre di cui trovate qui di seguito i significati : La prima cifra indica lo stato della risposta (successo o fallimento) La seconda cifra indica a cosa la risposta si riferisce La terza cifra da un significato più specifico (relativo ad ogni seconda cifra) Prima cifra Cifra Significato Descrizione 1 yz 2 yz 3 yz 4 yz 5 yz Risposta preliminare positiva Risposta positiva di realizzazione Risposta intermedia positiva Risposta negativa di realizzazione Risposta negativa permanente Mentre l'azione richiesta è in corso di realizzazione, prima di inviare un secondo comando deve essere ottenuta una seconda risposta Una volta che l'azione richiesta è stata realizzata, si può inviare un nuovo comando L'azione richiesta è temporaneamente sospesa. Si attendono delle informazioni supplementari dal client L'azione richiesta non si è verificata dato che il comando non è stato temporaneamente accettato. Il client è pregato di riprovare più tardi L'azione richiesta non si è verificata dato che il comando non è stato accettato. Il client è pregato di formulare una richiesta differente Seconda cifra Cifra Significato Descrizione x 0 z Sintassi L'azione presenta un errore di sintassi, oppure si tratta di un comando non capito dal server x 1 z Informazione Si tratta di una risposta che rinvia delle informazioni (ad esempio per una risposta ad un comando STAT) x 2 z Connessioni La risposta riguarda il canale di dati 5-6

x 3 z Autentificazione e account La risposta riguarda il login (USER/PASS) o la domanda di cambiamento di account (CPT) x 4 z Non usato dal protocollo FTP x 5 z Sistema di file La risposta riguarda il sistema di file remoto 6-6