FTP Server e Client - Smashing Code

Transcript

FTP Server e Client - Smashing Code
FTP Server e Client
Il protocollo FTP (1/3)
Il File Transfer Protocol (FTP) (protocollo di
trasferimento file), è un Protocollo per la
trasmissione di dati tra host basato su
TCP.
Un server FTP offre svariate funzioni tra cui:
* Download/upload di file.
* Rimozione e rinomina di file.
* Creazione di directory.
* Navigazione tra directory.
Luigi Santangelo
[email protected]
Il protocollo FTP (2/3)
FTP fornisce inoltre un sistema di
autenticazione (N.B. in chiaro) degli
accessi. Il client che si connette potrebbe
dover fornire delle credenziali in base ai
privilegi per poter operare sul filesystem.
L'autenticazione "anonima" prevede che il
client non specifichi nessuna password di
accesso e che lo stesso abbia privilegi che
sono tipicamente di "sola lettura".
Luigi Santangelo
[email protected]
Il protocollo FTP (3/3)
Leggere
Ftp attivo vs. Ftp passivo
http://smashingcode.altervista.org/index.php
?mod=read&id=1278599432
Luigi Santangelo
[email protected]
Installazione FTP Server (1/3)
Come server FTP utilizzeremo CrossFTP
scaricabile dall'indirizzo
http://www.crossftp.com/crossftpserver.htm
È un software opensource, multipiattaforma,
con possibilità di definire directory virtuali,
write permission, idle timeout,
upload/download bandwidth limitation,
monitoring all the user activities,
anonymous login, IP restriction, ecc.
Luigi Santangelo
[email protected]
Installazione FTP Server (2/3)
Scaricare il Packeg di installazione:
http://www.crossftp.com/crossftp-all-bin.zip
Decomprimere il pacchetto, aprire il prompt
dei comandi, portarsi dentro la cartella,
quindi eseguire il comando:
java -cp crossftpserver.jar;commonslogging.jar;jnlp.jar
org.apache.ftpserver.gui.ServerFrame
Luigi Santangelo
[email protected]
Installazione FTP Server (3/3)
È sufficiente impostare il nome e la
password dell'utente, e gli indirizzi IP
abilitati alla connessione. Verificare che il
server sia avviato.
Luigi Santangelo
[email protected]
Installazione FTP Client
Oltre al server, è necessario possedere un
programma client in grado di comunicare
con il server: Filezilla.
Luigi Santangelo
[email protected]
Backup
Cos'è un backup
Consiste nella conservazione di materiale
allo scopo di prevenire perdite parziali o
totali di dati informatici memorizzati nelle
memorie di massa.
L'attività deve essere eseguita
periodicamente con appositi strumenti
software. Generalmente, dopo
un'opportuna configurazione, avviene in
maniera automatica.
Luigi Santangelo
[email protected]
Soluzioni di Backup (1/4)
Disk Image:
Consiste nella creazione dell'immagine del
disco intero. Generalmente si usa un
software che viene caricato in live durante
il boot e provvede a fare una copia del
disco lavorando a basso livello. La copia
viene eseguita su un supporto esterno
(DVD) o in rete ed è possibile eseguire un
restore SOLO sulla macchina su cui è
stato eseguito il backup. [...]
Luigi Santangelo
[email protected]
Soluzioni di Backup (2/4)
Disk Image:
[…] Esempi di software sono: Ghost,
Acronis True Image, Macrium Reflect, ecc.
Backup manuale:
Classico backup eseguito con una copia
manuale dei dati su un dispositivo esterno
(hard disk). Richiede parecchio tempo
(bisogna indicare tutti i file da backuppare)
Luigi Santangelo
[email protected]
Soluzioni di Backup (3/4)
Backup Schedulato:
Simile al precedente, ma con la differenza
che è un software che si occupa di
eseguire le operazioni di copia. I
programmi di backup generalmente
permettono di definire le directory source e
target, la frequenza e I tempi del backup.
Uno dei migliori programmi di backup è
Areca Backup (di cui parleremo avanti) [...]
Luigi Santangelo
[email protected]
Soluzioni di Backup (4/4)
Backup Schedulato:
Generalmente i software di backup sono in
grado di eseguire backup incrementali, in
cui la copia avviene mantenendo
sincronizzati i dati tra client e server.
Inoltre il target può essere locale o in rete.
Questa soluzione è generalmente la
preferita in ambito commerciale in cui
viene utilizzato un server predisposto per il
salvataggio dei dati
Luigi Santangelo
[email protected]
Areca backup
Utilizziamo Areca Backup o Cobian Backup
per creare un backup incrementale
eseguito su server FTP.
Luigi Santangelo
[email protected]
Cloud Computing
Cos'è il Cloud Computing (1/3)
È una tecnologia che consente di elaborare
e memorizzare dati su risorse distribuite e
trasparente.
Distribuite: I dati vengono elaborati o
memorizzati in una server farm;
Trasparenti: l'utente non sa (e nemmeno ha
bisogno di saperlo) dove fisicamente si
trovano le risorse
Luigi Santangelo
[email protected]
Cos'è il Cloud Computing (2/3)
Attraverso una piattaforma, il cloud
provider fornisce alcuni servizi, spesso
secondo un modello “pay-per-use” agli
utenti.
I servizi possono essere sfruttati anche
tramite browser accessibili da qualunque
dispositivo, sia via cavo che in wireless.
Spesso, gli utenti si avvalgono di
Amministratori, che si occupano di
eseguire attività straordinarie (es. backup)
Luigi Santangelo
[email protected]
Cos'è il Cloud Computing (3/3)
Luigi Santangelo
[email protected]
Tipi di Cloud Computing (1/6)
Si distinguono tre diverse tipologie di CC:
IaaS (Infrastructure as a Service): l'utente
che acquista un servizio riceve una
virtualizzazione dell'hardware di un
computer tradizionale. In questo modo
l'utente non deve preoccuparsi
dell'aggiornamento dell'hardware. Ad
esempio, un cliente potrebbe acquistare
tre server virtuali per offrire un servizio
web. [...]
Luigi Santangelo
[email protected]
Tipi di Cloud Computing (2/6)
IaaS: [...] l'utente non dovrà preoccuparsi di
gestire le macchine fisicamente (se ne
occupa il provider) ma è compito
dell'utente (o dell'amministratore) gestire
le macchine (es. Bilanciamento del carico,
aggiornamento Sistema Operativo). Per
quanto riguarda i costi, generalmente
viene fatturato solo l'effettivo “consumo”
(ad esempio se uno dei tre server viene
spento, non viene incluso nel costo). [...]
Luigi Santangelo
[email protected]
Tipi di Cloud Computing (3/6)
PaaS (Platform as a Service): il fornitore
offre una infrastruttura, pertanto l'utente
non dovrà preoccuparsi di bilanciare il
carico o di installare il db, ma di
configurare il servizio secondo gli standard
predefiniti dal fornitore. In questo caso
l'utente ha meno flessibilità (es, se la
piattaforma è LAMP, non posso sviluppare
il Java o altrimenti devo rivolgermi ad un
altro provider). [...]
Luigi Santangelo
[email protected]
Tipi di Cloud Computing (4/6)
PaaS: […] Un esempio concreto di PaaS è
Google App Engine, che pretende che
l'applicazione sia scritta in Java o in
Python. Generalmente questo servizio si
paga in modalità Flat (si sceglie un livello
di prestazioni che il provider deve
garantire, ad esempio spazio su disco,
larghezza di banda, ecc.) e si paga a
cadenza mensile. [...]
Luigi Santangelo
[email protected]
Tipi di Cloud Computing (5/6)
SaaS (Software as a Service): Il provider
fornisce un servizio software (una
applicazione) che a sua volta appoggia su
una infrastruttura. Esempi di Saas sono le
webmail, i CRM o le classiche Google
Apps (es. calendar, writer, spreadsheet,
ecc).
Luigi Santangelo
[email protected]
Tipi di Cloud Computing (6/6)
Luigi Santangelo
[email protected]
Backup su SaaS (1/2)
Uno dei più diffusi servizi offerti come
servizio (SaaS) è il servizio di backup.
Dropbox è un software multipiattaforma che
offre un servizio di file hosting. La versione
gratuita del programma permette fino a
2GB estensibili fino a 10GB (si
guadagnano 250 MB per ogni nuova
persona invitata che si registri al sito e
installi il software sul proprio computer).
Luigi Santangelo
[email protected]
Backup su SaaS (2/2)
Luigi Santangelo
[email protected]
Creare un Personal Cloud (1/8)
Come possiamo creare un cloud personale,
sul quale caricare file dal PC e poi
recuperarli tramite cellulari o altri
computer? Tonido!
Tonido permette di crearti gratuitamente il
tuo cloud. è un software che ha
applicazioni utili per condividere files,
gestire torrent, fare il backup locale,
remoto od in cloud e molto altro.
Luigi Santangelo
[email protected]
Creare un Personal Cloud (2/8)
Tonido esiste in due versioni, quella
freeware e quella a pagamento, com'è mia
abitudine fare presento quella gratuita.
Di default Tonido contiene già le applicazioni
indispensabile, se se ne vogliono di più si
potranno installare direttamente dal
pannello di controllo che è nel browser di
Tonido una volta avviato il programma
Luigi Santangelo
[email protected]
Creare un Personal Cloud (3/8)
• Tonido Torrent (Per scaricare i tuoi torrent)
• Tonido Jukebox (Per riprodurre la tua
musica)
• Tonido Money (Per gestire le tue finanze)
• Tonido Search (Per trovare file nel tuo
computer)
• Tonido Webshare (Per condividere nel
web file)
• Tonido Thots ( Per crearti un blog)
Luigi Santangelo
[email protected]
Creare un Personal Cloud (4/8)
Installazione:
Colleghiamoci al sito http://www.tonido.com
e selezioniamo il download che fa al caso
nostro.
Installiamo e facciamo partire l’applicazione
e creiamo il nostro account compilando i
campi richiesti
Luigi Santangelo
[email protected]
Creare un Personal Cloud (5/8)
Quando create un account vi daranno un
indirizzo come questo:
http://nomeutente.tonido.id.com, per
accedere al vostro account basta che
inseriate il vostro indirizzo personale.
Luigi Santangelo
[email protected]
Creare un Personal Cloud (6/8)
Oltre all'installazione lato server, è
necessario che sul client dal quale si
intende accedere a Tonido, vi sia la
versione client. Quindi, ad esempio è
possibile installare la versione Client su
iPhone. Qui vanno riportati alcuni dati:
Server: (indirizzo visualizzato alla fine della
registrazione;
Account e Password: vostro username;
Luigi Santangelo
[email protected]
Creare un Personal Cloud (7/8)
Esistono inoltre alcune applicazioni di terze
parti che, gratuitamente, offrono ulteriori
funzionalità. Ad esempio, NetDrive o
BitKinex permettono di condividere (su
windows client) una cartella tramite resa
pubblica tramite Tonido.
Luigi Santangelo
[email protected]
Creare un Personal Cloud (8/8)
Luigi Santangelo
[email protected]