Blue Flower

Installationsanleitung - Sicherheit

Da Sie OnBuSys auf Ihrem Server/Webspace auf eigene Rechnung und Gefahr betreiben, sollten Sie Ihre Installation sichern und vor unberechtigten Zugriffen schützen. Dazu erhalten Sie hier zunächst einige Hintergrundinformationen.

OnBuSys besteht aus genau zwei Teilen:

1. Aus dem Ordner 'OBS', der alle Programm- und Sprachdateien enthält und
2. der zugehörigen mySQL-Datenbank, die all Ihre Daten und Texte, enthält.

Außerhalb dieser beiden Teile werden durch die Installation von OnBuSys keinerlei Veränderungen auf Ihrem Server/Webspace vorgenommen.

Diese beiden Teile sind insofern voneinander unabhängig, als Änderungen bei einem Teil keinerlei Auswirkungen auf den anderen haben.
Störungen im Ordner 'OBS' führen dazu, dass das Programm nicht mehr ordnungsgemäß läuft, die Daten aber erhalten bleiben. Durch Ersetzen des defekten Ordners 'OBS' durch eine Sicherung wird das Programm sofort wieder uneingeschränkt lauffähig.
Umgekehrt führt eine Störung in der mySQL-Datenbank zu einem Datenverlust, das Programm selbst bleibt aber lauffähig. Auch hier können Sie das Programm wieder lauffähig machen, indem Sie die korrupte Datenbank durch eine Sicherung ersetzen. Dabei gehen aber die Änderungen an den Daten verloren, die seit der letzen Sicherung durchgeführt wurden.

Um Ihre komplette Installation von OnBuSys zu sichern, genügt es also, diese beiden Teile extern zu sichern:

Um den Ordner 'OBS' zu sichern, müssen Sie lediglich diesen Ordner z.B. per FTP von Ihrem Server/Webspace auf einen lokalen Datenträger kopieren. Dies müssen Sie nur ausführen, wenn Sie Ihre Installation abgeschlossen haben, wenn Sie ein Patch aufgespielt oder sonstige Änderungen im Ordner 'OBS' vorgenommen haben. Im Störungsfallsfall müssen Sie lediglich Ihren Ordner 'OBS' auf dem Server/Webspace durch den Sicherungsordner ersetzen. Wie bereits erwähnt, werden dabei Ihre Daten in der mySQL-Datenbank nicht tangiert.

Da sich Ihre Daten in der mySQL-Datenbank i.a. ständig ändern, ist eine tägliche Sicherung der Datenbank unerläßlich. Normalerweise bieten die Internet-Service-Provider (ISP) die Möglichkeit an, dass Ihre Datenbank täglich zu einer bestimmten Zeit automatisch gesichert wird und dass im Störungsfall diese Sicherung in einfacher Weise eingespielt werden kann. Informieren Sie sich beim ISP, der Ihnen Ihren Server/Webspace zur Verfügung stellt.

Zusätzlich werden beim laufenden Betrieb von OnBuSys nach der Durchführung bestimmter Aktionen sog. Datenbankwiederherstellungspunkte intern im Ordner 'OBS -> DBSafe' gespeichert, mit denen Sie einen früheren Zustand Ihre Datenbank wieder herstellen können. Eine ausführliche Beschreibung des Verfahrens erhalten Sie auf der Adminseite im TAB 'Buchungskalender -> Datenbank-Sicherungen'.
Beachten Sie, dass diese internen Datenbanksicherungen verloren gehen, wenn der Ordner OBS ersetzt wird.

Weiter ist es wichtig, dass Sie Ihre Installation vor unberechtigten Zugriffen schützen. Dazu sind zunächst einige einschlägige Grundregeln zu beachten:

1. Wählen Sie kein einfaches Kennwort wie z.B. einen Vornamen.
2. Speichern Sie das Kennwort nicht auf Ihrem PC.
3. Schützen Sie Ihren PC mit einem Antivirus-Programm.
4. Machen Sie Ihre OnBuSys-mySQL-Datenbank nicht öffentlich zugänglich.

Zusätzlich sollten Sie bestimmte Teile Ihres Ordners 'OBS' z.B. per '.htaccess' sichern. Eine ausführliche Darstellung dazu und die Möglichkeit, Kennwörter zu verschlüsseln, finden Sie auf selfhtml.org.

