So nachdem wir unseren VServer ein wenig gegen Angriffe von aussen gefestigt haben möchten wir nun auch mal etwas darauf installieren. Das Ziel ist ja auf dem Server später Owncloud zum laufen zu bringen und dazu brauchen wir nunmal einen Webserver.
Warum ist hier die Wahl auf Hiawatha gefallen? Der Server ist vergleichsweise Schlank, beinhaltet einige interessante Sicherheitsfunktionen und ist nicht so verbreitet wie Apache. Ich halte es dabei wie mit dem Betriebssystem: Umso weniger verbreitet, umso uninteressanter für potentielle Angreifer.
Dann machen wir uns mal an die Installation. Leider ist der Hiawatha Webserver nicht in den Debian Repo’s vorhanden. Wieso eigentlich nicht? Naja uns stört das wenig, auf der Hiawatha Website gibt es inoffizielle Debian Paket zum download. Wer Lust hat kann sich Hiawatha auch mithilfe des auf der Website enthaltenen How-To’s selber bauen. Ich bin faul und nehme das Debian Paket.
Also schauen wir auf dem Server doch erst einmal nach welche Architektur wir brauchen:
root ~ # arch x86_64
Also brauchen wir das amd64 Paket welches wir uns ach gleich per wget schnappen:
root ~ # wget http://files.tuxhelp.org/hiawatha/hiawatha_8.5_amd64.deb
Um den Server jedoch zu installieren müssen wir vorher noch ein paar Abhängigkeiten auflösen, die wir uns erst einmal anzeigen lassen
root ~ # dpkg -I hiawatha_8.5_amd64.deb new debian package, version 2.0. size 320488 bytes: control archive= 1312 bytes. 208 bytes, 8 lines conffiles 482 bytes, 13 lines control 936 bytes, 15 lines md5sums 258 bytes, 11 lines * postinst #!/bin/sh 218 bytes, 10 lines * postrm #!/bin/sh 173 bytes, 9 lines * prerm #!/bin/sh Package: hiawatha Version: 8.5 Architecture: amd64 Maintainer: Chris Wadge <cwadge@gmail.com> Installed-Size: 737 Depends: libc6 (>= 2.7), libxml2 (>= 2.7.4), libxslt1.1 (>= 1.1.25), zlib1g (>= 1:1.1.4), logrotate Suggests: php5-cgi Provides: httpd, httpd-cgi Section: web Priority: optional Homepage: http://www.hiawatha-webserver.org/ Description: Advanced and secure webserver for Unix Hiawatha is a webserver with the three key features: security, easy-to-use and lightweight.
Also schmeissen wir eben noch einen kleinen Befehl in die Kommandozeile:
apt-get install libc6 libxml2 libxslt1.1 zlib1g logrotate
bevor wir Hiawatha per dpkg installieren
root ~ # dpkg -i hiawatha_8.5_amd64.deb
Ist alles gut gelaufen können wir unseren Server ja mal per Browser ansurfen und wir werden sehen das af Port 80 nun unser Hiawatha Webserver läuft.
Was nicht so toll ist das Hiawatha nun mit dem unter dem User nobody läuft, für solche fälle gibt es den User www-data auf Debian Systemen den ich auch nutzen möchte. Das ist auch kein Problem dazu muss man nur die Datei /etc/hiawatha/hiawatha.conf öffnen und die Raute vor ServerId = www-data entfernen.
Nach einem Restart von Hiawatha läuft der Server dann unter dem gewünschten Benutzer.
Noch tut er nicht wirklich mehr als statische Webseiten auszuliefern, da wir noch kein PHP installiert haben. Aber diesen Umstand werden wir auch bald ändern. Genauso wie wir den Webserver so einstellen werden das die Kommunikation damit nur noch SSL verschlüsselt abläuft.