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



Documenti analoghi
Il protocollo FTP (File Transfer Protocol)

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

il trasferimento di file

Reti di Telecomunicazione Lezione 7

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

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

Protocolli applicativi: FTP

URI. Introduzione. Pag. 1

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

Sistema di gestione Certificato MANUALE PER L'UTENTE

MyFRITZ!, Dynamic DNS e Accesso Remoto

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

MANUALE UTENTE FORMULA PEC

LABORATORIO DI TELEMATICA

I Principali Servizi del Protocollo Applicativo

Allegato 3 Sistema per l interscambio dei dati (SID)

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

Servizi Remoti. Servizi Remoti. TeamPortal Servizi Remoti

Istruzioni per la configurazione di Internet Explorer

Sommario. Modulo 8: Applicativi. Parte 3: Terminale remoto. Premessa Telnet SSH XWindows VNC RDP. Gennaio Marzo 2007

Lezione n 1! Introduzione"

Digital Persona Client/Server

Cenni di programmazione distribuita in C++ Mauro Piccolo

Come installare e configurare il software FileZilla

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

Integrazione InfiniteCRM - MailUp

Reti di Calcolatori. Il Livello delle Applicazioni

Prima di iniziare la procedura d installazione, verificare che siano disponibili tutte le informazioni e le attrezzature necessarie

Firewall e Abilitazioni porte (Port Forwarding)

Omnia Web Timesheet. Manuale utente

MANUALE UTENTE Fiscali Free

PORTALE CLIENTI Manuale utente

Inizializzazione degli Host. BOOTP e DHCP

Web 4164ETH Rel Lug 2010

Configurazione WAN (accesso internet)

ACCESSO AL PORTALE VPN

Software Servizi Web UOGA

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

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

Transmission Control Protocol

ENTRATEL: Servizio telematico Agenzia delle Entrate

<Portale LAW- Lawful Activities Wind >

Guida all Utilizzo dell Applicazione Centralino

Manuale per la configurazione di AziendaSoft in rete

COLLEGAMENTO ALLA M.C.T.C. PER DECURTAZIONE PUNTI PATENTE

Realizzazione siti web. Protocolli Internet

11/02/2015 MANUALE DI INSTALLAZIONE DELL APPLICAZIONE DESKTOP TELEMATICO VERSIONE 1.0

GUIDA TECNICA ALLA RENDICONTAZIONE SU SIRIO

Approfondimento di Marco Mulas

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

AVCP Generatore di XML

Introduzione alle applicazioni di rete

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

Aruba Sign 2 Guida rapida

Guida alla registrazione on-line di un DataLogger

BACKUP APPLIANCE. User guide Rev 1.0

DINAMIC: gestione assistenza tecnica

MANUALE UTENTE. In questo manuale verranno descritte tutte le sue funzioni. Il sistema OTRS è raggiungibile al seguente link:

Ubiquity getting started

Configurazione FileZilla Server

Programma di configurazione di reti NetWare

Upload del CMS sul server scelto

LA GESTIONE DELLE VISITE CLIENTI VIA WEB

MC-link Lan+ Connessione e configurazione del router PRESTIGE 100

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

View Mobile User s Guide

Reti e Sistemi per l Automazione MODBUS. Stefano Panzieri Modbus - 1

Procedura SMS. Manuale Utente

FPf per Windows 3.1. Guida all uso

SIEMENS GIGASET S450 IP GUIDA ALLA CONFIGURAZIONE EUTELIAVOIP

Servizio di Posta elettronica Certificata (PEC)

InterNet: rete di reti

Reti di Telecomunicazione Lezione 6

12.5 UDP (User Datagram Protocol)

Configurazione account per libreria MXOutlook

ATOLLO BACKUP GUIDA INSTALLAZIONE E CONFIGURAZIONE

Controllo Winsock di Visual Basic

Procedura di abilitazione alla Rete di Lombardia Integrata

IRSplit. Istruzioni d uso 07/10-01 PC

Infrastruttura wireless d Ateneo (UNITUS-WiFi)

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

Indice GAMMA. Guida utente

TERMINALE. Creazione e gestione di una postazione terminale di Eureka

INFN Sezione di Perugia Servizio di Calcolo e Reti Fabrizio Gentile Enrico Becchetti

TRASMISSIONE REPORTISTICA MENSILE. WEB SERVICE Descrizione procedura

Software di gestione della stampante

Do-Dots Protocollo di comunicazione

Procedure per l upgrade del firmware dell Agility

SAP SRM 7 Manuale GARE ON LINE con cfolders FORNITORI INDICE

