Simulazione della rete Internet:

Dimensione: px
Iniziare la visualizzazioe della pagina:

Download "Simulazione della rete Internet:"

Transcript

1 Corso di Sicurezza su reti II Anno accademico Prof. A. De Santis Simulazione della rete Internet: Versione finale

2 Parte prima: INFORMAZIONI GENERALI NOME DEL GRUPPO DENOMINAZIONE g2isp ISP2 COMPONENTI Barone Ivo Laurino Domenico MISSIONE Implementazione di un portale web commerciale che offra web authoring e web hosting, registrazione domini e spazio web a terzi. PROGETTO L'intenzione del gruppo è di realizzare la missione utilizzando tutti strumenti Open Source che risultino affidabili e facilmente reperibili e che naturalmente non comportino acquisto e rinnovo di licenze. La scelta è caduta così sull'utilizzo di un Web Server ( Apache ) unito ad un DBMS ( MySQL ) con il quale si interagirà mediante un linguaggio di script ( PHP ). Quest'ultimo è indicato anche per la creazione del portale web da realizzare. Affinchè le operazioni più delicate avvengano in maniera sicura è ritenuto fondamentale l'utilizzo di certificati ( mediante OpenSSL ). Vi è inoltre l'intenzione di consentire agli utenti registrati l'upload dei propri file mediante protocollo FTP ( ProFTPD ) ma con un certo limite sullo spazio a disposizione ( Quota o soluzione del Sistema Operativo ). Come firewall verrà utilizzato il tool di sistema iptables, la cui configurazione verrà illustrata in fase di descrizione e implementazione dei servizi. Parte seconda: SCHEDA TECNICA DESCRIZIONE SERVIZI MANUALE DI UTILIZZO Lo scopo del gruppo è quello di fornire servizi di Web Hosting e di Web Authoring e di registrazione di domini per conto terzi. Gli utenti per accedere ai servizi offerti devono essere registrati. Inoltre è prevista la messa in opera di un portale web attraverso il quale i clienti possano inviare la descrizione e eventuali mock ups delle pagine web del sito che intendono realizzare. Si prevede anche la possibilità, per gli utenti registrati, di poter accedere tramite ftp direttamente alle pagine del proprio sito in modo da poterle modificare loro stessi. E' previsto inoltre il supporto per siti web dinamici mediante l'uso di pagine Php. IMPLEMENTAZIONE { Come il gruppo evade le richieste dei clienti. Procedure, tempi e compiti } Parte terza: FASE DI SETUP ORGANIZZAZIONE RISORSE HARDWARE Entrambi i componenti del gruppo si sono occupati dell installazione dei software e della redazione della presente documentazione 1 pc assemblato con le seguenti caratteristiche: processore : AMD Athlon 550 Mhz

3 Memoria Ram : 128MB Scheda video : Matrox mga G200 Hard Disk : ATA Disk 19GB Lettore cd : Philips 48X Scheda di rete : VT86C100A di VIA Technolologies, Inc. Scheda audio : Ensoniq 5880 audiopci STRUMENTI SOFTWARE Sistema operativo : Ubuntu 6.06 LTS x86 Software installati: Apache OpenSSL 0.9.8e Mysql Php Proftpd INSTALLAZIONE SOFTWARE UBUNTU 6.06 LTS x86 Il Sistema Operativo utilizzato è la distribuzione Ubuntu 6.06 LTS ( Long Term Support ) per sistemi di tipo x86. Tale scelta è stata dettata dalla maggiore conoscenza del tipo di distribuzione da parte dei componenti del gruppo e da una importante caratteristica della stessa: quando si parla di Long Term Support ci si riferisce ad una distribuzione per la quale è garantito un totale supporto a livello di sviluppo ed eventuali correzioni per diversi anni oltre che i fondamentali aggiornamenti di sicurezza; in questo caso la garanzia dura fino al Una distribuzione di questo tipo è indicata per un sistema destinato a fornire servizi web commerciali, di web hosting ed authoring. Ubuntu 6.06 è stato installato utilizzando l ALTERNATE CD, ovvero la distribuzione supportata dai sistemi con scarse risorse hardware in quanto la macchina in dotazione rientrava in questa categoria, e completa di tutti i package necessari ed aggiuntivi; molti dei package installati in maniera automatica sono stati rimossi in quanto inutili ai fini della missione del gruppo. L interfaccia grafica utilizzata è stata la XFCE, molto più leggera ed efficace rispetto alle altre interfacce normalmente utilizzate GNOME e KDE. La procedura di installazione è stata quella automatica scegliendo tuttavia di non lasciare allo stesso sistema operativo la creazione del server LAMP, acronimo di Linux Apache Mysql Php, nel qual caso le configurazioni dei vari software sarebbero state automatiche oltre che gli stessi applicativi utilizzati sarebbero stati quelli presenti sul CD di installazione. L installazione è stata portata a termine senza problemi di alcun tipo. APACHE Il Web Server utilizzato è Apache 2.2.4, la versione più recente all atto della stesura del documento. Tale scelta è dovuta ad una richiesta di maggiore stabilità e sicurezza da parte del gruppo ; tale versione infatti dovrebbe fare propri i pregi delle versioni 2.0.x e risolverne i bug oltre tutti quelli delle versioni 2.2.x fino a quella utilizzata. La pregressa conoscenza di un web server di tale tipo ha influenzato la scelta del gruppo. La procedura di installazione si è composta di diversi passi; il primo di questi ha riguardato l unzip dell archivio di Apache httpd tar.gz in una specifica cartella del filesystem omessa per motivi di

4 sicurezza. Dalla cartella httpd ottenuta è stato eseguito con permessi di root il comando./configure lanciando così lo script di configurazione con la seguente scelta di flags: --with-mpm=prefork --enable-ssl --with-ssl=/usr/local/ssl/ --disable-charset-lite --disable-include --disable-env --enable-setenvif --disable-status --disable-asis --disable-cgi --disable-negotiation --disable-imap --disable-actions --disable-userdir Terminata la configurazione sono stati eseguiti gli ultimi due passi, quelli relativi alla compilazione vera e propria, ovvero i comandi make e make install. La compilazione non ha dato particolari problemi previa l installazione di alcuni package aggiuntivi non presenti nel repository del CD di installazione del Sistema Operativo e non forniti dall archivio del web server. Gli unici errori in fase di compilazione infatti sono stati relativi all assenza di pacchetti necessari per il supporto di determinati moduli del web server. OPENSSL 0.9.8e Il progetto OPENSSL, del quale si utilizza la versione 0.9.8e, è nato per sviluppare un toolkit robusto, completo di tutte le funzioni utili, sicuro dal punto di vista commerciale ed Open Source che implementi i due protocolli di sicurezza: Secure Sockets Layer ( SSL v2 / v3 ) e Transport Layer Security ( TLS v1 ). Il progetto è coordinato da una comunità mondiale di volontari che comunicano tramite Internet ed attraverso esso pianificano e sviluppano il kit e la relativa documentazione. OpenSSL si basa sulla libreria SSLeay sviluppata da Eric A. Young e Tim J. Hudson e quindi la licenza del tool in effetti è di tipo doppio : una licenza per OpenSSL ed una per SSLeay. In questa situazione il kit può essere usato anche per scopi commerciali a patto di rispettare le due licenze. I componenti principali forniti sono rappresentati da tre librerie fondamentali: - libssl.a: Implementazione di SSL v 2, SSL v 3, TLS v 1 ed il codice richiesto per il supporto dei protocolli lato client e lato server - libcrypto.a : Consente operazioni crittografiche generali e fornisce l implementazione dello standard X.509 v 1 / v 3 richiesto dai protocolli SSL / TLS. Tale libreria contiene una serie di routines relative a: - Schemi Crittografici Simmetrici ed Asimmetrici ( chiave Pubblica / Privata ) come DES, RC4, RC2, BLOWFISH, IDEA, RSA, DSA, Diffie - Hellman - Funzioni Hash quali MD5, MD2, SHA, SHA 1, MDC2, ed infine una funzione per smart cards basata su DES. - Certificati nello standard X.509 v 3 con supporto per crittografia RSA e DSA. - Utility di Sistema e supporto di strutture dati.

