Einer der wichtigsten Grundgedanken war es unter anderem, festzustellen in wie weit die Anbindung von Datenbanken an das Internet Web-Server unabhängig ist. Deshalb wurden für die Tests die folgenden beiden Web-Server ausgewählt.
Es stellte sich jedoch bald heraus, daß die meisten frei verfügbaren Datenbanken nebst Web-Interfaces speziell auf den Web-Server Apache zugeschnitten sind. Aus diesem Grund wird in den weiteren Kapiteln bei der Installations- und Konfigurationsbeschreibung der Datenbanken und Web-Interfaces nur noch auf den Apache Web-Server eingegangen.
Parallel dazu stellte Christoph Metten[1] bei der Ausarbeitung seiner Diplomarbeit fest, daß der Web-Server Roxen zum Teil große Probleme mit CGI-Programmen hatte.
Aus diesen Gründen ist die Untersuchung auf Unabhängigkeit schon zu Beginn eingestellt worden. Der Web-Server Roxen wurde außerdem nicht mehr weiter verwendet. Das Kapitel 2.2 geht trotzdem auf die Installation von Roxen bis zur Entscheidung ``pro Apache'' ein.
Einer der am häufigsten eingesetzten Web-Server unter UNIX ist der Web-Server Apache. Deshalb, und weil die meisten WWW-Interfaces speziell auf den Apache zugeschnitten wurden (sie lassen sich zum Teil direkt als Apache-Module kompilieren), kommt hier vorwiegend der Web-Server Apache in seiner Version 1.2 zum Einsatz.
Die Installation des Servers gestaltet sich je nach verwendetem Modul und Datenbank etwas anders. Daher wird im Weiteren nur die Standard-Installation von Apache 1.2 beschrieben. Auf eine Beschreibung der Installation, Konfiguration und Wirkungsweise der einzelnen im Paket enthaltenen Module wird hier verzichtet. Diese kann im Online-Manual[4] von Apache unter http://www.apache.org nachgelesen werden.
Soll der Web-Server mit einem Datenbank-Web-Interface installiert
werden, so beachte man die Querverweise (gekennzeichnet durch
) auf
die Installationsbeschreibungen der einzelnen Datenbank-Web-Interfaces.
Source-Quellen: http://www.apache.org
Die Standard-Installation des Apache Web-Servers erfolgt in folgenden
Schritten:
Danach muß der Web-Server zum Kompilieren vorkonfiguriert werden. Dies ist deshalb notwendig, da Apache einige optionale Module unterstützt, von denen der Kompiler wissen muß, welche er mitkompilieren soll. Außerdem müssen einige plattformabhängige Einstellungen getroffen werden.
Hierfür sind folgende Schritte durchzuführen:
Leider befindet sich das Binary des Servers nach dem Kompilieren im Source-Code-Directory und kann nicht wie gewohnt mit make install in ein vordefiniertes Directory installiert werden, um von dort jederzeit über die Kommandozeile gestartet werden zu können.
Darum wurde der Server händisch in das Verzeichnis /soft/apache-1.2 installiert. Dies geschah mit:
cd /soft
mkdir apache-1.2
cd apache-1.2
mkdir bin
mkdir conf
mkdir html
mkdir logs
cd html
mkdir icons
cp /usr/src/packages/apache_1.2.3/icons/* ./icons
cd /usr/src/packages/apache_1.2.3/src
cp ./httpd /soft/apache-1.2/bin/
cd ..
cd ./conf
cp ./access.conf-dist /soft/apache-1.2/conf/access.conf
cp ./http.conf-dist /soft/apache-1.2/conf/http.conf
cp ./srm.conf-dist /soft/apache-1.2/conf/srm.conf
cp ./mime.types /soft/apache-1.2/conf/
Beim Booten eines Systems sollten alle wichtigen Dämon-Prozesse automatisch
gestartet werden. Hierzu bedarf es eines kleinen Shell-Skriptes (Anhang
A.4, S.
), welches von
/etc/init.d
beim Booten des Systems genutzt wird.
Unter S.u.S.e.-LINUX wird das Skript wie nachstehend eingebunden:
Variablen:
apachehome - Installationsverzeichnis des Web-Servers
wwwuser - UserID des Web-Servers
killallwww - sollen alle Prozesse die unter 'wwwuser' laufen beim
Beenden des Web-Servers mit beendet werden
pidfile - Datei, welche die pid des Web-Servers enthält (wird zum
Beenden des Servers verwendet)
Beim nächsten Booten wird der Web-Server dann automatisch gestartet.
Eine detailierte Konfigurationsbeschreibung kann im Online-Manual[4] von Apache nachgelesen werden. Lediglich die für die Standard-Installation notwendigen Änderungen in den Konfigurations-Dateien werden jetzt beschrieben.
Erforderliche Änderungen an den Konfigurations-Dateien für den Gebrauch
eines WWW-Interfaces werden in den durch
gekennzeichneten
Kapiteln erleutert.
Hierzu sind in den Dateien
im Verzeichnis /soft/apache-1.2/conf nur ein paar kleine Änderung vorzunehmen. Diese sind:
Änderungen in der Datei
srm.conf für den Einsatz
des W3-mSQL Interface Paketes siehe Kapitel 4.1.7
(Seite
).
Änderungen in der Datei
srm.conf für den Einsatz
des Apache Moduls PHP/FI stehen in Kapitel 4.2.3 (S.
).
Source-Quellen: http://www.algroup.co.uk
Bekanntlich bietet das
http Protokoll
keine Datensicherheit bei der Übertragung.
Es überträgt Daten (HTML Seiten) in ihrer ursprünglichen Form - also
unverschlüsselt. Für manche Art von Daten, die nicht jedem zugänglich
sein sollen, wenn er in der Leitung lauscht, ist es jedoch unumgänglich,
sie zu verschlüsseln.
Für den Web-Server Apache gibt es daher einen zusätzlichen Patch,
der es ihm ermöglicht, Web-Seiten über das
https
Protokoll verschlüsselt zu übertragen. Dabei bedient er sich der SSL
(Secure Socket Layer) Technik.
Vor der Installationbeschreibung jedoch noch ein wichtiger Hinweis! In vielen teilen der Welt ist der Export/Imoprt von Cryptographischer Software verboten. Vor dem Einsatz sollte man sich unbedingt mit den landestypischen Gesetzen vertraut machen.
Bevor der SSL Zusatz für Apache installiert werden kann, müssen einige Voraussetzungen gegeben sein.
Sind all diese Voraussetzungen gegeben, kann mit der Installation
begonnen werden.
Der Web-Server sollte jetzt das https Protokoll beherschen und die Dateien verschlüsselt übertragen. Ob damit jedoch alle Sicherheitsrisiken ausgeschlossen sind mag jedoch bezweifelt werden.
Zur eigenen Gewissensprüfung sind einige Fragen aus der im Patch enthaltenen Datei SECURITY frei ins Deutsche übertragen:
Bei Beantwortung dieser Fragen wird man schnell erkennen, daß es `` das Sicherheitssystem '' leider gar nicht geben kann.
Eine einzige, definitive Sicherheit bietet der Apache-SSL jedoch: mit einem selbst erstellten Zertifikat ist es dem Microsoft Internet Explorer nicht möglich die verschlüsselten Seiten anzuzeigen! Er erkennt das Zertifikat einfach als nicht von einer autorisierten Zertifikierungsstelle erstellt, und verweigert den Zugriff.
Für die Wahl des Web-Servers Roxen war besonders sein Browser gesteuertes Konfigurationsmenü verantwortlich. Dieses ermöglicht dem Administrator ohne umständliches editieren von Config-Dateien eine einfache, übersichtliche Konfiguration des Servers.
Source-Quellen: CD-Rom (c't freeware & shareware '97)
Die Installation der Quellen erweist sich als sehr einfach. Hierzu sind folgende Schritte durchzuführen.
./configure -prefix=/soft
Dadurch wird ein plattformspezifisches
Makefile generiert.
make
wird der Web-Server übersetzt
make install
in das vorher angegebene Verzeichnis installiert.
Nach erfolgreicher Installation der Quellen wird weiter wie nachstehend vorgegangen:
Wenn der Server ordnungsgemäß gestartet ist, kann mit der Konfiguration
(Kapitel 2.2.2, S.
)
fortgefahren werden.
Soll der Server automatisch gestartet werden wenn das System bootet, so sind noch einige weitere Konfigurationsschritte - ähnlich wie beim Web-Server Apache - durchzuführen.
Als erstes jedoch sollte der Web-Server als eigener System-Benutzer laufen; niemals darf er als 'root' laufen, da sonst Hacker über eventuelle Security-Bugs im Server das ganze System lahmlegen können. Dazu muß aber ein eigener neuer Benutzer angelegt sein. Diesem sollten außerdem alle Rechte an allen relevanten Dateien gegeben werden.
Jetzt kann der Server in die Bootsequenz des Systems
eingebunden werden. Für LINUX (sowie alle anderen UNIX-Systeme) kann
das mitgelieferte Skript
roxen/tools/init.d_roxen
genutzt werden. Es wird von
/etc/init.d zum
Starten genutzt.
Dabei wird wie folgt vorgegangen:
Anschließend kann das System neu gebootet werden. Der Web-Server startet jetzt automatisch.
Nachdem der Server gestartet wurde, kann er mittels eines Browsers
(z.B. Netscape) konfiguriert werden. Hierzu wird die Administrations-URL
(S.
) benötigt. Jetzt meldet sich der Server
für die erste Konfiguration.
Als erstes wird ein Benutzername und ein Paßwort eingegeben (Abbildung 2.1,
S.
), um nicht authorisierten Personen den
Zugriff auf das Konfigurations-Interface zu verweigern. Weiter kann
der Zugriff auf bestimmte IP-Pattern begrenzt werden.
Wird z.B. unter IP-Pattern die IP-Nummer 194.95.108.* eingegeben, so können nur Rechner deren IP-Nummer mit 194.95.108 beginnt auf das Konfigurations-Interface zugreifen.
Nach Betätigen des Buttons Use these values meldet sich der Server mit seinem eigentlichen Konfigurationsmenü. Jetzt kann mit der eigentlichen Konfiguration begonnen werden.
Über New Virtual Server wird ein neuer virtueller Server eingerichtet. Diesem Server muß als erstes ein Name vergeben werden (z.B. Server 1). Dann wird ihm ein Konfigurations Typ zugeordnet (z.B. Standard configuration- alle relevanten Module bereits vorkonfiguriert). Durch klicken des Buttons Add It wird der neue virtuelle Server angelegt.
Unter dem Menüpunkt Server variables können noch einige Grundeinstellungen vorgenommen werden; nachstehend werden jedoch nur die für die Tests zu verändernden Einstellungen beschrieben.
Nach diesen Einstellungen erfolgt die individuelle Konfiguration des Servers. Für die zum Testen benötigte Konfiguration wurden folgende Module der Systemumgebung angepasst:
Um jedoch serverseitige CGI-Programme ausführen zu können, müssen noch ein paar weitere Schritte durchgeführt werden.