Introduzione ai protocolli di rete Il protocollo NetBEUI Il protocollo AppleTalk Il protocollo DLC Il protocollo NWLink Il protocollo TCP/IP

Le Reti Informatiche

SIEMENS GIGASET S450 IP GUIDA ALLA CONFIGURAZIONE EUTELIAVOIP

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

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

HORIZON SQL CONFIGURAZIONE DI RETE

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

NAVIGAZIONE DEL SI-ERC: UTENTE PROGETTISTA

WebFax- manuale utente

Transcript:

Modulo 8: Applicativi Parte 5: FTP e TFTP 1 Storia Introduzione a FTP Reti di Calcolatori 2 1

Introduzione a FTP (1) Protocollo di trasferimento dati tra macchine connesse attraverso una rete che supporta TCP/IP. Il primo standard FTP (RFC 114) nasce nel 1971, in ARPANet. Lo definizione dello standard attuale ad opera dell IETF (RFC 959) e e del 1985. Reti di Calcolatori 3 Introduzione ad FTP (2) Si basa sul modello client/server: Il server FTP viene eseguito sulla macchina che accede fisicamente ai file e attende richieste. Il client FTP si collega al server e puo richiedere al server operazioni inerenti il trasferimento dati. Il trasferimento dati ed il controllo delle operazioni avviene via TCP Il server ascolta sulla porta TCP 21 Reti di Calcolatori 4 2

Le connessioni FTP Per ogni sessione FTP sono necessarie due connessioni TCP tra client e server: Control connection, connessione attraverso la quale vengono iviati i comandi e le risposte del server Data connection, connessione attraverso la quale vengono iviati dati veri e propri Reti di Calcolatori 5 Control connection (1) Il canale di controllo o control connection vinene stabilito dal client che utilizza una porta TCP locale (> 1024) per connettersi alla porta 21 del server. La connessione richiede una sessione di autenticazione (access control) tramite username e password seguita da una resource selection (il server decide quali risorse mettere a disposizione del utente) Reti di Calcolatori 6 3

Control connection (2) La sessione di autenticazione avviene in modo semplice tramite l invio di username e password tramite i comandi USER e PASS e delle relative risposte del server. Una volta verificate le credenziali dell utente il server configura il tipo di accesso associato (permessi di scrittura e lettura su diversi tipi di file o directory). Tramite il comando ACCT il client puo decidere a quale tipo di account locale (del server) essere associato. Reti di Calcolatori 7 Control connection (3) Reti di Calcolatori 8 4

Control connection (3) E diffusa la pratica di consentire un accesso anonimo (anonymous FTP), generalmente richiedendo come username anonymous e come password un indirizzo email I client ftp utilizzano email fasulle: Firefox: mozilla@example.com Wget: wget@ Reti di Calcolatori 9 Data connection (1) Il canale di trasferimento dati o data connection viene stabilito dopo l autenticazione ma solo nel momento in cui vi siano dati da trasmettere (directory listing, file trasfert) La connessione dati puo essere stabilita in due modi: active mode o passive mode Reti di Calcolatori 10 5

Data connection (2) In active mode il client si connette al server sulla porta 21 (control( connection) ) e, prima del trasferimento dati, si mette in ascolto su una porta TCP (>1024). Il client notifica al server, attraverso la connessione di controllo, il numero di porta su cui si e messo in ascolto Il server si connette con la porta suddetta dalla porta 20 aprendo cosi la data connection Inizia il trasferimento dati. Reti di Calcolatori 11 Data connection (3) Active mode FTP Reti di Calcolatori 12 6

Data connection (3) In passive mode apre la control connection sulla porta 21 del server. Il server, alla richiesta di trasmissione dati, apre una porta TCP (>1024) e trasmette attraverso la connessione di controllo il numero della porta. Il client si connette alla porta suddetta aprendo cosi la data connection. Inizia il trasferimento dati. Reti di Calcolatori 13 Data connection (5) Passive mode FTP Reti di Calcolatori 14 7

Data connection (5) L active mode e e piu indicato dal punto di vista della sicurezza del server (solo due porte utilizzabili 20/TCP e 21/TCP) Il passive mode permette connessioni con il client dietro NATting (e il client ad iniziare la connessione di trasferimento dati) Esistono soluzioni di connection tracking che permettono di adattare il NATting all active active mode FTP Reti di Calcolatori 15 Tipi di trasmissione dati Quando la data connection e e stata stabilita,, la trasmissione dei dati puo avvenire in 3 modi: Stream mode: : i dati vengono inviati bit a bit e la trasmissione finisce quando la connessione viene interrotta Block mode: : i dati vengono divisi in blocchi e racchiusi in frame FTP. E E utile in quanto permette una verifica della trasmissione Compress mode: : la trasmissione viene compressa mediante un algoritmo rudimentale.. E E utile solo se i dati non sono gia compressi Reti di Calcolatori 16 8