5 - openssl : tool utilizzabile da linea di comando grazie al quale è possibile accedere alle molteplici funzionalità citate in precedenza Per poter installare OpenSSL è necessaria la presenza del comando make, che sia presente Perl 5, che sia installato un compilatore ANSI C e che vi sia un ambiente di sviluppo in forma librerie di sviluppo e header files C. Soddisfatti i prerequisiti la procedura di installazione si è svolta in quattro fasi, una di configurazione e tre di compilazione. Innanzitutto è stato eseguito il comando. / configure al fine di lanciare lo script di configurazione con le opzioni di default ritenute sufficienti per il corretto funzionamento ed utilizzo del tool ( non escludendo a priori un ritocco della configurazione in caso di problemi allo stato attuale non verificatisi ). La prima fase di compilazione è stata eseguita mediante il comando make; terminato il passo è stato eseguito il comando make test il cui compito è quello di verificare se vi sono stati problemi non rilevati in precedenza. Non avendo riscontri negativi si è passati all ultima fase della procedura con l esecuzione del comando make install. La procedura non è stata caratterizzata da alcun tipo di errore. MYSQL MySql è un database management system open source. Date le sue caratteristiche di performance, alta affidabilità e facilità d'uso si è pensato fosse ideale per sviluppare i servizi richiesti. La procedura di installazione è stata portata a termine mediante la classica procedura dei sistemi UNIX based, quindi una volta scaricato il codice sorgente si è provveduto a lanciare i comandi./configure make make install Per completare l'installazione si è reso necessario installare alcuni moduli aggiuntivi non presenti sul sistema operativo in uso. Per portare a termine la commessa si era provveduto ad effettuare un upgrade del server MySql alla versione con la speranza che essa supportasse senza problemi la connessione sicura remota al server. Nonostante il tentativo di connettersi in modo sicuro al server non sia andato a buon fine, il gruppo ha deciso comunque di mantenere la nuova configurazione del server. PHP PHP ( acronimo per "PHP : Hypertext Preprocessor" ) è un linguaggio di script general - purpose utilizzato per lo sviluppo Web e che può essere utilizzato ( o meglio inglobato ) all'interno del codice HTML. Ciò che distingue PHP da linguaggi di script client - side come JavaScript è l'esecuzione del codice sul server; molto importante risulta anche la sua curva di apprendimento per i nuovi utenti i quali in poco tempo possono scrivere script server-side. PHP consente di creare anche script da linea di comando e applicazioni desktop anche se queste due funzionalità sono quelle meno usate. Non è obbligatorio avere quale input HTML ma il linguaggio consente anche di gestire file PDF, XHTML e file XML ; fornisce anche la possibilità di interagire con un DBMS ( in tal caso MySQL ).

6 La possibilità di abilitare il supporto per OpenSSL ha confermato la scelta di PHP quale linguaggio di script da utilizzare per compiere la missione affidata. La procedura di installazione come nel caso del web server Apache ha richiesto i tre passi : primo passo di configurazione e successivi passi di compilazione. Nella prima fase è stata caratterizzata dall'esecuzione dello script di configurazione configure con le seguenti opzioni : --with-apxs2=/usr/local/apache2/bin/apxs --with-mysql --prefix=/usr/local/php --with-config-file-path=/usr/local/php --enable-force-cgi-redirect --disable-cgi --with-zlib --with-gettext --with-gdbm --enable-ssl=/usr/local/ssl/ Come è possibile vedere tra le opzioni è stato indicato il path di installazione nonchè l'abilitazione del supporto per MySQL e SSL con indicazione del path di installazione di quest'ultimo. Una volta eseguito lo script si è passati alle successive fasi della procedura di installazione: con i comandi make e make install si è provveduto alla definitiva compilazione. Come consiglia ogni manuale di PHP, per testare l'installazione è stata creato uno script con una chiamata alla funzione phpinfo la quale, in caso di avvenuta e corretta installazione, restituisce tutti i dati della stessa, sia quelli relativi alle funzionalità generali che quelli relativi a moduli ed estensioni aggiuntive. Nell'arco della procedura non sono stati riscontrati problemi. In un secondo momento si è deciso di ricompilare Php specificando l'ulteriore opzione --with-mysqli=/usr/local/mysql/bin/mysql_config che permetteva l'uso di librerie più innovative per l'accesso al database MySql. PROFTPD ProFTPD è un server ftp scritto per le diverse varianti di unix. E' stato progettato per essere molto simile ad Apache prendendo molte delle idee da esso, tra le quali metodi di configurazione e la progettazione a moduli. L'installazione di ProFTPD è stata effettuata con la classica procedura di installazione sui sistemi Linux based: CFLAGS=-DHAVE_OPENSSL LIBS=-lcrypto./configure --prefix=/usr/local/proftpd - with-modules=mod_sql:mod_sql_mysql:mod_tls :mod_quotatab:mod_quotatab_sql - withincludes=/usr/local/mysql/include/mysql:/usr/local/ssl/include -with-libraries=/usr/local/mysql/lib/mysql:/usr/local/ssl/lib make make install Come è possibile notare dai flag di configurazione è stato integrato il modulo di connessione al database mysql e il modulo di openssl per sfruttarne gli algoritmi di cifratura per crittografare le passwords degli utenti all'interno del database. Inoltre è stato aggiunto il supporto per Quota per gestire le quote degli utenti.

7 Nel file di configurazione l'utente speciale "anonimous" non è stato abilitato in quanto ritenuto non necessario per l attività del gruppo. Il demone è stato configurato in modo tale da poter gestire i login di utenti virtuali, ossia di utenti non presenti nel sistema, e gestire la quota associata ad ogni utente. WEBMIN Per la amministrazione del nostro server abbiamo utilizzato il software web based Webmin. Con questo strumento è possibile configurare tutto il software necessario per la realizzazione della nostra commessa che abbiamo citato nei paragrafi precedenti. E' stato inoltre possibile configurare il firewall IPTABLES in modo semplice ed efficace. All'atto dell'installazione, avvenuta mediante il package di installazione per Debian disponibile sul sito, abbiamo preferito non consentire l'avvio allo start up di Webmin, ma avviarlo noi in modo manuale allorchè avessimo necessità di usarlo. Siccome Apache, MySql e Proftpd non sono stati installati nei loro path di default, abbiamo dovuto configurare Webmin in modo da indicare i path dei files all'interno del nostro server. Come atto finale abbiamo configurato il firewall IPTABLES del quale parleremo nel prossimo paragrafo. IPTABLES Il software IPTABLES è stato utilizzato per filtrare i pacchetti in ingresso e in uscita dal nostro server. Attraverso l'interfaccia web fornita da Webmin abbiamo inserito le seguenti regole: Permesso connessioni in ingresso attraverso la porta 80 usando il protocollo TCP.(WWW) Permesso connessioni in ingresso attraverso la porta 443 usando il protocollo TCP.(HTTPS) Permesso connessioni in ingresso attraverso la porta 3306 usando il protocollo TCP dall'indirizzo (MySql) Permesso a tutti i pacchetti che provenivano dall'interfaccia lo. Drop di tutti gli altri pacchetti. La regola 3 è stata successivamente cancellata in quanto non più necessaria per la realizzazione della commessa. NMAP NMAP è un software free per l'esplorazione delle reti. Nato con lo scopo di rendere rapida la scansione di grandi reti, funziona bene anche per la scansione di singoli hosts.con NMAP è possibile utilizzare i pacchetti IP per individuare quali hosts sono disponibili sulla rete, quali servizi essi ofreno, quale sistema operativo è in uso, quale packet/filter viene utilizzato e molte altre caratteristiche. Per l'installazione sono state seguite le istruzioni presenti sul sito insecure.org. Si è proceduto con la

8 classica terna di passi./configure make make install L'installazione non ha portato all'installazione di pacchetti aggiuntivi. NMAP è stato utilizzato principalmente per eseguire scansioni periodiche sul nostro server al fine di scoprire se fossero presenti servizi attivi non desiderati e come primo approccio per individuare la presenza di attacchi. Parte quarta: FASE DI TUNING SERVIZI RICHIESTI RICHIESTE EFFETUATE Per il corretto e regolare svolgimento della nostra attività abbiamo bisogno di un certificato intestato alla nostra società per poter gestire le connessioni sicure sul nostro sito web. Inoltre avremo bisogno di certificati intestati ad ognuno dei nostri clienti per poter permettere loro connessioni sicure. Inoltre abbiamo bisogno di registrare i nomi di dominio per conto nostro e dei nostri clienti. Sono state effettuate due richieste specifiche, la prima al server DNS di assegnazione dell indirizzo di rete e la seconda alla Certification Authority per ottenere un valido certificato da utilizzare in futuro. RICHIESTE RICEVUTE Nessuna richiesta ricevuta Parte quinta: COMMESSE TITOLO DESCRIZIONE SINTETICA GRUPPI DESCRIZIONE SPECIFICHE Informatica Granata Realizzazione del sito di e-commerce Informatica-granata.com per la vendita on-line di PC ed hardware convenzionato con "UfficialePagatore" Gruppo 2 e 3 (Internet Service Provider) Il sito comprende alcune pagine esplicative, un catalogo navigabile e, per gli utenti registrati, il listino prezzi, il carrello per la spesa e la possibilita' di acquisto on-line, tramite il sistema implementato da "UfficialePagatore.com". Per gli utenti che hanno effettuato almeno 10 acquisti e' previsto uno sconto del 20% sul prezzo di listino. Si richiede l'implementazione del sito Informatica Granata e più precisamente: 1. Gestione anagrafica clienti 2. Gestione catalogo e listino (con apposito pannello amministratori) 3. Gestione utenti amministratori 4. Carrello della spesa 5. Interfaccia col sistema di pagamento U.P. Si richiede la registrazione di almeno 30 utenti ed un catalogo di almeno 20

