# Installieren von Apache, MySQL, PHP und moregroupware unter Linux

## Zusammenfassung der Installation

Dies ist eine Zusammenfassung der Installationsanweisungen (für ungeduldige Benutzer). Danach folgt eine ausführliche Installationsanleitung.

1. Entpacken Sie das moregroupware Archiv (TAR oder ZIP) in das gewünschte Zielverzeichnis.

2. Der Webserver muss Schreibrechte im moregroupware Verzeichnis haben.

3. Erstellen Sie auf Ihrem Datenbankserver eine neue Datenbank und merken Sie sich den Namen :). Erstellen Sie weiters einen Datenbankbenutzer, den Sie für die Verwendung mit moregroupware verwenden möchten (und verwenden Sie nicht den Zugang des Datenbankadministrators root). Geben Sie dem erstellten Datenbankbenutzer die Rechte, die Sie für sinnvoll erachten, inklusive den Rechten, eine Tabelle zu erstellen und zu löschen (CREATE und DROP). Um eine vorhandene Installation zu aktualisieren folgen Sie den Anweisungen für ein Update, das Sie im Anhang finden.

4. Rufen Sie die Seite `/setup/index.php` in Ihrem moregroupware Verzeichnis auf, zum Beispiel `http://ihredomain.at/moregroupware/setup/index.php` Folgen Sie diesen Anweisungen während der Installation.

5. Nach der Installation melden Sie sich an moregroupware an, indem Sie die Indexseite aufrufen: `http://ihredomain.at/moregroupware/` Mit dem Benutzernamen "admin" und dem Passwort "admin" können Sie sich zum ersten Mal anmelden. Achtung: Sie sollten das Administratorpasswort so bald wie möglich ändern, denn die eben genannten Werte sind die Standardeinstellungen nach jeder Installation. Dies ist ein Sicherheitsrisiko!

6. Belassen Sie aber die Berechtigung für das Erstellen (CREATE) von Tabellen. Ebenso sollten Sie Schreibberechtigung auf das moregroupware Verzeichnis entfernen. Nur die Verzeichnisse der Layoutvorlagen "templates" und temporären Dateien benötigen Schreibrechte.

## Detaillierte Installationsanleitung

Das Beispiel bezieht sich auf MySQL, Apache und UNI* Syntax. Möglicherweise ist es nicht kompatibel zu Ihrem System.

1. Sie benötigen einen Webserver, der die Scriptsprache PHP unterstützt. Wenn Sie nicht über diesen verfügen, müssen Sie zuerst einen Webserver installieren. Eine Anleitung dazu würde den Umfang dieses Handbuch sprengen. Sie könnten Hilfen dazu im Verzeichnis der moregroupware Dokumentation finden, wie Sie moregroupware unter Windows und RedHat Linux installieren. Lesen Sie dazu die Datei namens "Windows" oder "RedHat". Des weiteren finden Sie im Internet weitere Anleitungen dazu, zum Beispiel unter httpd.apache.org.

2. Natürlich benötigen Sie auch einen Datenbankserver. Die eben genannten Verweise können Ihnen bei der Installation behilflich sein.

3. Wenn Sie möchten, können Sie moregroupware allein auf einem virtuellen Server betreiben. Dazu finden Sie weitere Hinweise in der Dokumentation Ihres Webservers. Ebenso ist eine verschlüsselte Verbindung über SSL zur Absicherung sinnvoll.

4. Entpacken Sie das heruntergeladene Archiv in das gewünschte Verzeichnis, zum Beispiel in das Dokumentenverzeichnis Ihres (virtuellen) Webservers. Es empfiehlt sich auch, das Verzeichnis mit einem kürzeren Namen zu benennen, damit Sie die Adresse schneller tippen können.

                 #> cd /pfad/zu/ihrem/dokumentenverzeichnis
                 #> tar xzf moregroupware-x.y.z.tar.gz

5. Versichern Sie sich, dass der Webserver Schreiberechte im moregroupware Verzeichnis besitzt. Dies ist notwendig, um die Konfiguration während der Installation abzuspeichern und die temporären Verzeichnisse zu erstellen. Am einfachsten ist es, dem moregroupware Verzeichnis Schreibrechte für alle zu geben. Jedoch ist dies auch am unsichersten. Lesen Sie in der Dokumentation Ihres Webservers nach, wie Sie dies am besten lösen können.

                 #> chmod o+w moregroupware/