Im Folgenden erhalten Sie eine Anleitung, wie Sie wichtige Teile vor einem unberechtigten Zugriff auf einem Apache Webserver (Webspace) schützen sollten (für andere Webserver geht es ähnlich). Oft bieten die ISP einen sog. 'Verzeichnis Schutz Manager' an, mit dem sich das im Folgenden beschriebene Verfahren stark vereinfacht.
 
Zugriffsschutz für den Ordner 'OBS/DBSafe'

Auf diesen Ordner wird nur vom Programm zugegriffen, eine direkter Zugriffsmöglichkeit sollte unbedingt verhindert werden. Der Zugriffsschutz beeinträchtigt in keiner Weise den ordnungsgemäßen Programmablauf.
Aus Sicherheitsgründen müssen Sie bei aktiviertem Zugriffsschutz Ihren .htaccess-Benutzernamen und das zugehörige Kennwort eingeben, wenn Sie auf der Adminseite einen separaten Mietvertrag oder eine separate Rechnung abrufen.

Gehen Sie wie folgt vor:

1. Erzeugen Sie mit einem Texteditor eine Datei, die folgende Zeile enthält:

Benutzer:verschlüsseltes_Kennwort
z.B.
Michael:b2AKlZfcDe9xI

Die Verschlüsselung Ihres Kennwortes können Sie auf der Seite durchführen, die Sie mit dem Link zu selfhtml.org öffnen können.

2. Speichern Sie diese Datei mit dem Namen '.htusers' und laden Sie diese Datei hoch auf Ihren Server/Webspace in einen Ordner, der oberhalb des sog. DocumentRoot liegt (das DocumentRoot ist der Ordner, in dem die Internetseiten abgelegt sind, z.B. index.html). Informieren Sie sich bei Ihrem ISP nach Alternativen, falls Sie keine Dateien oberhalb des DocumentRoot ablegen können.
Falls diese Datei '.htusers' bereits existiert, müssen Sie lediglich die o.g. Zeile in diese einfügen.

3. Erzeugen Sie mit einem Texteditor eine weitere Datei dem Inhalt:

AuthName 'OnBuSys'
AuthType Basic
AuthUserFile /server_pfad_zu_htusers/.htusers
Require valid-user

Der Pfad 'server_pfad_zu_htusers' ist abhängig von den Vorgaben Ihres ISP. Sie können ihn normalerweise in Ihrem FTP-Programm ablesen, wenn Sie sich in dem Ordner befinden, in dem die Datei '.htusers' abgelegt ist.

4. Speichern Sie diese Datei mit dem Namen '.htaccess' und laden Sie diese Datei hoch auf Ihren Server/Webspace in den Ordner 'OBS/DBSafe'.

Zugriffsschutz für das Verwaltungsskript 'admin.php'

Der Zugang zur Adminseite ist nur über die Datei 'admin.php' möglich und sollte deshalb besonders geschützt werden. Dieser Zugriffsschutz erweitert den bereits in OnBuSys vorhandenen Kennwortschutz, hat allerdings den Nachteil, dass man beim erstmaligen Öffnen der Adminseite zusätzlich einen Benutzernamen und ein Kennwort eingeben muss. Dieser zusätzliche Aufwand ist aber vernachlässigbar klein im Verhältnis zum Aufwand, der entsteht, wenn der Schadensfall eingetreten ist.
Wenn beide Arten des Zugriffsschutzes aktiviert sind, müssen Sie nur beim erstmaligen Öffnen der Adminseite zusätzlich den Benutzernamen und das zugehörige Kennwort eingeben. Beim Abruf eines separaten Mietvertrages oder einer separaten Rechnung sind diese Eingaben dann nicht mehr erforderlich. Insofern sollten Sie beide Arten unbedingt aktivieren.

Zur Aktivierung dieses Zugriffsschutzes müssen Sie mit einem Texteditor eine weitere Datei erzeugen dem Inhalt:

<FilesMatch "^admin\.php$'>
AuthName 'Admin-Bereich'
AuthType Basic
AuthUserFile /server_pfad_zu_htusers/.htusers
Require valid-user
</FilesMatch>

'server_pfad_zu_htusers' genau wie oben.

Diese Datei müssen Sie wieder mit dem Namen '.htaccess' speichern und z.B. per FTP hoch auf Ihren Server/Webspace in den Ordner 'OBS' laden.