<?xml version="1.0" encoding="iso-8859-1"?>
<chapter id="appendix_lamp">
  <title>Installieren von Apache, MySQL, PHP und moregroupware unter Linux</title>
  
  <section id="appendix_lamp_short">
    <title>Zusammenfassung der Installation</title>
    
    <para>Dies ist eine Zusammenfassung der Installationsanweisungen
      (für ungeduldige Benutzer). Danach folgt eine ausführliche
      Installationsanleitung.
    </para>
    
    <orderedlist>
      
      <listitem>
        <para>Entpacken Sie das moregroupware Archiv (TAR oder ZIP)
          in das gewünschte Zielverzeichnis.
        </para>
      </listitem>
      
      <listitem>
        <para>Der Webserver muss Schreibrechte im moregroupware
          Verzeichnis haben.
        </para>
      </listitem>
      
      <listitem>
        <para>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.
        </para>
      </listitem>
      
      <listitem>
        <para>Rufen Sie die Seite
          <literal>/setup/index.php</literal> in Ihrem moregroupware
           Verzeichnis auf, zum Beispiel
          <literal>http://ihredomain.at/moregroupware/setup/index.php</literal>
          Folgen Sie <link linkend="setup_setup">diesen Anweisungen</link>
          während der Installation.
        </para>
      </listitem>
      
      <listitem>
        <para>Nach der Installation melden Sie sich an
          moregroupware an, indem Sie die Indexseite
          aufrufen:
          <literal>http://ihredomain.at/moregroupware/</literal>
          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!
        </para>
      </listitem>
      
      <listitem>
        <para>
          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.
          </para>
      </listitem>
      
    </orderedlist>
    
  </section>
  
  <section id="appendix_lamp_long">
    <title>Detaillierte Installationsanleitung</title>
    
    <para>Das Beispiel bezieht sich auf MySQL, Apache und UNI* Syntax.
      Möglicherweise ist es nicht kompatibel zu Ihrem System.
    </para>
    
    <orderedlist>
      
      <listitem>
        <para>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 <ulink url="http://httpd.apache.org/">
          httpd.apache.org</ulink>.
      </para>
    </listitem>
    
    <listitem>
      <para>Natürlich benötigen Sie auch einen Datenbankserver.
        Die eben genannten Verweise können Ihnen bei der Installation
        behilflich sein.
      </para>
    </listitem>
    
    <listitem>
      <para>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.
      </para>
    </listitem>
    
    <listitem>
      <para>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.  
        <programlisting>
          #> cd /pfad/zu/ihrem/dokumentenverzeichnis
          #> tar xzf moregroupware-x.y.z.tar.gz
        </programlisting>
      </para>
    </listitem>
    
    <listitem>
      <para>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.
        <programlisting>
          #> chmod o+w moregroupware/
        </programlisting>
      </para>
    </listitem>
    
    <listitem>
      <para>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.
        <programlisting>
          #> mysqladmin -u root -p create moregroupware
        </programlisting>
      </para>
    </listitem>
    
    <listitem>
      <para>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.
        <programlisting>
          #> 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');
        </programlisting>
      </para>
    </listitem>
    
    <listitem>
      <para>Nun öffnen Sie mit Ihrem Browser folgende Seite, um die
        eigentliche Installation zu beginnen, zum Beispiel:
        <literal>http://ihredomain.at/moregroupware/setup/index.php</literal>.
        Folgen Sie <link linkend="setup_setup">diesen Anweisungen</link>
        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.
      </para>
    </listitem>
    
    
    <listitem>
      <para>Nach der Installation können Sie sich an moregroupware
        mit den Benutzernamen "admin" und dem Passwort "admin" anmelden,
        indem Sie die Indexseite, zum Beispiel
        <literal>http://ihredomain.at/moregroupware/</literal> 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.
        </para>
    </listitem>
    
    <listitem>
      <para>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.
        <programlisting>
          #> chmod o-w moregroupware/
        </programlisting>
      </para>
    </listitem>
    
  </orderedlist>
</section>