9 prodotti di diversa prezzatura SOLUZIONE PROPOSTA LAVORO COMPIUTO La soluzione proposta segue lo schema previsto dal protocollo definito nello specifico documento; il sito web di Informatica Granata utilizza il web server Apache ed il DBMS MySQL, mentre dal punto di vista della sicurezza si ci è affidati ad OpenSSL. Inizialmente la soluzione proposta prevedeva una suddivisione dei vari livelli dell applicazione tra i server dei gruppi 2 e 3; secondo tale decisione i livelli di presentazione e di logica dell applicazione avrebbero risieduto sulla macchina del gruppo 3 mentre il database sarebbe stato creato e mantenuto sul nostro server, il server del gruppo 2. Nella sezione Difficoltà Incontrate verranno presentati anche i motivi che hanno condotto alla revisione delle scelte iniziali; nonostante i cambiamenti effettuati le scelte fondamentali e gli approcci per la realizzazione dell applicazione sono rimasti immutati. In generale si è scelto di creare un sito web dinamico mediante PHP al fine di consentire l interazione con gli utenti/clienti del negozio e con l applicazione preposta al pagamento degli ordini eseguiti in maniera sicura. L interazione con l utente avviene mediante form da compilare con l indicazione di dati ed input specifici per la richiesta di servizi; la soluzione proposta viene descritta in dettaglio nella documentazione relativa e rispecchia ciò che è stato definito nel protocollo. Il nostro gruppo si è occupato della creazione e della gestione del database SHOP fondamentale per l attività del sito Informatica Granata; ciò vuol dire che oltre alla definizione delle associazioni e delle tabelle è stata fornita una serie di funzioni che i programmatori dell applicazione hanno utilizzato per implementare le funzionalità del Sistema. Gli strumenti utilizzati per lo svolgimento del proprio incarico sono stati MYSQL e PHP. Mysql è il Database Management System installato in fase di setup della simulazione sulla nostra macchina e scelto per i motivi indicati nel documento di riepilogo di tale fase. Lo stesso vale per PHP, linguaggio di script server-side, scelto in quanto installato in fase di setup ed utilizzato dal Gruppo 3 per l implementazione delle funzionalità del sito Informatica Granata. L attività si è concretizzata nella creazione del succitato database e di un oggetto PHP, MyDBManager caratterizzato da tutti i metodi necessari ai programmatori del Gruppo 3 per il loro lavoro; in tal modo il nostro compito è stato quello di creare la struttura necessaria alla memorizzazione dei dati e di fornire funzioni predefinite d accesso a questi. La scelta della creazione di quest interfaccia è servita a separare in maniera molto netta la logica di applicazione da quella di memorizzazione dei dati. All interno del gruppo, o meglio della coppia, l organizzazione del lavoro è stata alquanto orizzontale con una sommaria suddivisione dello stesso come segue: Creazione Database - I. Barone Interazione Database - D. Laurino Come già detto, la separazione dei compiti è sommaria e non netta in quanto

10 i due tipi di attività hanno richiesto una costante interazione, una volta determinato in coppia il modello ER da utilizzare. L interazione non ha banalmente interessato solo i componenti del gruppo ma ha coinvolto anche, ed in maniera molto forte, i membri del Gruppo 3 A. Bruno, F. Di Perna e F. Granato. La definizione del modello ER è derivata dal processo di raccolta dei requisiti; tale raccolta si è basata sulla descrizione della commessa e soprattutto sulle richieste ed esigenze del gruppo collaboratore. Allo stesso modo le funzioni da fornire al Gruppo 3 sono state realizzate, e modificate in corso d opera, sulla base di quanto lo stesso gruppo ha ritenuto necessario al fine della realizzazione delle funzionalità. Il Database SHOP si compone di 5 tabelle: 1. Customers : utilizzata per memorizzare le informazioni relative ai clienti di Informatica Granata come Codice Fiscale, Nominativo, Indirizzo, Uname, Password e l indicazione dei privilegi di Amministratore 2. Orders : contiene i dati caratteristici di ogni ordine effettuato, quali Codice, Cliente che effettua l ordine, il Totale, la Data in cui esso è stato effettuato e se esso è stato confermato o è ancora sospeso 3. Products : sono presenti tutte le informazioni relative ai prodotti del negozio, il Codice, il Nome, la Descrizione, il Prezzo, la Quantità presente in magazzino ed il path del file che contiene la foto dell oggetto 4. Prod_Ord : è la tabella che nasce dall associazione esistente tra il prodotto ordinato e l ordine in cui lo è stato; vengono indicati il Codice del Prodotto e dell Ordine e la quantità ordinata 5. Tokens : questa è la struttura che memorizza i token utilizzati dall applicazione Informatica Granata, con il riferimento al Codice ed al Contenuto Vengono presentate di seguito le istruzioni SQL che hanno permesso la creazione del database DROP TABLE IF EXISTS 'Customers'; CREATE TABLE 'Customers' ( 'CF' varchar(16) NOT NULL, 'NAME' varchar(50) default NULL, 'ADDRESS' varchar(100) default NULL, 'UNAME' varchar(20) default NULL, 'PASSWORD' varchar(8000) default NULL, 'ADMINISTRATOR' enum('true','false') default 'False', PRIMARY KEY ('CF') ) ENGINE=MyISAM DEFAULT CHARSET=latin1; DROP TABLE IF EXISTS 'Orders'; CREATE TABLE 'Orders' (

11 'COD_ORDER' int(11) NOT NULL auto_increment, 'CUSTOMER' varchar(16) default NULL, 'TOT_ORDER' double(12,2) default NULL, 'STATUS' enum('suspended','closed') default 'Suspended', 'DATE' datetime default NULL, PRIMARY KEY ('COD_ORDER'), KEY 'CUSTOMER' ('CUSTOMER') ) ENGINE=MyISAM DEFAULT CHARSET=latin1; DROP TABLE IF EXISTS 'Prod_Ord'; CREATE TABLE 'Prod_Ord' ( 'PRODUCT' int(11) NOT NULL, 'COD_ORDER' int(11) NOT NULL, 'QTY' int(11) default NULL, PRIMARY KEY ('PRODUCT','COD_ORDER'), KEY 'COD_ORDER' ('COD_ORDER') ) ENGINE=MyISAM DEFAULT CHARSET=latin1; DROP TABLE IF EXISTS 'Products'; CREATE TABLE 'Products' ( 'COD_PROD' int(11) NOT NULL auto_increment, 'NAME' varchar(50) default NULL, 'DESCRIPTION' varchar(8000) default NULL, 'PRICE' double(9,2) default NULL, 'QTY' int(11) default NULL, 'PHOTO' varchar(256) default NULL, PRIMARY KEY ('COD_PROD') ) ENGINE=MyISAM DEFAULT CHARSET=latin1; DROP TABLE IF EXISTS 'Tokens'; CREATE TABLE 'Tokens' ( 'ID' int(11) NOT NULL, 'TOKEN' text, PRIMARY KEY ('ID') ) ENGINE=MyISAM DEFAULT CHARSET=latin1; Una volta concretizzata la definizione del modello ER si può passare alla descrizione dell interfaccia creata. Si è scelto di realizzare un oggetto PHP, denominato MyDBManager, molto simile ad un classico oggetto Java. All interno del costruttore viene gestita la connessione al database in modo che essa sia unica ed utilizzabile per tutte le operazioni consentite; nell applicazione, per poter accedere alle funzionalità da noi fornite, i programmatori hanno dovuto istanziare un oggetto di tipo MyDBManager e

