Home Chi sono Mappa del sito Contatti  
 
Java
Apache Wicket
Sistemistica Totocalcio
 
 
Programmare Applicativi...
Presentazione del libro
Panoramica dei contenuti
 
 
Giochi in PHP
Introduzione
Filetto (Tris)
Forza 4
Sudoku
 
 
Tutorial Linux/Unix
Archivio
 
 
Sql
Tutorial su Mysql
 
 
C++
Framework a oggetti
 
Archivio->Installare Apache 2+SSL/PHP 5/MySQL 5

Installare Apache 2+SSL/PHP 5/MySQL 5

Questo piccolo tutorial spiega passo dopo passo, come installare e configurare Apache 2+SSL/PHP 5/MySQL 5 nel sistema operativo Debian.
L'installazione viene eseguita attraverso l'uso dei pacchetti deb, cioè sarà il sistema ad occuparsi di cercare, scaricare ed installare tutti i pacchetti (comprese le dipendenze) necessari all'installazione del software.

In generale tutti i servizi una volta installati, sono già configurati per partire in automatico nel boot del sistema.

1) Installate MySql con il seguente comando:
# apt-get install mysql-server

2) Installare Apache 2, php5, PhpMyAdmin con il seguente comando:
# apt-get install phpmyadmin

Una volta che Apache è in esecuzione dovreste vedere la porta 80 in ascolto con il comando
# netstat -na|grep 80
e visualizzare un qualcosa di simile

Oppure da un'altra macchina lanciate il browser e verificate che Apache sia in funzione (It works!).
In oltre potete verificare PhpMyAdmin all'indirizzo http://<indirizzo IP>/phpmyadmin/

3) Ora che Apache è installato e funzionante procediamo con la configurazione della connessione SSL.
Per abilitare il modulo SSL in Apache eseguire il comando
# a2enmod ssl

4) Creiamo un certificato autofirmato (in questo esempio il certificato dura un anno):
# cd /etc/apache2
# mkdir ssl
# cd ssl
# openssl genrsa -out chiave.key 2048
# openssl req -new -x509 -days 3650 -key chiave.key -out certificato.crt
# chmod 400 *

Nella creazione del certificato vengono poste delle domande, ecco un esempio di risposte:
Country Name (2 letter code) [AU]: IT
State or Province Name (full name) [Some-State]: Italy
Locality Name (eg, city) []: Giulianova
Organization Name (eg, company) [Internet Widgits Pty Ldt]:Test
Organizational Unit Name (eg, section) []: Test
Common Name (eg, YOUR name) []: test.test.it
Email Address []: test@test.it

Il campo più importante è 'Common Name' che indica il nome host del computer (nell'esempio test.test.it).
Dovete inserire tale nome nel file /etc/hosts
<indirizzo IP> test.test.it
Naturalmente se il computer non è rete potete inserire 127.0.0.1 altrimenti dovete mettere l'indirizzo IP assegnato.
Per fare dei test in un altro computer in rete, dovete inserire la stessa riga nel file /etc/hosts di quel computer.

5) Occorre creare la directory dove andare a mettere i file che si vogliono proteggere con la connessione protetta.
Come test iniziale ci mettiamo lo stesso file index.html situato nella directory www
# cd /var
# mkdir wwwssl
# cp www/index.html wwwssl


6) Per la configurazione della connessione protetta si deve modificare il file /etc/apache2/ports.conf
Di seguito la porzione di file da sostituire:

Di seguito cosa occorre incollare:


7) Per far ripartire il Web Server lanciate il comando
# /etc/init.d/apache2 restart

Dovreste vedere la porta 443 in ascolto con il comando
# netstat -na|grep 443
e visualizzare un qualcosa di simile

Oppure da un'altra macchina lanciate il browser e verificate che Apache sia in funzione (It works!), sia in http che https.
Per verificare il funzionamento del PHP potete creare il file info.php in /var/wwwssl/ contenete il seguente codice:

Quindi dal browser connettetevi all'indirizzo https://test.test.it/info.php. Dovreste visualizzare l'elenco delle informazioni relative al PHP.

8) Il PhPMyAdmin è attualmente visibile sia in http che in https.
Possiamo aggiungere una re-direzione in modo che PhPMyAdmin sia raggiungibile esclusivamente in https.
Occorre abilitare il modulo di re-direzione in Apache
# a2enmod rewrite
Quindi aggiungere al file /etc/apache2/ports.conf le seguenti righe:

Riavviate il Web Server lanciando il comando
# /etc/init.d/apache2 restart
Adesso PhPMyAdmin è accessibile solo all'indirizzo https://<indirizzo IP>/phpmyadmin/ (eventuali tentativi di accesso in http saranno rediretti in https)