6. Erstellen Sie für moregroupware eine neue Datenbank. Wenn Sie dazu keine Möglichkeit besitzen (weil Sie zum Beispiel auf einem gemieteten Server keine Berechtigungen dazu besitzen), können Sie auch eine existierende Datenbank verwenden. Alle von moregroupware erstellten Tabellen besitzen das Präfix "mgw_". Dennoch ist ein Installation mit einer eigenen Datenbank die bevorzugte Methode.

                 #> mysqladmin -u root -p create moregroupware

7. Legen Sie nun einen Datenbankbenutzer für die Arbeit mit moregroupware an. Dieser muss die Rechte SELECT, INSERT, UPDATE und DELETE an der moregroupware Datenbank besitzen. Des weiteren muss der Benutzer berechtigt sein, Tabellen anzulegen (CREATE). Während der Installation benötigt der Benutzer auch die Berechtigung, Tabellen zu löschen (DROP), die nach der Installation wieder entfernt werden kann.

                 #> mysql -u root -p mysql
                 !> INSERT INTO user (host,user,password,select_priv,insert_priv,update_priv,
                 delete_priv,create_priv,drop_priv) VALUES ('localhost','moregw',
                 PASSWORD('sicheresPW'),'Y','Y','Y','Y','Y','Y');

8. Nun öffnen Sie mit Ihrem Browser folgende Seite, um die eigentliche Installation zu beginnen, zum Beispiel: `http://ihredomain.at/moregroupware/setup/index.php`. Folgen Sie diesen Anweisungen während der Installation. Sollte während der Installation ein Fehler auftreten, wird Ihnen in den meisten Fällen die Installationsroutine anzeigen, wo der Fehler begraben liegt. Sie können diesen Schritt wiederholen und die Eingaben korrigieren, bis der Fehler behoben ist.

9. Nach der Installation können Sie sich an moregroupware mit den Benutzernamen "admin" und dem Passwort "admin" anmelden, indem Sie die Indexseite, zum Beispiel `http://ihredomain.at/moregroupware/` aufrufen. Sie sollten das Passwort möglichst bald ändern, denn es ist bei allen Installationen die Standardeinstellung. Unter der Kategorie "Admin" -> "Benutzermanager" können Sie dies für den Benutzer "admin" als auch für die anderen, schon existierenden Benutzer tun.

10. Schließlich sollten Sie dem Webserver auch die Schreibrechte für das moregroupware Verzeichnis entziehen. Nur die temporären Verzeichnisse der Module (und Templates) müssen das Schreibrecht behalten.

                  #> chmod o-w moregroupware/

## Ausführliche Installationsanleitung

In diesem Abschnitt finden Sie eine Anleitung, wie Sie Schritt für Schritt einen Server mit moregroupware installieren können. Diese Anleitung wurde, wie auch die Installationsanweisungen für Windows, von Bjørn Roger Rasmussen geschrieben. Sie erhalten hier auch weitere Informationen über die Installation von Apache und MySQL, die hier detaillierter beschrieben ist als in den vorigen Kapiteln.

### moregroupware installieren unter RedHat 7.x und 8.x

Eine Alternative zu den folgenden Anweisungen ist der LinuxEasyInstaller. Dieses Paket übernimmt die Installation von MySQL, Apache, PHP und phpMyAdmin für Sie. Mehr Informationen dazu finden Sie untern http://www.phpmylinux.net/?rub=lei .

Zurück zur Installation von moregroupware ohne Hilfe des LinuxEasyInstallers:

Nach dieser Anleitung können Sie moregroupware Schritt für Schritt unter RedHat Linux 7.x und 8.x installieren. Wenn Sie einen andere Linuxdistribution verwenden, können einige Details variieren.

### Bereiten Sie Ihren Computer für moregroupware vor

Die Anleitung basiert auf einer Neuinstallation von RedHat Linux. Ich habe mich für eine benutzerdefinierte Installation entschieden und entsprechend die Pakete für Apache, PHP und MySQL ausgewählt.

Nach der Installation loggen Sie sich als root ein und stellen im Shell Setup sicher, dass folgende Dienste gestartet werden beziehungsweise laufen:

- httpd (Apache Webserver)

- mysqld (MySql Datenbankserver)

- Optional: sshd (sicheres "FTP" und "Telnet")

Wählen Sie diese Dienste aus und starten Sie Ihren Computer neu. (Wenn Sie wissen, wie Sie diese Dienste auch ohne Neustart starten können, ist dies nicht notwendig, zum Beispiel `/etc/init.d/mysqld start` and `/etc/init.d/httpd start`).