12 poi utilizzarlo invocandone i metodi. L oggetto in esame contiene funzionalità per: Login di Utenti ed Amministratori Gestione Utenti con modifiche dati Elenco Utenti e Dati Utente Specifico Gestione Prodotti con modifiche dati Catalogo Prodotti e Dati Prodotto Specifico Gestione ed Elenco Ordini e Prodotti Ordinati Gestione di Timeout e Conferma Ordini Dal punto di vista della sicurezza ci sono tre aspetti fondamentali che sono stati trattati. Innanzitutto è stata valutata le possibilità di collocazione del database all interno del Sistema; la scelta era tra il server del nostro gruppo oppure quello del Gruppo 3. E stata scelta la prima opzione; questo ha comportato una misura di sicurezza da noi considerata necessaria, ovvero la connessione sicura al db utilizzando il parametro che consente di sfruttare SSL. Questa accortezza serve per evitare che le query eseguite sul database viaggino in chiaro sulla rete dal momento che i metodi vengono invocati sul server del Gruppo 3 ma i dati sono sulla nostra macchina. Il secondo aspetto riguarda l implementazione dell oggetto MyDBManager al fine di evitare che l applicazione risulti vulnerabile ad attacchi di SQL Injection. Come è possibile notare nel codice sorgente, per ogni metodo dell oggetto, sono state utilizzate le due funzioni predefinite PHP addslashes e stripslashes con le quali aggiungere e rimuovere alle/dalle stringhe da gestire tutti gli slash necessari per l inserimento ed il reperimento nel/dal database dei caratteri speciali. PHP fornisce tali metodi al fine di consentire agli sviluppatori la difesa delle proprie applicazioni dall injection senza implementare funzioni proprie che potrebbero contenere errori o non considerare ogni caso possibile. Il terzo aspetto ed ultimo aspetto riguarda la gestione e considerazione delle operazioni sul database quali transazioni ovvero unità atomiche di elaborazione; si presuppone che tutte le operazioni che costituiscono una transazione vengano eseguite in isolamento da altre transazioni. Anche se a prima vista tale approccio sembra non riguardare la sicurezza dell applicazione, invece esso si rivela importante in quanto contribuisce all efficienza del Sistema e permette di limitare o evitare addirittura possibili danni dovuti ad attacchi DoS, Denial of Service. Le modifiche di eventuali query sul database vengono memorizzate e diventano effettive solo quando viene eseguito il commit della transazione, ovvero quando questa viene confermata in quanto correttamente terminata; in caso di abort nessun dato viene modificato nel database. Per indicare inizio e fine di una transazione, l oggetto PHP utilizza due metodi privati che vengono invocati dalle funzionalità che modificano il database; ognuna delle caratteristiche dell oggetto creato per fornire i servizi richiesti può essere reperita nel codice sorgente allegato alla documentazione del lavoro del gruppo e dell intera commessa. La gestione degli aspetti di sicurezza succitati riguarda unicamente il lavoro del nostro gruppo e quindi non sono esclusi interventi ed ulteriori politiche di

13 sicurezza da parte degli altri gruppi che lavorano al progetto e che verranno eventualmente descritti nella documentazione finale della commessa o dell intera simulazione del singolo gruppo. DIFFICOLTA INCONTRATE Nell ambito dello sviluppo dell applicazione e nelle fasi di creazione del database e dell interfaccia per accedervi sono state diverse le difficoltà incontrate. La più importante ha riguardato l utilizzo del Secure Socket Layer (SSL) nella comunicazione tra il server dove risiedeva il sito web (gruppo 3) ed il nostro host sul quale avevamo creato il database SHOP; avendo optato per la separazione dei livelli del Sistema è stato definito prioritario avere una comunicazione sicura tra i nodi dello stesso. L esecuzione di ogni query sul DB avviene a cavallo della rete e quindi si è scelto di non far viaggiare in chiaro i dati relativi a tali operazioni. Per fare ciò, inizialmente la connessione al database veniva effettuata con il parametro MYSQL_SSL_CLIENT sfruttando la funzione PHP mysql_connect. Tale funzione viene tuttora invocata un unica volta nel costruttore dell oggetto MyDBManager, al fine di averne l esecuzione all atto dell istanziazione dello stesso e di poterla utilizzare per ogni richiesta dell applicazione. L indicazione del parametro per l utilizzo di SSL permette la connessione sicura al DB e la cifratura di ogni query eseguita sullo stesso. Purtroppo quello che era stato ipotizzato non si è verificato in quanto sono stati riscontrati dei problemi all atto della comunicazione sicura fra i due nodi. Tali problemi sono stati causati da MySQL del quale a quanto pare la comunità acnora non è riuscita a risolvere tutti i malfunzionamenti. Per ovviare a questo problema infatti si è effettuato anche un upgrade del server portandolo all ultima versione disponibile al momento della stesura di questo documento, la Nonostante il tentativo fallito il gruppo ha comunque deciso di mantenere l upgrade. La soluzione è stata quella di spostare il database sul server del gruppo 2 rinunciando all utilizzo della connessione sicura mediante il parametro sopra citato e velocizzando anche i tempi di risposta per i servizi dal momento che le query vengono eseguite in locale. Le altre difficoltà sono state di minore importanza ed hanno riguardato la definizione dello schema relazionale da adottare in termini di consistenza, efficienza e di quelle che erano le richieste dei componenti del gruppo 2. L ultima difficoltà è stata quella relativa alla gestione delle transazioni SQL, con il reperimento on-line delle operazioni necessarie per la loro implementazione; la soluzione stata trovata grazie all analisi di alcuni esempi presenti in rete e che prevedevano l esecuzione di particolari query sul database come LOCK TABLE WRITE, START TRANSATION e COMMIT con le quali bloccare in scrittura le tabelle, cominciare una transazione ed indicare la riuscita esecuzione della stessa. L utilizzo di tali query è stato racchiuso in due metodi privati con lo scopo di fare tutto il necessario per dare inizio e terminare una transazione.

14 Bibliografia Ubuntu Documentation. (n.d.). Retrieved Jul 13, 2007, from Ubuntu: (n.d.). Retrieved July 13, 2007, from and-ssl-support-in-debian-etch.html Apache Documentation. (n.d.). Retrieved July 13, 2007, from Apache: Kabir, M. J. (2002). Apache Server 2 Bible. New York: Hungry Minds, Inc. MySQL Documentation. (n.d.). Retrieved July 13, 2007, from MySQL: OpenSSL Documentation. (n.d.). Retrieved July 13, 2007, from OpenSSL: Php Documentation. (n.d.). Retrieved July 13, 2007, from PHP: ProFTPD: Highly configurable GPL-licensed FTP server software. (n.d.). Retrieved April 24, 2007, from Timme, F. (n.d.). Apache2-SSi-PHP5-HowTo(+ ZEND Optimizer and IonCubeL Loader). Retrieved Apr 24, 2007, from

Registro elettronico scuola ospedaliera rel. 7.0

Registro elettronico scuola ospedaliera rel. 7.0 Registro elettronico scuola ospedaliera rel. 7.0 MANUALE DI INSTALLAZIONE 1/12 MANUALE DI INSTALLAZIONE Informazione per gli utenti Il registro elettronico è un applicazione software sviluppata con licenza

Dettagli

Corso di Web programming Modulo T3 A2 - Web server

Corso di Web programming Modulo T3 A2 - Web server Corso di Web programming Modulo T3 A2 - Web server 1 Prerequisiti Pagine statiche e dinamiche Pagine HTML Server e client Cenni ai database e all SQL 2 1 Introduzione In questa Unità si illustra il concetto

Dettagli

Introduzione ai servizi di Linux

