Qualche giorno fa ho descritto il sistema di gestione RequestTracker della BestPractical.
Avendo la veloce guida riscosso un discreto successo, continuo con qualche altro articolo tecnico. Oggi vi spiegherò come attivare RequestTracker sotto SSL, ovvero connessione sicura HTTPS.
Per prima cosa installiamo le librerie necessarie:
apt-get install libssl-dev
e poi il modulo perl “Crypt::SSLeay”:
cpan Crypt::SSLeay
adesso impostiamo il server Apache2, abilitando il modulo mod_rewrite per forzare le connessioni HTTPS:
a2enmod rewrite
A questo punto dovreste preoccuparvi del certificato SSL. Le scelte sono due: self-signed oppure acquistato presso una qualche CA, come RapidSSL o Verisign.
Risolta la questione del certificato, passiamo alla configurazione del VirtualHost:
<VirtualHost tickets.unisi.it:80> AddDefaultCharset UTF-8 DocumentRoot "/opt/rt4/share/html" RewriteEngine On RewriteCond %{HTTPS} off RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI} </VirtualHost> <VirtualHost tickets.unisi.it:443> AddDefaultCharset UTF-8 DocumentRoot "/opt/rt4/share/html" <Location /> Order allow,deny Allow from all SetHandler modperl PerlResponseHandler Plack::Handler::Apache2 PerlSetVar psgi_app /opt/rt4/sbin/rt-server </Location> <Perl> use Plack::Handler::Apache2; Plack::Handler::Apache2->preload("/opt/rt4/sbin/rt-server"); </Perl> SSLEngine on SSLCertificateFile /etc/apache2/ssl/mycert.pem SSLCertificateKeyFile /etc/apache2/ssl/mycert.key SSLCertificateChainFile /etc/apache2/ssl/mycert.chain.pem </VirtualHost>RT SSL
Le parti in grassetto evidenziano le righe della configurazione più importanti. Le prime dicono ad Apache2 che tutte le connessioni non https (RewriteCond %{HTTPS} off) devono essere “trasformate” in https (RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI}).
Il secondo blocco è relativo alla configurazione del certificato SSL per il VirtualHost in ascolto sulla porta 443 (http://httpd.apache.org/docs/2.2/ssl/ssl_faq.html).
Per ultimo, dopo aver verificato che Apache2 HTTPD sia configurato correttamente (service apache2 restart), procediamo a modificare il nostro file /etc/aliases relativo alle code mettendo https al posto di http:
manutenzione: "|/opt/rt4/bin/rt-mailgate --queue Manutenzione --action correspond --url https://[myUrl]/" manutenzione-comment: "|/opt/rt4/bin/rt-mailgate --queue Manutenzione --action comment --url https://[myUrl]/"
Per concludere verifichiamo aprendo il browser e visitando [myUrl]: si dovrebbe essere reindirizzati automaticamente verso connessione protetta “https”.