<section id="appendix_lamp_verylong">
  <title>Ausführliche Installationsanleitung</title>
  
  <para>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.
  </para>
  
  <section id="appendix_lamp_verylong_intro">
    <title>moregroupware installieren unter RedHat 7.x und 8.x</title>
    
    <note>
      <para>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
        <ulink url="http://www.phpmylinux.net/?rub=lei">
        http://www.phpmylinux.net/?rub=lei
       </ulink>.
    </para>
  </note>
  
  <para>Zurück zur Installation von moregroupware ohne Hilfe des
    LinuxEasyInstallers:
  </para>
  
  <para>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.
  </para>
</section>

<section id="appendix_lamp_verylong_preparing">
  <title>Bereiten Sie Ihren Computer für moregroupware vor</title>
  
  <para>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.
  </para>
  
  <para>Nach der Installation loggen Sie sich als root ein und stellen
    im Shell Setup sicher, dass folgende Dienste gestartet werden 
    beziehungsweise laufen:
    <itemizedlist>
      <listitem>
        <para>httpd  (Apache Webserver)</para>
      </listitem>
      <listitem>
        <para>mysqld (MySql Datenbankserver)</para>
      </listitem>
      <listitem>
        <para>Optional: sshd (sicheres "FTP" und "Telnet")</para>
      </listitem>
    </itemizedlist>
  </para>
  
  <para>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
    <command>/etc/init.d/mysqld start</command> and
    <command>/etc/init.d/httpd start</command>).
  </para>
  
  <para>Anstatt des Shell Setups können Sie auch folgende Anweisungen
    verwenden:
  </para>
  
  <programlisting>
    chkconfig httpd on
    chkconfig mysqld on
  </programlisting>
  
  <para>Nach den Einstellungen über das Shell Setup oder chkconfig
    werden die benötigten Dienste bei jedem Systemstart mitgeladen.
  </para>
  
  <para>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):
    <programlisting><![CDATA[
    <?php phpinfo(); ?>]]></programlisting>
  </para>
  
  <para>
    Speichern Sie die Datei unter <filename>/var/www/html</filename>
    zum Beispiel unter dem Namen <filename>test.php</filename>.
    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.
  </para>
  
</section>

<section id="appendix_lamp_verylong_mysql">
  <title>Konfigurieren von MySQL</title>
  
  <para>Führen Sie die folgenden Kommandos aus:
    <programlisting>
      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)
    </programlisting>
  </para>
  
  <para>Des weiteren führen Sie den folgenden Befehl aus, wenn Sie im
    MySQL Klienten eingeloggt sind:
    <command>grant all on MGW.* to MGW@localhost identified by 'ihr_gewaehltes_passwort';</command>
    Mit \q verlassen Sie den MySQL Klienten!
  </para>
  
  <para>Erklärung dazu:</para>
  
  <para>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.
  </para>
  
  <para>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.
  </para>
  
  <para>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.
  </para>
  
  <para>Mit \q haben Sie die MySQL Shell beendet.</para>
</section>

<section id="appendix_lamp_verylong_unpackmgw">
  <title>Entpacken des moregroupware Archivs</title>
  
  <para>Entpacken Sie das Archiv nach
    <filename>/var/www/html/moregroupware/</filename> auf
    Ihrem Linux Computer.
  </para>
  
  <para>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 <ulink
  url="http://winscp.vse.cz/eng/">http://winscp.vse.cz/eng/
  </ulink>
</para>

<para>Ü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.
</para>
</section>


<section id="appendix_lamp_verylong_mgwsetup">
<title>Konfigurieren von moregroupware</title>

<para>Öffnen Sie mit Ihrem Browser die Seite
  <literal>http://ihre_ip_adresse/moregroupware/setup/index.php</literal>
  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 <link linkend="setup_setup">im Detail hier erklärt</link>.
</para>
</section>

<section id="appendix_lamp_verylong_security">
<title>Sicherheit</title>

<para>Nach der Installation sollten Sie moregroupware
  etwas absichern. Nach der Installation haben Sie die
  folgende Anweisung erhalten:
</para>

<para>"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."
</para>

<para>Das Dokumentenverzeichnis des Webservers unter RedHat Linux
  (<filename>/var/www/html/</filename>) 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. 
</para>

</section>
</section>
</chapter>