Anstatt des Shell Setups können Sie auch folgende Anweisungen verwenden:

        chkconfig httpd on
        chkconfig mysqld on

Nach den Einstellungen über das Shell Setup oder chkconfig werden die benötigten Dienste bei jedem Systemstart mitgeladen.

Starten Sie Ihren Browser mit der Adresse Ihres Computers, zum Beispiel http://ipadresse_ihres_computers/, und stellen Sie sicher, dass der Webserver läuft. Sie sollten die Testseite des Webservers zu Gesicht bekommen. Um PHP zu überprüfen, müssen Sie eine kleine Textdatei anlegen, die folgendes enthält (Unter Linux könnten Sie den Texteditor Pico verwenden):

        <?php phpinfo(); ?>

Speichern Sie die Datei unter `/var/www/html` zum Beispiel unter dem Namen `test.php`. Rufen Sie in Ihrem Browser mit http://ipaddresse_ihres_computers/test.php diese Testdatei auf, die eine Menge an Informationen über Ihre PHP Installation enthalten.

### Konfigurieren von MySQL

Führen Sie die folgenden Kommandos aus:

          mysqladmin -u root password sicheres_pw
          mysqladmin -u root -p create MGW # (geben Sie das eben gewählte Passwort ein, wenn Sie danach gefragt werden)
          mysql -u root -p # (eben Sie das eben gewählte Passwort ein, wenn Sie danach gefrage werden)

Des weiteren führen Sie den folgenden Befehl aus, wenn Sie im MySQL Klienten eingeloggt sind: `grant all on MGW.* to MGW@localhost identified by 'ihr_gewaehltes_passwort';` Mit \q verlassen Sie den MySQL Klienten!

Erklärung dazu:

Nach der Installation von RedHat Linux existiert in der MySQL Datenbank ein vordefinierter Benutzer namens root, der ohne Passwort angelegt ist. Mit dem ersten MySQL Kommando haben wir das Passwort auf ein selbst gewähltes Passwort geändert.

Im zweiten MySQL Kommando haben wir einen neue Datenbank mit dem Namen MGW angelegt, mit der wir moregroupware später betreiben wollen. Dazu benötigen wir die Rechte des Datenbankbenutzers root und dem entsprechenden Passwort, das wir eine Zeile darüber angelegt haben.

In der dritten Zeile melden wir uns an der MySQL Shell an und mit der vierten Anweisung wird ein neuer Datenbankbenutzer mit dem Namen wie die Datenbank - MGW angelegt, der alle Rechte in der gleichnamigen Datenbank besitzt. Das Passwort für diesen Benutzer haben Sie ebenfalls festgelegt.

Mit \q haben Sie die MySQL Shell beendet.

### Entpacken des moregroupware Archivs

Entpacken Sie das Archiv nach `/var/www/html/moregroupware/` auf Ihrem Linux Computer.

Ich habe die Dateien von moregroupware auf meinen Windows Computer heruntergeladen und danach mit WinSCP (SSH FTP) auf den Linux Computer kopiert. WinSCP finden Sie unter http://winscp.vse.cz/eng/

Überprüfen Sie die Rechte der Dateien und Verzeichnisse nach dem Transfer. Der Eigentümer dieser sollte der Benutzer root sein, die Berechtigungen auf 757 stehen.

### Konfigurieren von moregroupware

Öffnen Sie mit Ihrem Browser die Seite `http://ihre_ip_adresse/moregroupware/setup/index.php` Wählen Sie Ihre bevorzugte Sprache aus und klicken Sie auf weiter. Nun haben Sie eine Seite mit einigen Installationseinstellungen vor sich. Die Installationsprozedur ist im Detail hier erklärt.

### Sicherheit

Nach der Installation sollten Sie moregroupware etwas absichern. Nach der Installation haben Sie die folgende Anweisung erhalten:

"Das moregroupware-Team empfiehlt, die Zugriffsrechte für den moregroupware Ordner so einzurichten, dass nicht jeder die Skripte ändern oder starten kann. Vollen Zugriff sollte nur der Webserver haben."

Das Dokumentenverzeichnis des Webservers unter RedHat Linux (`/var/www/html/`) gehört normalerweise dem Benutzer root, unter welchem auch der Webserver läuft. Das ist nicht sehr sicher. Ich empfehle Ihnen, im Internet nach weiteren Informationen zur Absicherung Ihres Webservers zu suchen.