Introduzione ai servizi di Linux Introduzione ai servizi di Linux Premessa Adios è un interessante sistema operativo Linux basato sulla distribuzione Fedora Core 6 (ex Red Hat) distribuito come Live CD (con la possibilità di essere anche

Dettagli

Servizio Sistemi Informativi SPERIMENTAZIONE DI RETI PRIVATE VIRTUALI CON L'UTILIZZO DI SOFTWARE OPEN SOURCE

Servizio Sistemi Informativi SPERIMENTAZIONE DI RETI PRIVATE VIRTUALI CON L'UTILIZZO DI SOFTWARE OPEN SOURCE Servizio Sistemi Informativi SPERIMENTAZIONE DI RETI PRIVATE VIRTUALI CON L'UTILIZZO DI SOFTWARE OPEN SOURCE Redatto: Nucleo Gestione Innovazione e fornitori IT Versione: 1.0 Data emissione: 9/11/2006

Dettagli

DATABASE IN RETE E PROGRAMMAZIONE LATO SERVER

DATABASE IN RETE E PROGRAMMAZIONE LATO SERVER DATABASE IN RETE E PROGRAMMAZIONE LATO SERVER L architettura CLIENT SERVER è l architettura standard dei sistemi di rete, dove i computer detti SERVER forniscono servizi, e computer detti CLIENT, richiedono

Dettagli

Server dolphin: installazione e configurazione di un server web

Server dolphin: installazione e configurazione di un server web Università degli Studi G. D Annunzio Chieti Pescara GASL - Gruppo assistenza sistemistica laboratori Server dolphin: installazione e configurazione di un server web Seminario di Carlo Capuani Cos è un

Dettagli

Questo punto richiederebbe uno sviluppo molto articolato che però a mio avviso va al di là delle possibilità fornite al candidato dal tempo a disposizione. Mi limiterò quindi ad indicare dei criteri di

Dettagli

Esercitazione 8. Basi di dati e web

Esercitazione 8. Basi di dati e web Esercitazione 8 Basi di dati e web Rev. 1 Basi di dati - prof. Silvio Salza - a.a. 2014-2015 E8-1 Basi di dati e web Una modalità tipica di accesso alle basi di dati è tramite interfacce web Esiste una

Dettagli

Database e reti. Piero Gallo Pasquale Sirsi

Database e reti. Piero Gallo Pasquale Sirsi Database e reti Piero Gallo Pasquale Sirsi Approcci per l interfacciamento Il nostro obiettivo è, ora, quello di individuare i possibili approcci per integrare una base di dati gestita da un in un ambiente

Dettagli

Referti on-line Service Monitor Manuale d installazione. Versione 1.0

Referti on-line Service Monitor Manuale d installazione. Versione 1.0 Referti on-line Service Monitor Manuale d installazione Versione 1.0 Sommario 1 - Ambiente server e pre-requisiti... 3 2 - Dove scaricare il pacchetto di installazione... 3 3 - Installazione... 3 3.1 -

Dettagli

Riferimento rapido per l'installazione SUSE Linux Enterprise Server 11

Riferimento rapido per l'installazione SUSE Linux Enterprise Server 11 Riferimento rapido per l'installazione SUSE Linux Enterprise Server 11 NOVELL SCHEDA INTRODUTTIVA Seguire le procedure riportate di seguito per installare una nuova versione di SUSE Linux Enterprise 11.

Dettagli

Gestione del database Gidas

Gestione del database Gidas Gestione del database Gidas Manuale utente Aggiornamento 20/06/2013 Cod. SWUM_00535_it Sommario 1. Introduzione... 3 2. Requisiti e creazione del Database Gidas... 3 2.1.1. SQL Server... 3 2.1.2. Requisiti

Dettagli

SSL VPN Accesso Remoto Sicuro

SSL VPN Accesso Remoto Sicuro SSL VPN Accesso Remoto Sicuro Accesso con Network Connect per Linux Pagina 1 I l Servizio SSL VPN permette agli utenti istituzionali di realizzare una connessione da qualsiasi parte del mondo (Internet)

Dettagli

Server web e protocollo HTTP

Server web e protocollo HTTP Server web e protocollo HTTP Dott. Emiliano Bruni (info@ebruni.it) Argomenti del corso Cenni generali sul web IIS e Apache Il server web Micsosoft Internet Information Server 5.0 Il server web Apache 2.0

Dettagli

SCP: SCHEDULER LAYER. a cura di. Alberto Boccato

SCP: SCHEDULER LAYER. a cura di. Alberto Boccato SCP: SCHEDULER LAYER a cura di Alberto Boccato PREMESSA: Negli ultimi tre anni la nostra scuola ha portato avanti un progetto al quale ho partecipato chiamato SCP (Scuola di Calcolo Parallelo). Di fatto

Dettagli

Autenticazione utente con Smart Card nel sistema Linux

Autenticazione utente con Smart Card nel sistema Linux Autenticazione utente con Smart Card nel sistema Linux Autenticazione con Speranza Diego Frasca Marco Autenticazione Linux Basata su login-password - ogni utente ha una sua login ed una sua password che

Dettagli

Tratte da (18. TECNICHE DI ACCESSO AI DATABASE IN AMBIENTE INTERNET)

Tratte da (18. TECNICHE DI ACCESSO AI DATABASE IN AMBIENTE INTERNET) Tratte da (18. TECNICHE DI ACCESSO AI DATABASE IN AMBIENTE INTERNET) Ipotesi di partenza: concetti di base del networking Le ipotesi di partenza indispensabili per poter parlare di tecniche di accesso

Dettagli

Guida all installazione di METODO

Guida all installazione di METODO Guida all installazione di METODO In questo documento sono riportate, nell ordine, tutte le operazioni da seguire per una corretta installazione di Metodo. Per procedere con l installazione è necessario

Dettagli

Ministero dell Istruzione dell Università e della Ricerca M070 ESAME DI STATO DI ISTITUTO TECNICO INDUSTRIALE

Ministero dell Istruzione dell Università e della Ricerca M070 ESAME DI STATO DI ISTITUTO TECNICO INDUSTRIALE Pag. 1/1 Sessione ordinaria 2010 Seconda prova scritta Ministero dell Istruzione dell Università e della Ricerca M070 ESAME DI STATO DI ISTITUTO TECNICO INDUSTRIALE CORSO DI ORDINAMENTO Indirizzo: INFORMATICA

Dettagli

Installazione SQL Server 2005 Express Edition

Installazione SQL Server 2005 Express Edition Supporto On Line Allegato FAQ FAQ n.ro MAN-6S4ALG7637 Data ultima modifica 25/08/2010 Prodotto Tutti Modulo Tutti Oggetto Installazione SQL Server 2005 Express Edition In giallo sono evidenziate le modifiche/integrazioni

Dettagli

ISTRUZIONI INSTALLAZIONE PMANGO

ISTRUZIONI INSTALLAZIONE PMANGO ISTRUZIONI INSTALLAZIONE PMANGO Software necessario: PMango richiede un Web server funzionante con PHP e MySQL e un Web browser. Web server: Apache almeno alla versione 2.0.52 (www.apache.org) PHP: consigliata

Dettagli

CMS (Content Management System) della categoria Open Source

CMS (Content Management System) della categoria Open Source Una panoramica sui CMS (Content Management System) CMS (Content Management System) della categoria Open Source Per la piattaforma PHP/MYSQL e considerata l esigenza sempre più ricorrente di realizzare

Dettagli

Corso GNU/Linux - Lezione 6. Davide Giunchi - davidegiunchi@libero.it

Corso GNU/Linux - Lezione 6. Davide Giunchi - davidegiunchi@libero.it Corso GNU/Linux - Lezione 6 Davide Giunchi - davidegiunchi@libero.it Riepilogo TCP/IP Ogni host nella rete deve avere un proprio indirizzo ip Due o piu computer nella stessa rete, per poter comunicare

Dettagli

SISTEMI E RETI. Crittografia. Sistemi distribuiti e configurazione architetturale delle applicazioni WEB.

SISTEMI E RETI. Crittografia. Sistemi distribuiti e configurazione architetturale delle applicazioni WEB. SISTEMI E RETI Crittografia. Sistemi distribuiti e configurazione architetturale delle applicazioni WEB. CRITTOGRAFIA La crittografia è una tecnica che si occupa della scrittura segreta in codice o cifrata

Dettagli

Corso di Informatica Modulo T3 B1 Programmazione web

Corso di Informatica Modulo T3 B1 Programmazione web Corso di Informatica Modulo T3 B1 Programmazione web 1 Prerequisiti Architettura client/server Elementi del linguaggio HTML web server SQL server Concetti generali sulle basi di dati 2 1 Introduzione Lo

Dettagli

HORIZON SQL CONFIGURAZIONE DI RETE

HORIZON SQL CONFIGURAZIONE DI RETE 1-1/9 HORIZON SQL CONFIGURAZIONE DI RETE 1 CARATTERISTICHE DI UN DATABASE SQL...1-2 Considerazioni generali... 1-2 Concetto di Server... 1-2 Concetto di Client... 1-2 Concetto di database SQL... 1-2 Vantaggi...

Dettagli

Il DBMS Oracle. Express Edition. Donatella Gubiani e Angelo Montanari

Il DBMS Oracle. Express Edition. Donatella Gubiani e Angelo Montanari Gubiani & Montanari Il DBMS Oracle 1 Il DBMS Oracle Express Edition Donatella Gubiani e Angelo Montanari Il DBMS Oracle Il DBMS Oracle Oracle 10g Express Edition Il DBMS Oracle (nelle sue versioni più

Dettagli

19. LA PROGRAMMAZIONE LATO SERVER

19. LA PROGRAMMAZIONE LATO SERVER 19. LA PROGRAMMAZIONE LATO SERVER Introduciamo uno pseudocodice lato server che chiameremo Pserv che utilizzeremo come al solito per introdurre le problematiche da affrontare, indipendentemente dagli specifici

Dettagli

Introduzione all elaborazione di database nel Web

Introduzione all elaborazione di database nel Web Introduzione all elaborazione di database nel Web Prof.ssa M. Cesa 1 Concetti base del Web Il Web è formato da computer nella rete Internet connessi fra loro in una modalità particolare che consente un

Dettagli

3. Come realizzare un Web Server

3. Come realizzare un Web Server 3. Come realizzare un Web Server 3.1 Che cos'è un web server Il web server, è un programma che ha come scopo principale quello di ospitare delle pagine web che possono essere consultate da un qualsiasi

Dettagli

2009. STR S.p.A. u.s. Tutti i diritti riservati

2009. STR S.p.A. u.s. Tutti i diritti riservati 2009. STR S.p.A. u.s. Tutti i diritti riservati Sommario COME INSTALLARE STR VISION CPM... 3 Concetti base dell installazione Azienda... 4 Avvio installazione... 4 Scelta del tipo Installazione... 5 INSTALLAZIONE

Dettagli

Realizzazione di un Firewall con IPCop

Realizzazione di un Firewall con IPCop Realizzazione di un Firewall con IPCop Con questo articolo vedremo come installare IpCop, una distribuzione GNU/Linux per firewall facile da installare e da gestire (grazie alla sua interfaccia di amministrazione

Dettagli

Corso di PHP. Prerequisiti. 1 - Introduzione

Corso di PHP. Prerequisiti. 1 - Introduzione Corso di PHP 1 - Introduzione 1 Prerequisiti Conoscenza HTML Principi di programmazione web Saper progettare un algoritmo Saper usare un sistema operativo Conoscere il concetto di espressione 2 1 Introduzione

Dettagli

Istituto Tecnico Industriale Statale Dionigi Scano Cagliari. Candidato: Medda Daniele Classe 5ª C Informatica Anno scolastico 2013/2014.

Istituto Tecnico Industriale Statale Dionigi Scano Cagliari. Candidato: Medda Daniele Classe 5ª C Informatica Anno scolastico 2013/2014. Istituto Tecnico Industriale Statale Dionigi Scano Cagliari Candidato: Medda Daniele Classe 5ª C Informatica Anno scolastico 2013/2014 relate Un esperimento di social networking open source 1 Introduzione

Dettagli

RELAZIONE DI PROGETTO DELL ESAME STRUMENTI PER APPLICAZIONI WEB

RELAZIONE DI PROGETTO DELL ESAME STRUMENTI PER APPLICAZIONI WEB RELAZIONE DI PROGETTO DELL ESAME STRUMENTI PER APPLICAZIONI WEB Studente: Nigro Carlo N.mat.: 145559 Tema: Negozio virtuale Nome sito: INFOTECH Url: http://spaw.ce.unipr.it/progetti/infotech Per il progetto

Dettagli

OwnCloud 8 su rete lan aziendale (una specie di Gdrive privato)

OwnCloud 8 su rete lan aziendale (una specie di Gdrive privato) Augusto Scatolini (webmaster@comunecampagnano.it) (a.scatolini@linux4campagnano.net) (campagnanorap@gmail.com) Miniguida n. 216 Ver. febbraio 2015 OwnCloud 8 su rete lan aziendale (una specie di Gdrive

Dettagli

Studi di Settore. Nota Operativa 22/4/2013

Studi di Settore. Nota Operativa 22/4/2013 Nota Operativa Studi di Settore 22/4/2013 Sommario Valutazione casistiche... 2 Errore di connessione... 2 Sistema operativo non aggiornato... 2 File non installato client... 2 File non installato server...

Dettagli

Corso Creare Siti WEB

Corso Creare Siti WEB Corso Creare Siti WEB INTERNET e IL WEB Funzionamento Servizi di base HTML CMS JOOMLA Installazione Aspetto Grafico Template Contenuto Articoli Immagini Menu Estensioni Sito di esempio: Associazione LaMiassociazione

Dettagli

GUIDA ALLA PRIMA INSTALLAZIONE DI LIDRASHOP v 1.6.X

GUIDA ALLA PRIMA INSTALLAZIONE DI LIDRASHOP v 1.6.X GUIDA ALLA PRIMA INSTALLAZIONE DI LIDRASHOP v 1.6.X In questa guida saranno analizzati i semplici passaggi per la messa in opera del motore di e-commerce LIDRASHOP. Prima però ecco alcuni accorgimenti

Dettagli

Corso di Informatica

Corso di Informatica Corso di Informatica CL3 - Biotecnologie Orientarsi nel Web Prof. Mauro Giacomini Dott. Josiane Tcheuko Informatica - 2006-2007 1 Obiettivi Internet e WWW Usare ed impostare il browser Navigare in internet

Dettagli

WEB TECHNOLOGY. Il web connette. LE persone. E-book n 2 - Copyright Reserved

WEB TECHNOLOGY. Il web connette. LE persone. E-book n 2 - Copyright Reserved WEB TECHNOLOGY Il web connette LE persone Indice «Il Web non si limita a collegare macchine, ma connette delle persone» Il Www, Client e Web Server pagina 3-4 - 5 CMS e template pagina 6-7-8 Tim Berners-Lee

Dettagli

PHP, MySQL e Linux con RedHat 7.2

PHP, MySQL e Linux con RedHat 7.2 PHP, MySQL e Linux con RedHat 7.2 Loris Tissino copyright Loris Tissino, 2002 Table of Contents 1 Introduzione...1 1.1 Il necessario...1 2 Installazione e configurazione iniziale...2 2.1 Installazione

Dettagli

2 GB di spazio su disco non partizionato disponibile all'esterno della partizione DOS per il volume sys

2 GB di spazio su disco non partizionato disponibile all'esterno della partizione DOS per il volume sys Novell NetWare 6.5 www.novell.com AVVIO RAPIDO Installazione e upgrade In questa guida di riferimento rapido vengono fornite informazioni di base per l'installazione o l'upgrade a un server NetWare 6.5.

Dettagli

Petra VPN 3.1. Guida Utente

Petra VPN 3.1. Guida Utente Petra VPN 3.1 Guida Utente Petra VPN 3.1: Guida Utente Copyright 1996, 2004 Link s.r.l. (http://www.link.it) Questo documento contiene informazioni di proprietà riservata, protette da copyright. Tutti

Dettagli

Sviluppo siti e servizi web Programmi gestionali Formazione e Consulenza Sicurezza informatica Progettazione e realizzazione di reti aziendali

Sviluppo siti e servizi web Programmi gestionali Formazione e Consulenza Sicurezza informatica Progettazione e realizzazione di reti aziendali 1 Caratteristiche generali Nati dall esperienza maturata nell ambito della sicurezza informatica, gli ECWALL di e-creation rispondono in modo brillante alle principali esigenze di connettività delle aziende:

Dettagli

Manuale di riferimento di HP Web Jetadmin Database Connector Plug-in

Manuale di riferimento di HP Web Jetadmin Database Connector Plug-in Manuale di riferimento di HP Web Jetadmin Database Connector Plug-in Informazioni sul copyright 2004 Copyright Hewlett-Packard Development Company, L.P. Sono vietati la riproduzione, l'adattamento e la

Dettagli

NOTE TECNICHE DI CONFIGURAZIONE. Giugno 2009

NOTE TECNICHE DI CONFIGURAZIONE. Giugno 2009 NOTE TECNICHE DI CONFIGURAZIONE Giugno 2009 INDICE Configurazioni 3 Configurazioni Windows Firewall.. 3 Configurazioni Permessi DCOM. 4 Installazione Sql Server 2005 9 Prerequisiti Software 7 Installazione

Dettagli

Corso di Informatica. Prerequisiti. Modulo T3 B3 Programmazione lato server. Architettura client/server Conoscenze generali sui database

Corso di Informatica. Prerequisiti. Modulo T3 B3 Programmazione lato server. Architettura client/server Conoscenze generali sui database Corso di Informatica Modulo T3 B3 Programmazione lato server 1 Prerequisiti Architettura client/server Conoscenze generali sui database 2 1 Introduzione Lo scopo di questa Unità è descrivere gli strumenti

Dettagli

01/05/2013 Istruzioni per l installazione

01/05/2013 Istruzioni per l installazione 01/05/2013 Istruzioni per l installazione Il documento descrive le procedure rivolte a utenti esperti per l installazione del codice di ABCD SW su una macchina fisica che abbia funzioni di Server. Progetto

Dettagli

Content Management Systems

Content Management Systems Content Management Systems L o Guido Porruvecchio Tecnologia e Applicazioni della Rete Internet Definizione Un Content Management System (CMS) è letteralmente un sistema per la gestione dei contenuti Definisce

Dettagli

Elementi di Sicurezza e Privatezza Laboratorio 3 - Web Server Apache (1) Chiara Braghin chiara.braghin@unimi.it!

Elementi di Sicurezza e Privatezza Laboratorio 3 - Web Server Apache (1) Chiara Braghin chiara.braghin@unimi.it! Elementi di Sicurezza e Privatezza Laboratorio 3 - Web Server Apache (1) Chiara Braghin chiara.braghin@unimi.it! Sicurezza del Web server Sicurezza Web Server (1) Perché attaccare un Web server? w Per

Dettagli

Sicurezza del Web server

Sicurezza del Web server Elementi di Sicurezza e Privatezza Laboratorio 3 - Web Server Apache (1) Chiara Braghin chiara.braghin@unimi.it! Sicurezza del Web server 1 Sicurezza Web Server (1) Perché attaccare un Web server? w Per

Dettagli

Tecnologie e Programmazione Web

Tecnologie e Programmazione Web Presentazione 1 Tecnologie e Programmazione Web Html, JavaScript e PHP RgLUG Ragusa Linux Users Group SOftware LIbero RAgusa http://www.solira.org - Nunzio Brugaletta (ennebi) - Reti 2 Scopi di una rete

Dettagli

Corso di Alfabetizzazione Informatica

Corso di Alfabetizzazione Informatica Corso di Alfabetizzazione Informatica Lezione 6 a.a. 2010/2011 Francesco Fontanella La Complessità del Hardware Il modello di Von Neumann è uno schema di principio. Attualmente in commercio esistono: diversi

Dettagli

come utility con la finalità di creare pagine WEB dinamiche.

come utility con la finalità di creare pagine WEB dinamiche. Il PHP nasce nel 1995 come utility con la finalità di creare pagine WEB dinamiche. In quel periodo la stragrande maggioranza delle pagine erano statiche e quindi già create e non personalizzabili per i

Dettagli

Acronis License Server. Manuale utente

Acronis License Server. Manuale utente Acronis License Server Manuale utente INDICE 1. INTRODUZIONE... 3 1.1 Panoramica... 3 1.2 Politica della licenza... 3 2. SISTEMI OPERATIVI SUPPORTATI... 4 3. INSTALLAZIONE DI ACRONIS LICENSE SERVER...

Dettagli

DRUPAL 7 DRUPAL 7 Drupal è un framework modulare che consente di realizzare una grande varietà di siti web basati sulla logica contenuto/nodo. Permette di: creare e organizzare i contenuti personalizzare

Dettagli

SQL Server Express Edition è la novità di Visual Studio.Net versione di SQL Server che presenta la seguenti caratteristiche:

SQL Server Express Edition è la novità di Visual Studio.Net versione di SQL Server che presenta la seguenti caratteristiche: Presentazione del prodotto Presentazione del prodotto SQL Server Express Edition è la novità di Visual Studio.Net versione di SQL Server che presenta la seguenti caratteristiche: 2005. Una liberamente

Dettagli

Amico EVO Manuale dell Installazione

Amico EVO Manuale dell Installazione Amico EVO Manuale dell Installazione Versione 1.0 del 14.05.2013 Manuale dell installazione di AMICO EVO rev. 1 del 18.05.2013 Pag. 1 Amico EVO è un software sviluppato in tecnologia NET Framework 4.0

Dettagli

Caratteristiche generali

Caratteristiche generali Caratteristiche generali Tecnologie utilizzate Requisiti software/hardware Modalità di installazione del database del PSDR INSTALLAZIONE PSDR Installazione on-line Installazione off-line Primo avvio Riservatezza

Dettagli

Aspetti applicativi e tecnologia

Aspetti applicativi e tecnologia Aspetti applicativi e tecnologia Premessa Architetture usate per i database Le prime applicazioni erano definite monolitiche, cioè un unico computer (mainframe) gestiva sia le applicazioni che i dati,

Dettagli

Morret Mobile Robot Remote Tunneling

Morret Mobile Robot Remote Tunneling UNIVERSITÀ DI BRESCIA FACOLTÀ DI INGEGNERIA Dipartimento di Elettronica per l Automazione Laboratorio di Robotica Avanzata Advanced Robotics Laboratory Corso di Robotica (Prof. Riccardo Cassinis) Morret

Dettagli

MySQL Controllare gli accessi alla base di dati A cura di Silvio Bonechi per http://www.pctrio.com

MySQL Controllare gli accessi alla base di dati A cura di Silvio Bonechi per http://www.pctrio.com MySQL Controllare gli accessi alla base di dati A cura di Silvio Bonechi per http://www.pctrio.com 15.03.2006 Ver. 1.0 Scarica la versione pdf ( MBytes) Nessuno si spaventi! Non voglio fare né un manuale

Dettagli

Configurazione avanzata di XAMPP

Configurazione avanzata di XAMPP Configurazione avanzata di XAMPP Andrea Atzeni (shocked@polito.it) Marco Vallini (marco.vallini@polito.it) Politecnico di Torino Dip. Automatica e Informatica Apache Binding definisce su quali indirizzi

Dettagli

UBUNTU: gli strumenti di condivisione risorse

UBUNTU: gli strumenti di condivisione risorse UBUNTU: gli strumenti di condivisione risorse condivisione 1o1 a cura di Danio Campolunghi La condivisione di risorse Verranno qui proposti gli strumenti grafici di serie messi a disposizione da Ubuntu

Dettagli

Creazione manuale delle tabelle (mediante scrittura del codice SQL corrispondente)

Creazione manuale delle tabelle (mediante scrittura del codice SQL corrispondente) Università degli Studi di Modena e Reggio Emilia Facoltà di Scienze della Comunicazione e dell Economia Corso di Laurea in Comunicazione e Marketing Anno Accademico 2005/06 Metodi per la Gestione dei Dati

Dettagli

Laboratorio di Progettazione Web

Laboratorio di Progettazione Web Il Server web Laboratorio di Progettazione Web AA 2009/2010 Chiara Renso ISTI- CNR - c.renso@isti.cnr.it E un programma sempre attivo che ascolta su una porta le richieste HTTP. All arrivo di una richiesta

Dettagli

Software di sistema e software applicativo. I programmi che fanno funzionare il computer e quelli che gli permettono di svolgere attività specifiche

Software di sistema e software applicativo. I programmi che fanno funzionare il computer e quelli che gli permettono di svolgere attività specifiche Software di sistema e software applicativo I programmi che fanno funzionare il computer e quelli che gli permettono di svolgere attività specifiche Software soft ware soffice componente è la parte logica

Dettagli

Installazione & Configurazione Php e MySQL su Mac Os X. Php

Installazione & Configurazione Php e MySQL su Mac Os X. Php Installazione & Configurazione Php e MySQL su Mac Os X Php PHP è un linguaggio di scripting interpretato, con licenza Open Source, originariamente concepito per la realizzazione di pagine web dinamiche.

Dettagli

Progetto LiberA. Studente/Relatore: Antonio Zambito Matricola: 124/1032 CdL: Informatica (0124) Prof.: Raffaele Montella

Progetto LiberA. Studente/Relatore: Antonio Zambito Matricola: 124/1032 CdL: Informatica (0124) Prof.: Raffaele Montella Progetto LiberA L implementazione di un applicazione Web (PHP, CSS3, HTML5, MYSQL, JAVASCRIPT) per facilitare la gestione di un associazione culturale, contestualmente un associazione di danza. Nasce dalla

Dettagli

Installazione MS SQL Express e utilizzo con progetti PHMI

Installazione MS SQL Express e utilizzo con progetti PHMI Installazione MS SQL Express e utilizzo con progetti PHMI Introduzione La nota descrive l utilizzo del database Microsoft SQL Express 2008 in combinazione con progetti Premium HMI per sistemi Win32/64

Dettagli

SVN server, per Florim, è installato su server di test, anche se la sua configurazione può avvenire in qualsiasi ambiente.

SVN server, per Florim, è installato su server di test, anche se la sua configurazione può avvenire in qualsiasi ambiente. Siti FLORIM SVN Subversion Il sistema di versioning viene illustrato nell immagine seguente: Sistema locale dello sviluppatore, si parla di working copy ( copia dei file dal server in produzione) SVN server,

Dettagli

FASE 1: Definizione del tema, degli obiettivi e del target con il cliente... (da cui dipendono le scelte successive!)

FASE 1: Definizione del tema, degli obiettivi e del target con il cliente... (da cui dipendono le scelte successive!) Panoramica sul Web design: FASE 1: Definizione del tema, degli obiettivi e del target con il cliente... (da cui dipendono le scelte successive!) FASE 2: Definire se lavorare su un CMS (es Joomla, Wordpress,

Dettagli

SPSS Inc. Data Access Pack - Istruzioni di installazione per Windows

SPSS Inc. Data Access Pack - Istruzioni di installazione per Windows i SPSS Inc. Data Access Pack - Istruzioni di installazione per Windows Per ulteriori informazioni sui prodotti software SPSS Inc., visitare il sito Web all indirizzo http://www.spss.it o contattare: SPSS

Dettagli

Alcune semplici definizioni

Alcune semplici definizioni Alcune semplici definizioni Un CMS (Content management system), in italiano Sistema di gestione dei contenuti è uno strumento software che si installa generalmente su un server web, il cui compito è facilitare

Dettagli

MagiCum S.r.l. Progetto Inno-School

MagiCum S.r.l. Progetto Inno-School MagiCum S.r.l. Progetto Inno-School Area Web Autore: Davide Revisione: 1.2 Data: 23/5/2013 Titolo: Innopedia File: Documentazione_tecnica Sito: http://inno-school.netsons.org/ Indice: 1. Presentazione

Dettagli

COMPLETA SICUREZZA GRAZIE ALL ACCESSO PROTETTO E AI LIVELLI AUTORIZZATIVI

COMPLETA SICUREZZA GRAZIE ALL ACCESSO PROTETTO E AI LIVELLI AUTORIZZATIVI Consultazione prodotti e gestione ordini via internet SAM r-evolution La rivoluzione non è cambiare il software! SAM OW - Open Web Open-Web è l applicazione web per la consultazione online degli articoli

Dettagli

Come si può notare ogni richiesta ICMP Echo Request va in timeout in

Come si può notare ogni richiesta ICMP Echo Request va in timeout in Comandi di rete Utility per la verifica del corretto funzionamento della rete: ICMP Nelle procedure viste nei paragrafi precedenti si fa riferimento ad alcuni comandi, come ping e telnet, per potere verificare

Dettagli

CORSO EDA Informatica di base. Sicurezza, protezione, aspetti legali

CORSO EDA Informatica di base. Sicurezza, protezione, aspetti legali CORSO EDA Informatica di base Sicurezza, protezione, aspetti legali Rischi informatici Le principali fonti di rischio di perdita/danneggiamento dati informatici sono: - rischi legati all ambiente: rappresentano

Dettagli

MySQL Database Management System

MySQL Database Management System MySQL Database Management System http://www.mysql.com/ DATABASE RELAZIONALI Un database è una collezione strutturata di informazioni. I database sono delle strutture nelle quali è possibile memorizzare

Dettagli

2.1 Installazione e configurazione LMS [4]

2.1 Installazione e configurazione LMS [4] 2.1 Installazione e configurazione LMS [4] Prerequisti per installazione su server: Versione PHP: 4.3.0 o superiori (compatibilità a php5 da versione 3.0.1) Versione MySql 3.23 o superiori Accesso FTP:

Dettagli

Corso di PHP. Prerequisiti. 1 - Introduzione

Corso di PHP. Prerequisiti. 1 - Introduzione Corso di PHP 1 - Introduzione 1 Prerequisiti Conoscenza HTML Principi di programmazione web Saper progettare un algoritmo Saper usare un sistema operativo Compilazione, link, esecuzione di programmi Conoscere

Dettagli

INFORMATICA. Applicazioni WEB a tre livelli con approfondimento della loro manutenzione e memorizzazione dati e del DATABASE.

INFORMATICA. Applicazioni WEB a tre livelli con approfondimento della loro manutenzione e memorizzazione dati e del DATABASE. INFORMATICA Applicazioni WEB a tre livelli con approfondimento della loro manutenzione e memorizzazione dati e del DATABASE. APPLICAZIONI WEB L architettura di riferimento è quella ampiamente diffusa ed

Dettagli

Installazione di IBM SPSS Modeler 14.2 Client (utente singolo)

Installazione di IBM SPSS Modeler 14.2 Client (utente singolo) Installazione di IBM SPSS Modeler 14.2 Client (utente singolo) Le seguenti istruzioni sono relative all installazione di IBM SPSS Modeler Client versione 14.2 con licenza per utente singolo. Una licenza

Dettagli

Il tuo manuale d'uso. ACRONIS BACKUP AND RECOVERY 10 http://it.yourpdfguides.com/dref/3694377

Il tuo manuale d'uso. ACRONIS BACKUP AND RECOVERY 10 http://it.yourpdfguides.com/dref/3694377 Può anche leggere le raccomandazioni fatte nel manuale d uso, nel manuale tecnico o nella guida di installazione di ACRONIS BACKUP AND RECOVERY 10. Troverà le risposte a tutte sue domande sul manuale d'uso

Dettagli

Guida all amministrazione VPH Webmin/Virtualmin

Guida all amministrazione VPH Webmin/Virtualmin Il Valore Aggiunto di Internet Guida all amministrazione VPH Webmin/Virtualmin L ambiente di amministrazione 2 La gestione dei Server 3 a. Virtual Servers 4 b. Server Settings and Templates 5 c. Virtualmin

Dettagli

1.1 - Crittografia sulla infrastruttura trasmissiva tra le stazioni remote Rilheva il centro di telecontrollo

1.1 - Crittografia sulla infrastruttura trasmissiva tra le stazioni remote Rilheva il centro di telecontrollo SISTEMA DI TELECONTROLLO RILHEVA GPRS (CARATTERISTICHE DEL VETTORE GPRS E SICUREZZE ADOTTATE) Abstract: Sicurezza del Sistema di Telecontrollo Rilheva Xeo4 ha progettato e sviluppato il sistema di telecontrollo

Dettagli

Console di Amministrazione Centralizzata Guida Rapida

Console di Amministrazione Centralizzata Guida Rapida Console di Amministrazione Centralizzata Contenuti 1. Panoramica... 2 Licensing... 2 Panoramica... 2 2. Configurazione... 3 3. Utilizzo... 4 Gestione dei computer... 4 Visualizzazione dei computer... 4

Dettagli

Virtualizzazione VirtualBox 4.1.2 su Host Windows

Virtualizzazione VirtualBox 4.1.2 su Host Windows Virtualizzazione VirtualBox 4.1.2 su Host Windows La virtualizzazione, quando riferita all informatica, consiste nella creazione di una versione virtuale di una risorsa normalmente fornita fisicamente.

Dettagli

Nuovo server E-Shop: Guida alla installazione di Microsoft SQL Server

Nuovo server E-Shop: Guida alla installazione di Microsoft SQL Server Nuovo server E-Shop: Guida alla installazione di Microsoft SQL Server La prima cosa da fare è installare SQL sul pc: se si vuole utilizzare SQL Server 2012 SP1 versione Express (gratuita), il link attuale

Dettagli

Guida al Controllo Remoto del proprio PC con VNC e Fastweb (Versione SSL)

Guida al Controllo Remoto del proprio PC con VNC e Fastweb (Versione SSL) Guida al Controllo Remoto del proprio PC con VNC e Fastweb (Versione SSL) Ver. 1.0 rev.1.1 del 14/12/2003 By EnergyDrink emailto:energydrink@fastwebnet.it Questa che segue, e una delle possibili soluzioni

Dettagli

CMS (Content Management System) della categoria Open Source

CMS (Content Management System) della categoria Open Source Una panoramica sui CMS (Content Management System) CMS (Content Management System) della categoria Open Source Per la piattaforma PHP/MYSQL e considerata l esigenza sempre più ricorrente di realizzare

Dettagli

Introduzione a Oracle 9i

Introduzione a Oracle 9i Introduzione a Oracle 9i Ing. Vincenzo Moscato - Overview sull architettura del DBMS Oracle 9i L architettura di Oracle 9i si basa sul classico paradigma di comunicazione client-server, in cui sono presenti

Dettagli

Istruzioni per il server

Istruzioni per il server Istruzioni per il server Alessandro Bugatti (alessandro.bugatti@istruzione.it) 9 dicembre 2007 Introduzione Questa breve dispensa riassume brevemente le procedure per connettersi al server che ci permetterà

Dettagli

Installazione e caratteristiche generali 1

Installazione e caratteristiche generali 1 Installazione e caratteristiche generali 1 Installazione di SIGLA SIGLA viene fornito su un CDROM contenente la procedura d installazione. La procedura può essere installata eseguendo il programma SIGLASetup.exe

Dettagli

Sophos Endpoint Security and Control Guida di avvio per computer autonomi

Sophos Endpoint Security and Control Guida di avvio per computer autonomi Sophos Endpoint Security and Control Guida di avvio per computer autonomi Sophos Endpoint Security and Control versione 9 Sophos Anti-Virus per Mac OS X, versione 7 Data documento: ottobre 2009 Sommario

Dettagli

PER FARE UN SITO INTERNET

PER FARE UN SITO INTERNET Diocesi Brescia Corso per animatori della Cultura e della Comunicazione PER FARE UN SITO INTERNET I diversi modelli di siti Internet. Dove e come pubblicarlo. INTERNET Rete di computer mondiale ad accesso

Dettagli