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 GPL. L'utilizzo del software è regolato dalle condizioni del contratto di licenza riportate come appendice di questo documento e nel file LICENSE contenuto nel software. Il software potrà subire modifiche rispetto a quanto descritto in questo manuale, ed avere funzionalità non menzionate, Se tali modifiche sono importanti e cambiano il funzionamento del software, saranno disponibili in una annotazione o un file README distribuiti col software stesso ovvero in allegato con questo manuale. Si prega quindi di leggere attentamente il file README prima dell'utilizzo del prodotto. 2/12
Introduzione Il registro elettronico è uno strumento informatico che permette di avere le funzionalità di un registro di classe vero e proprio in modo virtuale. Si potranno gestire più Scuole con un solo programma, e gestire Studenti, Materie, Docenti, Reparti, ed i documenti degli Alunni. Il registro elettronico è consultabile da remoto da più persone, che hanno accesso al programma, come genitori, docenti delle scuole affidatarie e/o docenti delle scuole di provenienza, con la comodità di pochi click. Requisiti di Sistema Il programma ha i seguenti requisiti minimi di sistema: Sistema Operativo Unix (es.: GNU/Linux, FreeBSD) Apache Web Server 1.x o 2.x con mod_ssl PHP versione 4 o superiori Mysql versione 3.21 o superiori 4 MB di spazio libero Pear (DB, HTML_QuickForm, HTTP_Upload, File) Bash versione 2.05 e superiori 3/12
Sistema Operativo Il sistema operativo può essere una qualsiasi distribuzione UNIX-based, come le maggiori distribuzioni GNU/Linux o *BSD. Sono stati effettuati test del software con le distribuzioni GNU/Linux Debian, OpenSuSE, Gentoo, Fedora, Ubuntu e FreeBSD ma non dovrebbero esserci problemi con altre distribuzioni. In caso si incontrassero eventuali problemi con alcune distribuzioni contattare il team di sviluppo inviando una email a colorideibambini@libero.it Apache Web Server Per un corretto funzionamento del prodotto, il server http deve essere una versione corrente di Apache. Il programma funziona sia con la versione 1.3x e sia con Apache 2.x. Inoltre, siccome il programma usa il protocollo sicuro openssl, è necessaria la presenza del modulo mod_ssl. Deve anche essere disponibile l'opzione per le variabili SSL_XXX negli script CGI/SSI. Questo è reso possibile aggiungendo al file di configurazione di apache la seguente riga: SSLOptions +StdEnvVars I software Apache e mod_ssl sono disponibili ai seguenti URI: http://www.apache.org e http://www.modssl.org Aggiungere l'opzione StdEnvVars è indispensabile per il funzionamento del Registro Elettronico. 4/12
OpenSSL Per motivi di sicurezza oltre alla installazione di apache è necessario che sia presente OpenSSL: i protocolli che vengono usati sono SSL/TLS (Secure Socket Layer e Transport Layer Security) poichè servono alla certificazione ed alla comunicazione cifrata. Le impostazioni di configurazione di openssl sono differenti in base alle diverse distribuzioni GNU/Linux. Solitamente queste configurazioni sono nelle directory /etc o /etc/ssl o ancora /etc/openssl. In questo paragrafo spiegheremo in sintesi come sia possibile creare e configurare i certificati SSL. Non si tratta tuttavia di una guida esaustiva che invece si può trovare in rete al seguente indirizzo: http://www.openssl.org/docs/, oltre che nella documentazione specifica della propria distribuzione. 5/12
Il certificato Per avere i servizi funzionanti con i protocolli SSL/TLS è necessario avere dei certificati e delle chiavi elettroniche. Solitamente questi certificati sono autocertificati e non hanno valore legale secondo le CA (Certification Authority). Per la creazione del certificato il comando può essere il seguente, eventualmente si possono, integrare opzioni differenti; openssl genrsa -out chiave_privata.pem 1024 A questo punto è doveroso avere le credenziali per la garanzia della autenticità del certificato. Questo deve avvenire tramite una associazione terza (Certification Authority) ma spesso, questo si esegue anche senza una azienda esterna con dati fittizi in modo da avere solo un certificato valido al fine del funzionamento del programma. Per inserire il i dati bisogna eseguire il seguente comando: $openssl req -new -x509 -key chiave_privata.pem -out richiesta.pem bisogna quindi seguire interattivamente le richieste e compilare i campi, per ottenere un certificato autofirmato. PHP È necessario avere installato il modulo mod_php4 o mod_php5 di apache. Il programma funziona sia con la versione 4 di php e sia con la versione 5. Per configurare correttamente php in apache fare riferimento alla documentazione della propria distribuzione ed altresì leggere la documentazione in http://www.php.net/manual/en/install.unix.php. Se compilate a mano il PHP fate attenzione ad aggiungere alle opzioni di compilazione il supporto per MySQL. 6/12
MySQL Il programma si basa su basi di dati implementate in MySQL, è neccessario quindi, avere un database server MySQL. La versione di MySQL deve essere sicuramente maggiore della 3.21 e sono supportate altresì le versioni 4.0, 4.1 e 5.0 con cui è stato testato il programma. Il software è disponibile al seguente URI: http://www.mysql.com/ Per poter installare il programma la prima volta è necessario avere un utente su server MySQL con accesso al database con permessi di creazione di database GRANT CREATE. PEAR Il Registro Elettronico usa il sistema dei PEAR per alcune delle sue funzioni. Questo permette di avere del codice standard e sempre aggiornato. Per installare i PEAR fare riferimento alla gestione dei software della propria distribuzione oppure leggere i manuali su http://pear.php.net/ Dopo avere installato il gestore dei pear, bisogna installare i seguenti pear: DB HTML_QuickForm HTTP_Upload File Per l'installazione dei pear il comando è il seguente: # pear install nome_del_pear è buona norma fare l'update dei pacchetti periodicamente con il comando # pear upgrade-all 7/12
BASH Per lo script di installazione è necessario avere il terminale bash installato. È importante che lo script di installazione install.sh cominci con lo shabang '#!' seguito dal giusto path di installazione di bash, solitamente è /bin/bash mentre in FreeBSD è /usr/local/bin/bash 8/12
Installazione La procedura di installazione è molto semplice, ed eseguibile in pochi passi: Scaricare il programma dal sito http://www.colorideibambini.eu/index.php?option=com_content&v iew=article&id=19:download&catid=10&itemid=106 Scompattare il file compresso nella cartella DocumentRoot del server apache. Eseguire lo script install.sh con privilegi di superutente In questa fase vengono create le cartelle di sistema ed i file di configurazione in /var e /etc. Per andare avanti con l'installazione è richiesto avere il nome utente mysql e la password con un utente in grado di creare nuovi database (GRANT CREATE), che verranno inseriti nel file /etc/registro.conf. Eseguito il tutto bisogna creare un registro come spiegato nella prossima sezione. Se il programma è stato precedentemente installato la cartella /var/scuole non verrà sovrascritta ma mantenuta, evitando che dati sensibili degli studenti vengano erroneamente cancellati. 9/12
Nuovo registro Per installare un nuovo registro, bisogna collegarsi con il proprio browser alla cartella di apache in cui risiede il programma, alla pagina Installer.php (es.: https://localhost/registro/installer.php) verranno chiesti le credenziali della nuova Scuola (Indirizzo, e-mail, numeri di telefono etc.. ) ed anche le credenziali dell'amministratore (nome utente, password, e-mail, cellulare etc...). Il campo codice registro è il campo con cui verrà poi identificato il dominio con cui ci si deve autenticare al programma. Es: La mia nuova scuola si chiama S.M.S. Peyron-Fermi, scelgo come codice registro peyron. Scelgo poi come codice amministratore Administrator. A questo punto ogni volta che mi voglio autenticare, devo inserire oltre che alla mia password il nome Administrator@peyron Una volta terminata l installazione di un nuovo registro è possibile importare i dati relativi alle scuole ed alle materie presenti in un altro registro. Il sistema chiederà l inserimento del codice del registro da cui importare i dati e quello di destinazione. 10/12
Sicurezza Il programma ha una particolare attenzione agli aspetti legati alla sicurezza, per via della natura stessa del programma e dei dati sensibili che vengono inseriti nel registro. Tutti i dati vengono trasmessi con protocolli criptati (SSL/TLS) onde evitare che i dati vengano trasmessi in modo da poter essere letti. Le transazioni con i database e le query sono particolarmente sicuri attraverso i comandi SQL generati dal PEAR DB, per evitare SQL- Injections da parte di terzi, o anche errori di scrittura in fase di programmazione. 11/12
Verifica Per verificare l'installazione del programma in modo corretto è doveroso fare alcune controlli. Innanzitutto lo script di installazione deve andare a buon fine. Questo è verificabile quando sul terminale alla fine del processo di installazione, viene stampato il seguente messaggio: Installazione andata a buon fine! Dopodiché controllare che Sistema Operativo Unix (es.: GNU/Linux, FreeBSD) Apache Web Server 1.x o 2.x con mod_ssl PHP versione 4 o superiori Mysql versione 3.21 o superiori 4 MB di spazio libero Pear (DB, HTML_QuickForm, HTTP_Upload, File) Bash versione 2.05 o superiori Allorché i requisiti siano soddisfatti e il programma non funzionasse, è possibile che ci siano delle configurazioni del php incompatibili con il programma. 12/12