Sei sulla pagina 1di 18

FTP

File Transfer Protocol


Cos’è l’FTP?

 FTP(File Transfer Protocol) è un insieme di regole che


consente a due computer di trasferire comandi e dati,
quindi di comunicare
 Si basa sul TCP (Trasmission Control Protocol)
 Utilizza per l’identificazione un username e una password ma
se il server lo consente si può accedere anche in anonimo
 La trasmissione avviene «in chiaro» e non viene quindi
criptata per rendere più sicuro il server si possono
richiedere dei certificati SSL(secure socket layer) o
TLS(transport layer security)
Come funziona?

 A differenza di altri protocolli utilizza due canali per la


comunicazione, uno per i comandi e uno per la
trasmissione dei dati
 PI (Protocol Intepreter) colui
che invia e riceve i
comandi e le risposte
 DTP (Data Transfer Process) colui
che invia e riceve i dati
Vantaggi e svantaggi dell’FTP

 Vantaggi :
 Non ci sono limiti alla dimensione dei file trasferibili
 Possibilità di lavoro asincrono , ossia di non dover accettare
ogni volta la trasmissione di un file
 Svantaggi :
 Banda è limitata ai limiti contrattuali del proprio operatore
 La disponibilità e accessibilità al server dipendono dal
computer su cui è hostato che (probabilmente) verrà
spento frequentemente
Creazione server FTP (Windows 10)

 Per prima cosa


bisogna
cercare il
proprio
indirizzo IPv4
 Ciò può essere
fatto con il
comando
«ipconfig» nel
cmd
Creazione server FTP (Windows 10)
 Poi si deve attivare la «gestione IIS» (Internet Information Services)
 recarsi su : pannello di controllo > Programmi > programmi e funzionalità >
attivazione o disattivazione delle funzionalità di Windows
 Dopo di che individuare ed espandere la voce «Internet Information
Services» e selezionare :
 Server FTP
 Estendibilità FTP
 FTP Service
 Servizi Web
 Strumenti Di Gestione Web
Creazione server FTP (Windows 10)
 Dalla barra di ricerca eseguire «Gestione Internet Information Services (IIS)»
 selezionare host name > Siti > Aggiungi sito FTP

 Si aprirà una schermata dove poter
selezionare le impostazioni base,
come il nome del server e la
directory in cui salvare i file.

Creazione server FTP (Windows 10)
 Nella schermata successiva (Binding e impostazioni SSL) si dovranno inserire l’IP del
proprio PC e la porta che può essere tranquillamente lasciata su 21, ossia quella
generalmente utilizzata

 Quindi spuntare «Avvia sito FTP


automaticamente» e «Nessuna
connessione SSL»
 Nel caso si sia in possesso di un
certificato SSL selezionare
quello

Creazione server FTP (Windows 10)
 L’ultima scheda riguarda l’autorizazione e l’autenticazione degli utenti che si
connettono al server FTP.
 Bisognerà scegliere tra:
 Tutti gli utenti
 Utenti anonimi
 Ruoli o gruppi di utenti specificati
 Utenti specificati


a seconda della scelta verrà chiesto
 di inserire il nome degli utenti),
inoltre bisognerà spuntare i
permessi di lettura e scrittura a
seconda di che potere si vuole
dare agli utenti.

Creazione server FTP (Windows 10)
 L’ultimo passo da fare è abilitare il
server FTP nel firewall
 Per fare ciò recarsi su : Pannello di
controllo > Sistema e sicurezza >
Windows Defender Firewall >
Consenti app o funzionalità
attraverso Windows Defender
Firewall > Modifica impostazioni
 cercare la voce «Server FTP» e
spuntare le voci «Privata» e
«Pubblica».


Creazione server FTP (Windows 10)
 Per acconsentire agli utenti esterni di connettersi
al server è necessario eseguire alcuni
passaggi
 Digitare sulla barra di ricerca del browser l’IP del
proprio Gateway che viene visualizzato nell
ipconfig come «Gateway predefinito»
 Ad esempio = 192.168.1.1
 Accedere e cercare l’opzione Port Mapping
 Creare una nuova regola con :
 Servizio : FTP Server
 Protocollo : TCP (/UDP se possibile)
 Porte : 21
 Host interno : l’IPv4 trovato prima
 Confermare e sloggare

Creazione server FTP (Windows 10)
 Cercare il proprio IP su siti come «whatsmyip» e
