Hiawatha,un web server per i vps

hiawatha logo Hiawatha,un web server per i vpsHiawata è un web server sviluppato da Hugo Leisink.Progettato seguendo dei criteri di sicurezza molto elevati,si tratta di un web server veramente molto sicuro ed a basso impatto sulle risorse di sistema.Hiawata è leggero,sicuro,supporta ipv6,certificati ssl e virtualhosts.La versione attuale è la 7.3,dove è stato aggiunto il supporto per il sistema operativo Haiku.Grazie alle modeste risorse di sistema impegnate,Hiawatha è l’ideale per vps e server con limitate disponibilità di memoria e potenza di calcolo.Vediamo l’installazione di Hiawata su un vps Debian 5.0 Lenny,con una configurazione che include l’utilizzo dei virtualhosts.Hiawata permette di utilizzare Php Fastcgi per l’esecuzione di Php.

Installiamo i pacchetti necessari alla compilazione del codice,oltre al pacchetto php5-cgi :

# apt-get update
# apt-get install build-essential libc6-dev libssl-dev dpkg-dev debhelper fakeroot libxml2-dev libxslt1-dev php5-cgi -y

Apriamo il file di configurazione di php cgi e inseriamo le seguenti direttive,necessarie per la corretta esecuzione di Hiawata :

# vim /etc/php5/cgi/php.ini
cgi.rfc2616_headers = 1
zlib.output_compression = On
zlib.output_compression_level = 6
expose_php = Off
display_errors = Off
register_globals = Off
magic_quotes_gpc = Off
allow_url_include = Off

Adesso è il momento di compilare Hiawata.Per ovvi motivi di sicurezza è necessario guadagnare l’accesso come utente comune :

# su normaluser
$ wget http://www.hiawatha-webserver.org/files/hiawatha-7.3.tar.gz
$ tar zxf hiawatha-7.3.tar.gz
$ cd hiawatha-7.3

dopo aver prelevato l’archivio contenente il codice sorgente,avviamo la configurazione e successivamente la compilazione,utilizzato il comando make deb per produrre un pacchetto .deb che potrà essere installato senza colpo ferire.Nell’esempio abbiamo disabilito il supporto per ipv6 :

$ ./configure --disable-ipv6
$ make deb
$ exit

Installiamo Hiawata :

# dpkg -i /home/normaluser/hiawatha_7.3_i386.deb

ed apriamo subito il file di configurazione per php fastcgi :

# vim /etc/hiawatha/php-fcgi.conf

decommentando la direttiva :

Server = /usr/bin/php5-cgi ; 127.0.0.1:2005 ; www-data ; /etc/php5/cgi/php.ini

Apriamo ora il file di configurazione principale per Hiawatha :

# vim /etc/hiawatha/hiawatha.conf

La configurazione che segue è quella di base necessaria per far funzionare correttamente il web server,utilizzando due virtualhosts :

ServerId = www-data
ServerString = blabla
ConnectionsTotal = 150
ConnectionsPerIP = 10
SystemLogfile = /var/log/hiawatha/system.log
GarbageLogfile = /var/log/hiawatha/garbage.log

Binding {
 Port = 80
 Interface = 94.141.20.116
 MaxKeepAlive = 30
 TimeForRequest = 3,20
 EnableTRACE = no
}

CGIhandler = /usr/bin/php5-cgi:php

FastCGIserver {
 FastCGIid = PHP5
 ConnectTo = 127.0.0.1:2005
 Extension = php, php5
 SessionTimeout = 30
}

UrlToolkit {
 ToolkitID = wordpress
 RequestURI exists Return
 Match .* Rewrite /index.php
}

Hostname = 90.111.20.77
WebsiteRoot = /var/www
StartFile = index.html
AccessLogfile = /var/log/hiawatha/access.log
ErrorLogfile = /var/log/hiawatha/error.log

VirtualHost {
 Hostname = blog.example.com
 WebsiteRoot = /home/example
 StartFile = index.php
 AccessLogfile = /var/log/hiawatha/example_access.log
 ErrorLogfile = /var/log/hiawatha/example_error.log
 TimeForCGI = 5
 UseFastCGI = PHP5
 UseToolkit = wordpress
 PreventCSRF = yes
 PreventSQLi = yes
 PreventXSS = yes
 UseGZfile = yes
}

VirtualHost {
 Hostname = blog.anotherexample.com
 WebsiteRoot = /home/anotherexample
 StartFile = index.php
 AccessLogfile = /var/log/hiawatha/anotherexample_access.log
 ErrorLogfile = /var/log/hiawatha/anotherexample_error.log
 TimeForCGI = 5
 UseFastCGI = PHP5
 UseToolkit = wordpress
 UseGZfile = yes
}

La direttiva UseGZfile = yes può essere utilizzata qualora si voglia attivare la compressione dei contenuti statici.La raccomandazione è comunque quella di fare affidamento alla compressione offerta da php,che abbiamo attivato durante i primi passi dell’articolo.Le direttive di configurazione sono abbastanza esplicative e lasciamo alla documentazione ufficiale il compito di sollevare il lettore da eventuali dubbi circa il significato delle varie opzioni.La configurazione di cui sopra fa utilizzo dell’Url toolkit per WordPress.Un URL Toolkit non è altro che l’equivalente delle regole di rewrite utilizzate da Apache.

Per avviare Fastcgi e Hiawata utilizziamo i comandi :

# /etc/init.d/php-fcgi start
# /etc/init.d/hiawatha start

Hiawata è un web server sicuro e poco esigente,caratteristiche che ne permettono con successo l’utilizzo su vps dove risparmiare i quantitativi di memoria impegnata dagli applicativi è ormai d’obbligo.Hiawata è un software ancora giovane e carente per quanto riguarda le funzionalità più avanzate offerte da web server come Apache,Lighttpd e Nginx.Tuttavia la sua elevata sicurezza e la grande flessibilità ne fanno un prodotto da tenere sicuramente in grande considerazione.

Condividi questo post!

Post simili:

One thought on “Hiawatha,un web server per i vps

  1. Pingback: Hiawatha web server su Ubuntu Lucid 10.04 | SERVERMANAGED.IT ::

Leave a Reply

Your email address will not be published. Required fields are marked *

*

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>