FTP
L'FTP, acronimo di File Transfer Protocol (protocollo di trasferimento file), è un servizio che fornisce gli elementi fondamentali per la condivisione di file tra host.Gli obiettivi dell'FTP sono:
- promuovere la condivisione di file (programmi o dati)
- incoraggiare l'uso indiretto o implicito (tramite programma) di computer remoti
- salvaguardare l'utente al variare dei sistemi di stoccaggio file, tra un host e l'altro
- trasferire dati in maniera affidabile ed efficiente
http://en2.wikipedia.org/upload/0/0f/Modello_FTP.png |
- PI (protocol interpreter) è l'interprete del protocollo
- DTP (data transfer process) è il processo di trasferimento dati, che stabilisce e gestisce la connessione dati. Può essere attivo o passivo.
- Server PI è il PI del server, che ascolta la porta L in attesa di una connessione dallo User PI e stabilisce la connessione di controllo della comunicazione. Riceve comandi standard FTP dallo User PI, manda risposte e governa il Server DTP.
- Server DTP è il DTP del server, che nello stato normale attivo stabilisce la connessione con la porta in ascolto. Setta i parametri per il trasferimento e lo stoccaggio, e trasferisce i dati a comando. Può essere messo in stato passivo per ascoltare, piuttosto che iniziare una connessione sulla porta dati.
Nome | Comando | Parametri | Descrizione |
Abort | ABOR | Termina la connessione per il trasferimento dei dati | |
Account | ACCT | Alcuni server richiedono un account per accessi specifici, ad esempio per memorizzare file | |
Allocate | ALLO | 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 creato ex-novo | |
Change to parent directory | CDUP | Cambia la directory di lavoro corrente con quella di livello superiore | |
Change working directory | CWD | Cambia la directory di lavoro sul server | |
Delete | DELE | Cancella dal server il file specificato | |
Help | HELP | Restituisce informazioni sul comando specificato | |
List | LIST | 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 | |
Trasfer mode | MODE | Modalità di trasferimento (S=stream, B=block, C=compressed). Il valore di default è S | |
Make directory | MKD | Crea sul server la directory indicata | |
Name list | NLST | Elenca il contenuto della directory indicata | |
Noop | NOOP | Indica nessuna azione tranne l'invio di un Ok dal server | |
Password | PASS | Completa, per alcuni server, l'identificazione dell'utente. Deve essere immediatamente preceduta dal comando USER | |
Passive | PASV | Mette il server in ascolto su una porta che non è quella predefinita in attesa di una connessione dati | |
Data port | PORT | Indirizzo internet dell'host e indirizzo TCP della porta, per la connessione dati | |
Print working directory | PWD | Nella risposta viene indicato il nome della directory corrente | |
Logout | QUIT | Disconnette l'utente e chiude la connessione di controllo. Se i file sono ancora in trasferimento, attende che terminino prima di chiudere le connessioni | |
Reinitialize | REIN | Resetta tutti i parametri, termina le connessioni dati ma mantiene quelle di controllo ed aspetta un comando USER | |
Restart | REST | 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 | |
Rename to | RNTO | Indica il nuovo nome del file da rinominare, indicato dal comando RNFR immediatamente precedente | |
Site parameters | SITE | 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 | |
Structure mount | SMNT | Inserisce la struttura di file specificata | |
Status | STAT | È una risposta inviata dal server: durante il trasferimento di file contiene lo stato dell'operazione, oppure tra un trasferimento e l'altro e allora ha lo stesso significato del comando LIST | |
Store | STOR | Obbliga il server ad accettare i dati inviati tramite la connessione dati e salvarli | |
Store unique | STOU | Obbliga il server ad accettare i dati inviati tramite la connessione dati e salvarli con un nome univoco | |
File structure | STRU | Codice della struttura dati (F=file, R=record, P=page). Il valore di default è F | |
System | SYST | Restituisce il sistema operativo in uso sul server | |
Representation type | TYPE | Tipo di rappresentazione dei dati (A=ASCII, E=EBCDIC, I=binary). Il valore di default è A | |
User Name | USER | Identificazione dell'utente richiesta dal server per poter accedere al suo file system |
Risorse esterne (in inglese):