condividere quell’ IP per consentire agli utenti di
connettersi
 Se l’IP in questione non è statico sarà necessario ripetere
l’ultimo passaggio ogni volta che viene riavviato il
computer , si consiglia quindi di richiedere un IP statico

Comando ftp da cmd (per Windows)

 Per utilizzare l’ftp scrivere «ftp»


 Le opzioni per questo comando sono :
 -v (comando “verbose”)
 -n (disattiva l’auto-login)
 -I (comando “prompt”)
 -d (comando “debug”)
 -g (comando “glob”)
 -s:filename (apre ed esegue file con comandi ftp)
 ComputerRemoto (si collega direttamente al server richiesto)
Comandi ftp da cmd (per Windows)
● Comando/i ●parametri ●spiegazione
● help / ? ● comando ● stampa le informazioni della guida locale

● open ● computer remoto / IP ● Connette al server ftp remoto

● user ● username ● Cambia utente

● close / disconnect ● / ● termina la sessione ftp

● quit / bye ● / ● termina la sessione ftp ed esce

● ascii / bynary / ● / ● imposta il tipo di trasferimento file a ascii / binario


type
● cd nuova directory
● ● cambia la directory di lavoro remota
remota
● lcd nuova directory locale ● cambia la directory di lavoro locale
● dir / ls ● directory da ● elenca il contenuto della directory remota
visualizare
● mdir / mls ● Directories / file locale ● elenca il contenuto di gruppi di directory remote
● mkdir / rmdir ● directory remota ● crea/elimina una directory sul computer remoto
● put / mput / send ● file locale / File(s) ● invia un file / invia gruppi di file

● get / mget / recv File(s) / file locale ● riceve un file / riceve gruppi di file

● delete / mdelete ● file(s) ● elimina il file remoto / elimina gruppi di file


Comandi ftp da cmd : prt. 2
● Comando/i ● parametri ● spiegazione
● append ● file locale / file remoto ● aggiunge un file ad un altro
● rename ● file remoto / directory ● rinomina un file
● pwd ● / ● stampa la directory di lavoro sul computer remoto
● status ● / ● visualizza lo stato corrente
● verbose ● / ● attiva modalità dettagliata
● bell ● / ● emette un segnale acustico quando viene completato il
comando
● debug ● / ● attiva la modalità debugging

● prompt / ● forza il prompting interattivo sui comandi dei gruppi


● glob ● / ● attiva l'espansione metacarattere dei nomi file locali
● hash ● / ● attiva la stampa di "#" per ogni buffer trasferito
● ! ● comando ● trasferisce alla shell un comando
● remotehelp ● comando remoto ● ricerca la Guida sul server remoto
● literal / quote comando remoto ● invia un comando ftp arbitrario

● trace ● / ● attiva la traccia dei pacchetti


Comandi server (comandi remoti/arbitrari)
 ABOR  FEAT  PBSZ  SMNT
 ACCT  HELP  PORT  STAT
 ADAT  HOST  PROT  STOR
 ALLO  LANG  PWD  STOU
 LIST
 APPE  QUIT  STRU
 MDTM
 AUTH  REIN  SYST
 MIC
 CCC  REST  TYPE
 MKD
 CDUP  RETR  USER
 MODE
 CWD  RMD  XCUP
 NLST
 DELE   RNFR  XCWD
NOOP
 ENC  OPTS  RNTO  XMKD
 EPRT  PASS  SITE  XPWD
 EPSV  PASV  SIZE  XRMD
  

Risposte Server
 Le risposte hanno una parte numerica e una testuale insieme ci fanno comprendere
ciò che accade, la parte testuale è subito interpretabile , mentre per capire il
significato della parte numerica si seguono le seguenti regole
● signal ● significato
● 1xx ● Risposta positiva preliminare
● 2xx ● Risposta positiva definitiva
● 3xx ● Risposta positiva intermedia, (richieste altre azioni)
 Le x indicano che può essere presente
● 4xx ● Risposta negativa temporanea
● 5xx ● Risposta negativa definitiva
qualsiasi altro numero
● signal ● significato  I segnali possono essere combinati tra
● x0x ● Errore di sintassi
loro
● X1x ● Risposta a una richiesta informativa
● X2x ● Risposta relativa alla connessione
● X3x ● Risposta relativa all'account e/o ai permessi
● X4x ● Non meglio specificato
● x5x ● Risposta relativa al file-system
Esempio sessione FTP da cmd

Potrebbero piacerti anche