Formato dei dati (1) E possibile in FTP definire il tipo di dati che devono essere trasmessi. Esistono due tipologie principali: ASCII: : file di testo strutturati secondo la codifica ASCII. La trasmissione avviene per carattere.. Utile quando i sistemi operativi condificano in maniera diversi alcuni caratteri speciali (es.: Unix vs. Windows) Binary: : file generici.. La trasmissione avviene bit a bit, senza che l applicativo tenti di interpretare il contenuto Reti di Calcolatori 17 Formato dei dati (2) Esistono altri due formati (EBCDIC e local) ma non sono quasi piu utilizzati. E importante non trasmettere dati binari in ASCII mode, in quanto verrebbero corrotti. Alcune implementazioni di FTP tentano di riconoscere automaticamente il formato dei dati. Reti di Calcolatori 18 9

Comandi interni al protocollo (1) Attraverso la connessione di controllo il client invia al server una serie di istruzioni o protocol commands.. Ad ogni comando segue una risposta del server. I comandi si dividono in 3 gruppi: Access control commands: fanno parte della procedura di login e gestiscono l acesso alle risorse Transfer parameter command: specificano i parametri di trasferimento e di connessione (tipo di dati,, active, passive) FTP service command: tutti i comandi che permettono di eseguire materialmente la trasmissione dei dati Reti di Calcolatori 19 Comandi interni al protocollo (2) La struttura dei comandi e la stessa di TELNET Ogni comando e una stringa seguita da un parametro Reti di Calcolatori 20 10

Nome Account Password Logout Change to parent directory Change working directory Reinitialize Structure mount User Name Access control command Comando ACCT PASS QUIT CDUP CWD REIN SMNT USER Parametri <accountinformation> <password> <username> Descrizione Alcuni server richiedono un account per accessi specifici, ad esempio per memorizzare file Invia la password dell utente Disconnette l'utente e chiude la connessione di controllo. Cambia la directory di lavoro corrente con quella di livello superiore Cambia la directory di lavoro sul server Resetta tutti i parametri, termina le connessioni dati. Inserisce la struttura di file specificata Identificazione dell'utente richiesta dal server Reti di Calcolatori 21 Transfer parameter commands Trasfer mode MODE <mode-code> Modalità di trasferimento (S=stream, B=block, C=compressed). Il valore di default è S Representatio n type TYPE <type-code> Tipo di rappresentazione dei dati (A=ASCII, I=binary). Il valore di default è A Passive PASV Configura la connessione dati in passive mode Data port PORT <host-port> Indirizzo internet dell'host e indirizzo TCP della porta, per la connessione dati in active mode Reti di Calcolatori 22 11

Nome Abort Service commands (1) Comando ABOR Parametri Descrizione Termina la connessione per il trasferimento dei dati Allocate ALLO <decimalinteger> Alcuni server lo richiedono per riservare spazio sufficiente per contenere i nuovi file da trasferire Append (with create) APPE Obbliga il server ad accettare i dati inviati tramite la connessione dati e salvarli in un file. Se il file esiste già i dati vengono aggiunti, altrimenti il file viene creatoex-novo Delete DELE Help HELP List LIST <string> Cancella dal server il file specificato Restituisce informazioni sul comando specificato Se l'argomento indica un file, elenca le proprietà del file; se l'argomento è una directory, il server trasferisce una lista di file nella directory Reti di Calcolatori 23 Make directory Name list Service commands (2) MKD NLST Crea sul server la directory indicata Elenca il contenuto della directory indicata Noop NOOP Indica nessuna azione tranne l'invio di un Ok dal server Restart REST <marker> Riprende il trasferimento file dall'offset indicato Retrieve RETR Obbliga il server a spedire una copia del file all'utente/server dall'altra parte della connessione Remove directory RMD Rimuove dal server la directory specificata Rename from RNFR Indica il vecchio nome del file da rinominare. Deve essere immediatamente seguito da un RNTO Reti di Calcolatori 24 12

Service commands (3) Rename to Site parameters Status Store Store unique System RNTO SITE STAT STOR STOU SYST <string> Indica il nuovo nome del file da rinominare, indicato dal comando RNFR Comando usato dal server per fornire servizi specifici del suo sistema che sono essenziali per il trasferimento dei file ma non sufficientemente universali per essere inclusi come comandi del protocollo È una risposta inviata dal server: durante il trasferimento di file contiene lo stato dell'operazione Obbliga il server ad accettare i dati inviati tramite la connessione dati e salvarli Obbliga il server ad accettare i dati inviati tramite la connessione dati e salvarli con un nome univoco Restituisce il sistema operativo in uso sul server Reti di Calcolatori 25 FTP replies (1) La risposta ad un comando FTP avviene attraverso un codice di tre cifre (reply code) che puo essere seguito da una descrizione dipendente dall implementazione del server Ognuna delle tre cifre (x,y,z)) ha un significato differente: X: indica il fallimento o il successo di una operazione e gli stati intermedi Y: indica il motivo del fallimento o del successo Z: parametro specifico Reti di Calcolatori 26 13

Formato codice 1yz 2yz 3yz 4yz 5yz FTP replies (2) significato Risposta positiva temporanea Risposta positiva definitiva Risposta positiva intermedia Risposta negativa temporanea Risposta negativa definitiva descrizione Il comando e stato accettato ma il client deve attendere la risposta definitiva Il comando e stato accettato Il comando e stato accettato ma necessita un altra azione per essere completato Il comando non e e stato accettato ma il problema e temporaneo Il comando non e e stato accettato Reti di Calcolatori 27 FTP replies (3) Formato codice x0z x1z x2z x3z x4z x5z significato Sintassi Informazione Connessione Autenticazione Non specificato Filesystem descrizione Errore di sintassi Richiesta di ulteriori informazioni Risposta al tentativo di connessione dati Risposta all autenticazione autenticazione o accounting --- Risposta relativa al filesystem locale al server Reti di Calcolatori 28 14

FTP replies (4) Es.: Errore 530 = Errore di autenticazione (username o password errata) E possibile ricevere risposte composte da piu linee (ad es.. i banner di login): 230 Benvenuto in ftp.ge.infn.it 230 230 Sei il #30 utente di 100 ammessi 230 logged in Reti di Calcolatori 29 User interface (1) La user interface permette di svolgere azioni, anche complesse, digitando un numero limitato di comandi (es.: copiare ricorsivamente il contenuto di una directory, copia con caratteri speciali) Esistono user interface a linea di comando (di solito integrate nei SSOO) o user interface grafiche (GUI) Reti di Calcolatori 30 15

User interface (2) La user interface a linea di comando si lancia digitando il comando ftp seguito dall FQDN del server. GUI: Windows: FileZilla,, WSFTP, SmartFTP, Linux: gftp, Kasablanca, ftpcube, MacOSX: : Fetch, Cyberduck, FTPeel, Reti di Calcolatori 31 Criticita di FTP FTP non implementa un meccanismo di cifratura dei dati: e vulnerabile allo sniffing Utilizza due connessioni TCP (control e data) quindi e piu difficile da gestire dal punto di vista del NATting Alta latenza dovuta al numero e al formato dei comandi Non possiede un meccanismo di controllo dell integrita integrita dei dati Non possiede un meccanismo di controllo dell errore errore (usa quello di TCP) Non trasferisce glio attributi dei file (data di accesso e di modifica) Reti di Calcolatori 32 16

TFTP TFTP (Trivial FTP), nasce per soddisfare l esigenza di un protocollo di file transfer piu semplice di FTP che richidesse programmi (client e server) di dimensioni ridotte Viene utilizzato da apparecchiature dotate di poca memoria, da PC diskless o da sistemi di installazione remota via PXE La versione attuale (TFTP version 2, revision 2) e descritta dall RFC1350 del 1992 Reti di Calcolatori 33 Differenze tra TFTP ed FTP Trasporto: : TFTP utilizza UDP come strato di trasporto mentre FTP si basa su TCP Comandi: : TFTP puo solo inviare o ricevere dati. Formato dei dati: : TFTP accetta solo rappresentazione dei dati ASCII o binaria Autenticazione: : TFTP non ha meccanismo di autenticazione Reti di Calcolatori 34 17

Connessione TFTP Il server TFTP ascolta sulla porta 69/UDP Il client invia dati da una porta A casuale (>1024) Il server decide di rispondere da una porta B casuale (>1024) alle richieste del client Il controllo ed il trasferimento dati avviene sullo stesso canale identificato dalle due porte A e B Reti di Calcolatori 35 Problemi di TFTP La totale mancanza di sicurezza rende TFTP inadatto ad essere un sostituto di FTP. Deve essere utilizzato in casi particolari Avendo un solo canale per il controllo e lo scambio di dati,, TFTP ha problemi di performance. Non deve essere utilizzato per trasferimenti grandi moli di dati. Reti di Calcolatori 36 18