centos:mailserver:horde_-_create._communicate._collaborate

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

Beide Seiten der vorigen Revision Vorhergehende Überarbeitung
Nächste ÜberarbeitungBeide Seiten der Revision
centos:mailserver:horde_-_create._communicate._collaborate [04.08.2011 06:01. ] – [Konfiguration über die WEB-GUI] djangocentos:mailserver:horde_-_create._communicate._collaborate [22.11.2013 12:32. ] django
Zeile 1: Zeile 1:
 +====== horde - Create. Communicate. Collaborate. ======
 +{{:centos:mailserver:horde.png |Horde Headline}}
 +[[http://www.horde.org/groupware/|Horde Groupware]] ist eine freie browserbasierte Kommunikationsplattform für den professionallen Einsatz. Die Anwender haben so die Möglichkeitn Ihre täglichen Aufgaben(-planungen) und Nachrichten komfortabel über einen Webbrowser von überall her durchzuführen.\\
 +\\
 +So bietet die Horde-Portalseite eine kurze Übersicht über alle wichtigen Informationen. Dort kann angezeigt werden, wie viele neue eMails aufgelaufen sind, welche Termine demnächst anstehen, welche Aufgaben noch zu erledigen sind oder auch die neuesten Nachrichten. Viele dieser Übersichten enthalten eine schnelle Zugriffsmöglichkeit auf häufig benötigte Funktionen, wie das Schreiben neuer Emails oder dem Anlegen neuer Kalendereinträge oder Aufgaben. Auch können gemeinsam genutzte Kalender, Kontakte, Aufgaben und Notizen mit Standard Komponenten des Horde-Projekts realisiert werden.\\
 +\\
 +Die nachfolgende Beschreibung zeigt, wie unter Centos 5 ein Horde-Groupware-Server installiert und konfiguriert werden kann.
  
 +===== Horde - Installation =====
 +Für die Installation nutzen wir am besten, das bereits eingebundene **extras-Repository**, da dort bereits fertige RPMs zur verfügung stehen. Folgende Pakete stehen zur Verfügung, die wir nachfolgend zum Großteil installieren und konfigurieren werden.\\
 +\\
 +  * **horde.noarch** : The common Horde Framework for all Horde modules.
 +
 +  * **imp-h3.noarch** : The Internet Messaging Program: webmail access to IMAP/POP3 accounts.
 +  * **kronolith-h3.noarch** : The Horde calendar application.
 +  * **turba-h3.noarch** : The Horde contact management application
 +  * **nag-h3.noarch** : The Horde task list manager.
 +  * **mnemo-h3.noarch** : The Horde note manager application.
 +  * **gollem-h3.noarch** : The Horde web-based File Manager.
 +  * **ingo-h3.noarch** : The Horde web-based Email Filter Rules Manager.\\
 +\\
 +Lediglich das Paket **ingo-h3** werden wir __**nicht**__ installieren, da wir für die Verwaltung unserer //SIEVE//-Filterregeln auf **smartsieve** zurückgreifen, da wir so sowohl für **horde** als auch unserem **Desktop-Mail-User-Agent** //Evolution// oder //kmail// unsere Filterregeln anlegen und verwalten können.
 +==== horde ====
 +Die Installation erfolgt wie gewohnt mittels **yum**.
 +   # yum install horde
 +Was uns **horde** alles mitbringt zeigt uns **rpm -iql**
 +<code># rpm -iql horde
 +
 +Name        : horde                        Relocations: (not relocatable)
 +...
 +
 +...
 +URL         : http://www.horde.org/
 +Summary     : The common Horde Framework for all Horde modules.
 +Description :
 +The Horde Framework provides a common structure and interface for Horde
 +applications (such as IMP, a web-based mail program).  This RPM is
 +required for all other Horde module RPMs.
 +
 +The Horde Project writes web applications in PHP and releases them under
 +Open Source licenses.  For more information (including help with Horde
 +and its modules) please visit http://www.horde.org/.
 +/etc/httpd/conf.d/horde.conf
 +/usr/share/horde
 +/usr/share/horde/COPYING
 +/usr/share/horde/README
 +/usr/share/horde/admin
 +/usr/share/horde/admin/cmdshell.php
 +/usr/share/horde/admin/datatree.php
 +/usr/share/horde/admin/groups.php
 +/usr/share/horde/admin/index.php
 +/usr/share/horde/admin/locale
 +/usr/share/horde/admin/locale/en_US
 +/usr/share/horde/admin/locale/en_US/help.xml
 +/usr/share/horde/admin/locale/fi_FI
 +/usr/share/horde/admin/locale/fi_FI/help.xml
 +/usr/share/horde/admin/locale/hu_HU
 +/usr/share/horde/admin/locale/hu_HU/help.xml
 +/usr/share/horde/admin/perms
 +/usr/share/horde/admin/perms/addchild.php
 +/usr/share/horde/admin/perms/delete.php
 +/usr/share/horde/admin/perms/edit.php
 +/usr/share/horde/admin/perms/index.php
 +/usr/share/horde/admin/phpshell.php
 +/usr/share/horde/admin/sessions.php
 +/usr/share/horde/admin/setup
 +/usr/share/horde/admin/setup/config.php
 +/usr/share/horde/admin/setup/diff.php
 +/usr/share/horde/admin/setup/index.php
 +/usr/share/horde/admin/setup/scripts.php
 +/usr/share/horde/admin/sqlshell.php
 +/usr/share/horde/admin/user.php
 +/usr/share/horde/config
 +/usr/share/horde/config/.htaccess
 +/usr/share/horde/config/conf.php
 +/usr/share/horde/config/conf.php.dist
 +/usr/share/horde/config/conf.xml
 +/usr/share/horde/config/mime_drivers.php
 +/usr/share/horde/config/mime_drivers.php.dist
 +/usr/share/horde/config/motd.php
 +/usr/share/horde/config/motd.php.dist
 +/usr/share/horde/config/nls.php
 +/usr/share/horde/config/nls.php.dist
 +/usr/share/horde/config/prefs.php
 +/usr/share/horde/config/prefs.php.dist
 +/usr/share/horde/config/registry.php
 +/usr/share/horde/config/registry.php.dist
 +...
 +</code>
 +==== imp-h3 ====
 +Die Installation erfolgt auch hier wie gewohnt mittels **yum**.
 +   # yum install imp-h3
 +Was uns **imp-h3** alles mitbringt zeigt uns **rpm -iql**
 +<code># rpm -iql imp-h3
 +
 +Name        : imp-h3                       Relocations: (not relocatable)
 +...
 +
 +...
 +URL         : http://www.horde.org/
 +Summary     : The Internet Messaging Program: webmail access to IMAP/POP3 accounts.
 +Description :
 +IMP is the Internet Messaging Program, one of the Horde applications.
 +It provides webmail access to IMAP and POP3 accounts.
 +
 +The Horde Project writes web applications in PHP and releases them under
 +Open Source licenses.  For more information (including help with IMP)
 +please visit http://www.horde.org/.
 +
 +This package contains customizations for the Mitel Networks SME Server
 +and will probably not work properly on other Linux systems.
 +/usr/share/horde/imp
 +/usr/share/horde/imp/COPYING
 +/usr/share/horde/imp/README
 +/usr/share/horde/imp/acl.php
 +/usr/share/horde/imp/attachment.php
 +/usr/share/horde/imp/compose.php
 +/usr/share/horde/imp/config
 +/usr/share/horde/imp/config/.htaccess
 +/usr/share/horde/imp/config/conf.xml
 +/usr/share/horde/imp/config/filter.txt
 +/usr/share/horde/imp/config/filter.txt.dist
 +/usr/share/horde/imp/config/header.php
 +/usr/share/horde/imp/config/header.php.dist
 +/usr/share/horde/imp/config/menu.php
 +/usr/share/horde/imp/config/menu.php.dist
 +/usr/share/horde/imp/config/mime_drivers.php
 +/usr/share/horde/imp/config/mime_drivers.php.dist
 +/usr/share/horde/imp/config/motd.php
 +/usr/share/horde/imp/config/motd.php.dist
 +/usr/share/horde/imp/config/prefs.php
 +/usr/share/horde/imp/config/prefs.php.dist
 +/usr/share/horde/imp/config/servers.php
 +/usr/share/horde/imp/config/servers.php.dist
 +/usr/share/horde/imp/config/trailer.txt
 +/usr/share/horde/imp/config/trailer.txt.dist
 +/usr/share/horde/imp/contacts.php
 +...
 +</code>
 +==== kronolith-h3 ====
 +Die Installation erfolgt auch hier wie gewohnt mittels **yum**.
 +   # yum install kronolith-h3
 +Was uns **kronolith-h3** alles mitbringt zeigt uns **rpm -iql**
 +<code># rpm -iql kronolith-h3
 +
 +Name        : kronolith-h3                 Relocations: (not relocatable)
 +...
 +
 +...
 +URL         : http://www.horde.org/
 +Summary     : The Horde calendar application.
 +Description :
 +Kronolith is the Horde calendar application.  It provides repeating
 +events, all-day events, custom fields, keywords, and managing multiple
 +users through Horde Authentication.  The calendar API that Kronolith
 +uses is abstracted; MCAL and SQL drivers are currently provided.
 +
 +The Horde Project writes web applications in PHP and releases them under
 +Open Source licenses.  For more information (including help with Kronolith)
 +please visit http://www.horde.org/.
 +/usr/share/horde/kronolith
 +/usr/share/horde/kronolith/COPYING
 +/usr/share/horde/kronolith/README
 +/usr/share/horde/kronolith/addevent.php
 +/usr/share/horde/kronolith/addeventaction.php
 +/usr/share/horde/kronolith/attend.php
 +/usr/share/horde/kronolith/attendees.php
 +/usr/share/horde/kronolith/calendar_search.php
 +/usr/share/horde/kronolith/calendars.php
 +/usr/share/horde/kronolith/config
 +/usr/share/horde/kronolith/config/.htaccess
 +/usr/share/horde/kronolith/config/conf.xml
 +/usr/share/horde/kronolith/config/keywords.php
 +/usr/share/horde/kronolith/config/keywords.php.dist
 +/usr/share/horde/kronolith/config/menu.php
 +/usr/share/horde/kronolith/config/menu.php.dist
 +/usr/share/horde/kronolith/config/prefs.php
 +/usr/share/horde/kronolith/config/prefs.php.dist
 +...
 +</code>
 +==== turba-h3 ====
 +Die Installation erfolgt auch hier wie gewohnt mittels **yum**.
 +   # yum install turba-h3
 +Was uns **turba-h3** alles mitbringt zeigt uns **rpm -iql**
 +<code># rpm -iql turba-h3
 +
 +Name        : turba-h3                     Relocations: (not relocatable)
 +...
 +
 +...
 +URL         : http://www.horde.org/
 +Summary     : The Horde contact management application.
 +Description :
 +Turba is the Horde contact management application, which allows access
 +to and storage of personal contacts (including name, email address,
 +phone number, and other easily customizable fields).  Turba integrates
 +with IMP (Horde's webmail application) as its address book.
 +
 +The Horde Project writes web applications in PHP and releases them under
 +Open Source licenses.  For more information (including help with Turba)
 +please visit http://www.horde.org/.
 +/usr/share/horde/turba
 +/usr/share/horde/turba/LICENSE
 +/usr/share/horde/turba/README
 +/usr/share/horde/turba/add.php
 +/usr/share/horde/turba/addressbooks.php
 +/usr/share/horde/turba/browse.php
 +/usr/share/horde/turba/config
 +/usr/share/horde/turba/config/.htaccess
 +/usr/share/horde/turba/config/attributes.php
 +/usr/share/horde/turba/config/attributes.php.dist
 +/usr/share/horde/turba/config/conf.xml
 +/usr/share/horde/turba/config/menu.php
 +/usr/share/horde/turba/config/menu.php.dist
 +/usr/share/horde/turba/config/mime_drivers.php
 +/usr/share/horde/turba/config/mime_drivers.php.dist
 +/usr/share/horde/turba/config/prefs.php
 +/usr/share/horde/turba/config/prefs.php.dist
 +/usr/share/horde/turba/config/sources.php
 +/usr/share/horde/turba/config/sources.php.dist
 +...</code>
 +==== nag-h3 ====
 +Die Installation erfolgt auch hier wie gewohnt mittels **yum**.
 +   # yum install nag-h3
 +Was uns **nag-h3** alles mitbringt zeigt uns **rpm -iql**
 +<code># rpm -iql nag-h3
 +
 +Name        : nag-h3                       Relocations: (not relocatable)
 +...
 +
 +...
 +URL         : http://www.horde.org/
 +Summary     : The Horde task list manager.
 +Description :
 +Nag is a multiuser task list manager. Users can create any number of "task
 +lists", which can be shared with individual users, groups, or any combination.
 +Any number of task lists can be viewed in a single list. Tasks have due dates,
 +completion times, and can be imported and exported in multiple formats.
 +
 +The Horde Project writes web applications in PHP and releases them under
 +Open Source licenses.  For more information (including help with nag)
 +please visit http://www.horde.org/.
 +/usr/share/horde/nag
 +/usr/share/horde/nag/COPYING
 +/usr/share/horde/nag/README
 +/usr/share/horde/nag/config
 +/usr/share/horde/nag/config/.htaccess
 +/usr/share/horde/nag/config/conf.xml
 +/usr/share/horde/nag/config/menu.php
 +/usr/share/horde/nag/config/menu.php.dist
 +/usr/share/horde/nag/config/prefs.php
 +/usr/share/horde/nag/config/prefs.php.dist
 +...
 +</code>
 +==== mnemo-h3 ====
 +Die Installation erfolgt auch hier wie gewohnt mittels **yum**.
 +   # yum install mnemo-h3
 +Was uns **mnemo-h3** alles mitbringt zeigt uns **rpm -iql**
 +<code># rpm -iql mnemo-h3
 +
 +Name        : mnemo-h3                     Relocations: (not relocatable)
 +...
 +
 +...
 +URL         : http://www.horde.org/
 +Summary     : The Horde note manager application.
 +Description :
 +Mnemo is the Horde notes and memos application. It lets users keep
 +free-text notes and other bits of information which doesn't fit as a
 +contact, a todo item, an event, etc. It is very similar in functionality
 +to the Palm Memo application.
 +
 +The Horde Project writes web applications in PHP and releases them under
 +Open Source licenses.  For more information (including help with Mnemo)
 +please visit http://www.horde.org/.
 +/usr/share/horde/mnemo
 +/usr/share/horde/mnemo/LICENSE
 +/usr/share/horde/mnemo/README
 +/usr/share/horde/mnemo/config
 +/usr/share/horde/mnemo/config/.htaccess
 +/usr/share/horde/mnemo/config/conf.xml
 +/usr/share/horde/mnemo/config/prefs.php
 +/usr/share/horde/mnemo/config/prefs.php.dist
 +...
 +</code>
 +==== gollem-h3 ====
 +Die Installation erfolgt auch hier wie gewohnt mittels **yum**.
 +   # yum install gollem-h3
 +Was uns **gollem-h3** alles mitbringt zeigt uns **rpm -iql**
 +<code># rpm -iql gollem-h3
 +
 +Name        : gollem-h3                    Relocations: (not relocatable)
 +...
 +
 +...
 +URL         : http://www.horde.org/
 +Summary     : The Horde web-based File Manager.
 +Description :
 +Gollem is a web-based File Manager, providing the ability to fully manage
 +a hierarchical file system stored in a variety of backends such as a SQL
 +database, as part of a real filesystem, or on an FTP server.
 +
 +The Horde Project writes web applications in PHP and releases them under
 +Open Source licenses.  For more information (including help with gollem)
 +please visit http://www.horde.org/.
 +/usr/share/horde/gollem
 +/usr/share/horde/gollem/COPYING
 +/usr/share/horde/gollem/README
 +/usr/share/horde/gollem/clipboard.php
 +/usr/share/horde/gollem/config
 +/usr/share/horde/gollem/config/backends.php
 +/usr/share/horde/gollem/config/backends.php.dist
 +/usr/share/horde/gollem/config/conf.xml
 +/usr/share/horde/gollem/config/credentials.php
 +/usr/share/horde/gollem/config/credentials.php.dist
 +/usr/share/horde/gollem/config/menu.php
 +/usr/share/horde/gollem/config/menu.php.dist
 +/usr/share/horde/gollem/config/mime_drivers.php
 +/usr/share/horde/gollem/config/mime_drivers.php.dist
 +/usr/share/horde/gollem/config/motd.php
 +/usr/share/horde/gollem/config/motd.php.dist
 +/usr/share/horde/gollem/config/prefs.php
 +/usr/share/horde/gollem/config/prefs.php.dist
 +...
 +</code>
 +===== VHost-Definition =====
 +Horde bringt uns zwar eine eigene Konfigurationsdatei für unseren Webserver mit (**/etc/httpd/conf.d/horde.conf**). Diese werden wir jedoch nicht nutzen, da wir einen eigenen virtuellen Host hierzu aufsetzen möchten. Somit versehen wir den Inhalt daher mit einem **#** und deaktivieren somit diese Option.
 +   vim /etc/httpd/conf.d/horde.conf
 +<code>
 +#
 +# Horde is a web application framework written in PHP.
 +#
 +
 +#Alias /horde /usr/share/horde
 +</code>
 +Wir bearbeiten also unsere VHost-Datei und tragen dort ein:
 +  # vim /etc/httpd/conf.d/vhosts.conf
 +<code apache vhosts.conf>
 +
 +#
 +# webmailer.nausch.org
 +#
 +<VirtualHost *:80>
 +        ServerName webmailer.nausch.org:80
 +        ServerAdmin webmaster@nausch.org
 +        ServerPath /
 +        DocumentRoot "/usr/share/horde"
 +        <Directory "/usr/share/horde">
 +                Options +FollowSymLinks
 +                AllowOverride AuthConfig
 +                Order allow,deny
 +                Allow from all
 +                # horde.org's recommended PHP settings:
 +                php_admin_flag safe_mode off
 +                php_admin_flag magic_quotes_runtime off
 +                php_flag session.use_trans_sid off
 +                php_flag session.auto_start off
 +                php_admin_flag file_uploads on
 +                # Optional - required for weather block in Horde to function
 +                php_admin_flag allow_url_fopen on
 +
 +                # If horde dies while trying to handle large email file attachments, you are probably hitting PHP's memory limit.
 +                # Raise that limit here, but use caution
 +                # Set to your preference - memory_limit should be at least 32M and be greater than the value set for post_max_size
 +                # php_value memory_limit 32M
 +                # php_value post_max_size 20M 
 +                # php_value upload_max_filesize 10M
 +
 +                # /usr/bin/pear is needed for PEAR. /var/www/html/horde is needed for Horde itself
 +                # TODO: Set an appropriate include_path, too. Might even increase speed a bit.
 +                php_admin_value open_basedir "/usr/share/horde:/usr/share/horde/config:/usr/bin/pear:/tmp:/usr/share/pear:/var/log"
 +                php_admin_flag register_globals off 
 +        </Directory>
 +
 +        <Directory /var/www/html/horde/config>
 +                Order Deny,Allow
 +                Deny from all 
 +        </Directory>
 +
 +        <DirectoryMatch "^/usr/share/horde/(.*/)?(config|lib|locale|po|scripts|templates)/(.*)?">
 +                # Deny access to files that are not served directly by the webserver
 +                Order Deny,Allow
 +                Deny from all 
 +        </DirectoryMatch>
 +
 +        <LocationMatch "^/horde/(.*/)?test.php">
 +                # Deny access to the test.php files except from localhost
 +                Order Deny,Allow
 +                Deny from all 
 +                Allow from 127.0.0.1
 +        </LocationMatch>
 +        DirectoryIndex index.php
 +        ErrorLog logs/webmailer_error.log
 +        CustomLog logs/webmailer_access.log combined
 +</VirtualHost>
 +</code>
 +===== mySQL-Datenbank =====
 +Als Datenbank nutzt [[http://www.horde.org|horde]] eine MySQL-Datenbank mit mehreren Tabellen die es nun gilt anzulegen.
 +==== Datenbank anlegen ====
 +Zum Anlegen des Datenbank-Users, wie auch der Datenbanktabellen, liefert das **RPM** Vorlagen mit, die wir nun anpassen und einspielen werden.\\
 +die Vorlage finden wir unter **/usr/share/horde/scripts/sql/create.mysql.sql**. DIese datei bearbeiten wir mit dem Editor unserer wahl, also z.B. **vim**.
 +  # vim /usr/share/horde/scripts/sql/create.mysql.sql
 +<code sql create.mysql.sql>
 +-- $Horde: horde/scripts/sql/create.mysql.sql,v 1.4.6.10 2007/09/27 22:36:49 jan Exp $
 +--
 +-- If you are installing Horde for the first time, you can simply
 +-- direct this file to mysql as STDIN:
 +--
 +-- $ mysql --user=root --password=<MySQL-root-password> < create.mysql.sql
 +--
 +-- If you are upgrading from a previous version, you will need to comment
 +-- out the the user creation steps below, as well as the schemas for any
 +-- tables that already exist.
 +--
 +-- If you choose to grant permissions manually, note that with MySQL, PEAR DB
 +-- emulates sequences by automatically creating extra tables ending in _seq,
 +-- so the MySQL "horde" user must have CREATE privilege on the "horde"
 +-- database.
 +--
 +-- If you are upgrading from Horde 1.x, the Horde tables you have from
 +-- that version are no longer used; you may wish to either delete those
 +-- tables or simply recreate the database anew.
 +
 +USE mysql;
 +
 +REPLACE INTO user (host, user, password)
 +    VALUES (
 +        'localhost',
 +        'hordeuser',
 +-- IMPORTANT: Change this password!
 +        PASSWORD('what-the-fuck-is-exchange?')
 +);
 +
 +REPLACE INTO db (host, db, user, select_priv, insert_priv, update_priv,
 +                 delete_priv, create_priv, drop_priv, index_priv)
 +    VALUES (
 +        'localhost',
 +        'horde',
 +        'hordeuser',
 +        'Y', 'Y', 'Y', 'Y',
 +        'Y', 'Y', 'Y'
 +);
 +...
 +</code>
 +In Anlehnung an unsere bereits bestehenden Datenbanken, haben wir den Datenbankuser umbenannt in **//hordeuser//**, ebenso haben wir das Passwort unseren Bedürfnissen angepasst.\\
 +\\
 +Somit können wir nun die Vorgabe unserer Konfigurationsdatei unserem MYsql-Server "//zum Fraß vorwerfen//":
 +   # mysql -u root -p < /usr/share/horde/scripts/sql/create.mysql.sql
 +   # Enter password: 
 +==== Datenbank Zugangstest ====
 +Als nächstes überprüfen wir, ob der zuvor angelegt User/Zugang auch funktioniert. 
 +<code># mysql -D horde -u hordeuser -h localhost -p
 +Enter password: 
 +Reading table information for completion of table and column names
 +You can turn off this feature to get a quicker startup with -A
 +
 +Welcome to the MySQL monitor.  Commands end with ; or \g.
 +Your MySQL connection id is 359578
 +Server version: 6.1.56 Source distribution
 +
 +Type 'help;' or '\h' for help. Type '\c' to clear the buffer.
 +
 +mysql> show tables;
 ++---------------------------+
 +| Tables_in_horde           |
 ++---------------------------+
 +| horde_datatree            | 
 +| horde_datatree_attributes | 
 +| horde_datatree_seq        | 
 +| horde_histories           
 +| horde_histories_seq       
 +| horde_prefs               
 +| horde_sessionhandler      | 
 +| horde_tokens              | 
 +| horde_users               
 +| horde_vfs                 
 +| horde_vfs_seq             
 ++---------------------------+
 +11 rows in set (0.00 sec)
 +
 +mysql> quit
 +Bye</code>
 +===== Horde - Konfiguration =====
 +==== vorbereitende Konfiguration ====
 +Die Konfiguration von Horde, wie auch den nachfolgenden Module/Projects, erfolgt über die GUI des Horde-Framworks. Bevor wir uns daran machen können, benötigen wir noch eine entsprechende (//leere//) Backupdatei für die mitgelieferte Vorgabekonfigurationsdatei. Ferner müssen wir dafür sorgen, dass unser Apache-Webserver die Änderungen im Konfigurationsverzeichnis ablegen kann.
 +Als erstes legen wir also die besagte Backup-Datei für die Konfiguration an ...
 +   # touch /usr/share/horde/config/conf.php.bak
 +... und weisen diese unserem Apachen zu.
 +   # chown root.apache /usr/share/horde/config/conf.php.bak
 +Zum Schluß passen wir noch die Schreibberechtigung des Konfigurationsordners, samt den darin enthaltenen Dateien an.
 +   # chmod 660 /usr/share/horde/config/*
 +<WRAP round important>__Nach erfolgter Konfiguration schützen wir selbige indem wir die Schreibberechtigung(en) wieder auf den **Root**-Account beschränken.__</WRAP>
 +   # chmod 640 /usr/share/horde/config/*
 +
 +==== Konfiguration über die WEB-GUI ====
 +Die eigentliche Konfigurationsarbeit erledigen wir dann über die GUI des Web-Frameworks. Dazu rufen wir unseren angelegten VHOST im Webbrowser auf.\\
 +\\
 +{{ :centos:mailserver:horde_1.png?650 |Horde: erster Anmeldebildschirm}}
 +\\
 +Den Konfigurationsbereich erreichen wir über den Menüpunkt **//Administration//** (im Bild mit einem roten Pfeil gekennzeichnet).\\
 +\\
 +{{ :centos:mailserver:horde_2.png?650 |Horde: Administrationsmenü}}
 +\\
 +{{ :centos:mailserver:horde_3.png?650 |Horde: Administrationsmenü}}
 +\\
 +Zur Konfiguration des Horde-Frameworks (Basis-Modul) klicken wir auf den Namen **Horde (horde) 3.1.7** im Hauptfenster.\\
 +\\
 +{{ :centos:mailserver:horde_4.png?650 |Horde: Administrationsmenü}}
 +\\
 +Auf den nun zur Verfügung stehenden Reitern, erfolgt die Konfiguration des Horde-Frameworks (Basis-Modul). 
 +=== Reiter: Database ===
 +Als erstes bearbeiten wir die Datenbankeinstellungen auf dem Reiter **Database**. Folgende Einstellungen sind anzupassen:
 +<code>  * What database backend should we use?                                         [MySQL]
 +  * Username to connect to the database as                                       [hordeuser]
 +  * Password to connect with                                                     [what-the-fuck-is-exchange?]
 +  * Location of UNIX socket                                                      [/var/lib/mysql/mysql.sock**]
 +  * Database server/host                                                         [localhost]
 +  * Database name to use                                                         [horde]</code>
 +=== Reiter: Authentication ===
 +Als Nächstes tragen wir unsere Daten im Reiter **Authentication** ein.
 +<code>  * Which users should be treated as administrators (root, super-user) by Horde? [Adminuser unseres LDAP-Directories]
 +  * What backend should we use for authenticating users to Horde?                [IMAP authentication]
 +  * Configuration type                                                           [seperate values]
 +  * The hostname or IP address of the server                                     [imap.nausch.org]</code>
 +=== Reiter: Logging ===
 +<code>  * Path to the log file                                                         [/var/log/horde.log]</code>
 +=== Reiter: Preference System ===
 +<code>  * What preferences driver should we use                                        [SQL Database]</code>
 +=== Reiter: DataTree System ===
 +<code>  * What backend should we use for Horde DataTree storage?                       [SQL Database]</code>
 +=== Reiter: Token System ===
 +<code>  * If you want to enable Form Tokens, select a driver here. This is used…       [SQL-based token storage]</code>
 +=== Reiter: Image Manipulation ===
 +<code>  * Horde requires either GD support built-in to PHP…                            [/usr/bin]</code>
 +=== Reiter: Custom Session Handler ===
 +<code>  * What sessionhandler driver should we use?                                    [MySQL based session]
 +  * Location of UNIX socket                                                      [/var/lib/mysql/mysql.sock]
 +  * What password do we authenticate to the database server with?                [what-the-fuck-is-exchange?]</code> 
 +=== Reiter: Mailer ===
 +<code>  * What method should we use for sending mail?                                  [Use a SMTP server]</code>
 +=== Reiter: MIME Detection ===
 +<code>  * Location of the MIME magic database…                                   [/usr/share/misc/magic]</code>
 +=== Reiter: Hostname->Country Lookup ===
 +<code>  * Horde, by default, can do Hostname…                                   [<Pfad zu GeoIP.dat>]</code>
 +=== Reiter: Portal Block Configuration ===
 +<code>  * What driver should we use?                                                   [localhost]</code>
 +=== Reiter: Problem Reporting ===
 +<code>  * Where should problem report emails be sent?                                  [horde-admin@nausch.org]
 +  * If Horde cannot determine a user's email address, this domain will…          [nausch.org]</code>
 +Nach erfolgter Konfiguration schützen wir die eben erstellte Konfigurationsdatei, indem wir die Schreibberechtigung(en) wieder auf den **Root**-Account beschränken. :
 +   # chmod 640 /usr/share/horde/config/*
 +===== Horde Konfiguration: Webmail (imp) =====
 +==== vorbereitende Konfiguration ====
 +Die Konfiguration des Modul/Projects **imp**, erfolgt über die GUI des Horde-Framworks. Bevor wir uns daran machen können, benötigen wir noch eine entsprechende (//leere//) Konfigurations- und Backupdatei. Ferner müssen wir dafür sorgen, dass unser Apache-Webserver die Änderungen im Konfigurationsverzeichnis ablegen kann.
 +Als erstes legen wir also die besagte Konfigurations- und Backup-Datei an ...
 +   # touch /usr/share/horde/imp/config/conf.php
 +   # touch /usr/share/horde/imp/config/conf.php.bak
 +... und weisen diese unserem Apachen zu.
 +   # chown root.apache /usr/share/horde/imp/config/conf.php
 +   # chown root.apache /usr/share/horde/imp/config/conf.php.bak
 +Zum Schluß passen wir noch die Schreibberechtigung des Konfigurationsordners, samt den darin enthaltenen Dateien an.
 +   # chmod 660 /usr/share/horde/imp/config/*
 +<WRAP round important>__Nach erfolgter Konfiguration schützen wir selbige indem wir die Schreibberechtigung(en) wieder auf den **Root**-Account beschränken.__</WRAP>
 +   # chmod 640 /usr/share/horde/imp/config/*
 +
 +==== IMAP-Server Konfiguration ====
 +Bevor mit der WEB-gestützten Konfiguration begonnen werden kann, muss die Konfigurationsdatei **/usr/share/horde/imp/config/servers.php** noch wie folgt angepasst werden. Wir gehen dabei von unserer [[http://cyrusimap.web.cmu.edu/|Cyrus-IMAP]]-Konfiguration aus, und **__kommentieren__** daher die anderen Beispiele **__aus__**.
 +  # vim /usr/share/horde/imp/config/servers.php
 +<code php|servers.php>
 +...
 +$servers['cyrus'] = array(
 +    'name' => 'Cyrus IMAP Server',
 +    'server' => 'imap.nausch.org',
 +    'hordeauth' => false,
 +    'protocol' => 'imap/notls',
 +    'port' => 143,
 +    'maildomain' => 'nausch.org',
 +    'smtphost' => 'localhost',
 +    'smtpport' => 25,
 +    'realm' => '',
 +    'preferred' => '',
 +    'admin' => array(
 +        'params' => array(
 +            'login' => 'cyrus',
 +            'password' => 'mein-streng-geheimes-cyrus-passwort',
 +            // The 'userhierarchy' parameter defaults to 'user.'
 +            // If you are using a nonstandard hierarchy for personal
 +            // mailboxes, you will need to set it here.
 +            'userhierarchy' => 'user/',
 +            // Although these defaults are normally all that is required,
 +            // you can modify the following parameters from their default
 +            // values.
 +            'protocol' => 'imap/notls',
 +            'hostspec' => 'localhost',
 +            'port' => 143
 +        )
 +    ),
 +    'quota' => array(
 +        'driver' => 'cyrus',
 +        'params' => array(),
 +    ),
 +    'acl' => array(
 +        'driver' => 'rfc2086',
 +    ),
 +);
 +...
 +</code>
 +==== Konfiguration über die WEB-GUI ====
 +Folgende Änderungen nehmen wir nun über die WEB-GUI vor.
 +=== Reiter: External Utilities and Menu ===
 +<code>  * Enter the location of the binary to either aspell or ispell to enable…        [/usr/bin/aspell]
 +  * If you want users to have the option of using the GNU Privacy Guard…          [/usr/bin/gpg]
 +  * The address of the public PGP keyserver(s) to use. keyserver.nausch.org   [keyserver.nausch.org]
 +  * The location of the OpenSSL binary on your system, e.g. /usr/bin/openssl…     [/usr/bin/openssl]</code>
 +=== Reiter: Message and Spam ===
 +<code>  * What should we replace filtered words with?                            [***SPAM***]</code>
 +Nach erfolgter Konfiguration schützen wir die eben erstellte Konfigurationsdatei, indem wir die Schreibberechtigung(en) wieder auf den **Root**-Account beschränken. :
 +   # chmod 640 /usr/share/horde/imp/config/*
 +===== Horde Konfiguration: Adressbuch (turba) =====
 +==== vorbereitende Konfiguration ====
 +Die Konfiguration des Modul/Projects **turba**, erfolgt über die GUI des Horde-Framworks. Bevor wir uns daran machen können, benötigen wir noch eine entsprechende (//leere//) Konfigurations- und Backupdatei. Ferner müssen wir dafür sorgen, dass unser Apache-Webserver die Änderungen im Konfigurationsverzeichnis ablegen kann.
 +Als erstes legen wir also die besagte Konfigurations- und Backup-Datei an ...
 +   # touch /usr/share/horde/turba/config/conf.php
 +   # touch /usr/share/horde/turba/config/conf.php.bak
 +... und weisen diese unserem Apachen zu.
 +   # chown root.apache /usr/share/horde/turba/config/conf.php
 +   # chown root.apache /usr/share/horde/turba/config/conf.php.bak
 +Zum Schluß passen wir noch die Schreibberechtigung des Konfigurationsordners, samt den darin enthaltenen Dateien an.
 +   # chmod 660 /usr/share/horde/turba/config/*
 +<WRAP round important>__Nach erfolgter Konfiguration schützen wir selbige indem wir die Schreibberechtigung(en) wieder auf den **Root**-Account beschränken.__</WRAP>
 +   # chmod 640 /usr/share/horde/turba/config/*
 +
 +==== Erstellung der Datenbanktabellen ====
 +Zuerst müssen die dazugehörigen Tabellen in unserer MySQL-Datenbank erstellt werden. Dies kann über ein mitgeliefertes Script //**/usr/share/horde/turba/scripts/sql/turba.mysql.sql**// realisiert werden. Das Script wird mit nachfolgendem Befehl ausgeführt und legt alle relevanten Komponenten in der Datenbank - hier MySQL an: 
 +   # mysql -u root -p horde < /usr/share/horde/turba/scripts/sql/turba.mysql.sql
 +   Enter password: 
 +==== Konfiguration über die WEB-GUI ====
 +In der WEB-GUI müssen keine Änderungen vorgenommen werden, es reicht lediglich ein //Klick// auf **Adressbuch-Konfiguration erzeugen**.
 +Nach erfolgter Konfiguration schützen wir die eben erstellte Konfigurationsdatei, indem wir die Schreibberechtigung(en) wieder auf den **Root**-Account beschränken. :
 +   # chmod 640 /usr/share/horde/turba/config/*
 +===== Horde Konfiguration: Kalender (kronolith) =====
 +==== vorbereitende Konfiguration ====
 +Die Konfiguration des Modul/Projects **kronolith**, erfolgt über die GUI des Horde-Framworks. Bevor wir uns daran machen können, benötigen wir noch eine entsprechende (//leere//) Konfigurations- und Backupdatei. Ferner müssen wir dafür sorgen, dass unser Apache-Webserver die Änderungen im Konfigurationsverzeichnis ablegen kann.
 +Als erstes legen wir also die besagte Konfigurations- und Backup-Datei an ...
 +   # touch /usr/share/horde/kronolith/config/conf.php
 +   # touch /usr/share/horde/kronolith/config/conf.php.bak
 +... und weisen diese unserem Apachen zu.
 +   # chown root.apache /usr/share/horde/kronolith/config/conf.php
 +   # chown root.apache /usr/share/horde/kronolith/config/conf.php.bak
 +Zum Schluß passen wir noch die Schreibberechtigung des Konfigurationsordners, samt den darin enthaltenen Dateien an.
 +   # chmod 660 /usr/share/horde/kronolith/config/*
 +<WRAP round important>__Nach erfolgter Konfiguration schützen wir selbige indem wir die Schreibberechtigung(en) wieder auf den **Root**-Account beschränken.__</WRAP>
 +   # chmod 640 /usr/share/horde/kronolith/config/*
 +
 +==== Erstellung der Datenbanktabellen ====
 +Zuerst müssen die dazugehörigen Tabellen in unserer MySQL-Datenbank erstellt werden. Dies kann über ein mitgeliefertes Script //**/usr/share/horde/kronolith/scripts/sql/kronolith.mysql.sql**// realisiert werden. Das Script wird mit nachfolgendem Befehl ausgeführt und legt alle relevanten Komponenten in der Datenbank - hier MySQL an: 
 +   # mysql -u root -p horde < /usr/share/horde/kronolith/scripts/sql/kronolith.mysql.sql
 +   Enter password: 
 +==== Konfiguration über die WEB-GUI ====
 +Folgende Änderungen nehmen wir nun über die WEB-GUI vor.
 +<code>  * Default domain to add to attendee email addresses if none is specified.       [nausch.org]
 +  * Should keywords be loaded from config/keywords.php to be assigned to…         [Checkbox on]
 +  * Server name from which reminder emails should be sent                         [mx1.nausch.org]
 +  * Email address from which reminder emails should be sent                       [horde@nausch.org]</code>
 +==== Erweiterung cron ====
 +Um später auch „Benachrichtigungen“ von **kronolith** erhalten zu können, muss folgender Eintrag in der Konfigurationsdatei von cron zusätzlich hinterlegt werden.
 +<code>...
 +# Kronolith reminders
 +*/5 * * * * /usr/bin/php /usr/share/horde/kronolith/scripts/reminders.php
 +...</code>
 +Nach erfolgter Konfiguration schützen wir die eben erstellte Konfigurationsdatei, indem wir die Schreibberechtigung(en) wieder auf den **Root**-Account beschränken. :
 +   # chmod 640 /usr/share/horde/kronolith/config/*
 +===== Horde Konfiguration: Aufgaben (nag) =====
 +==== vorbereitende Konfiguration ====
 +Die Konfiguration des Modul/Projects **nag**, erfolgt über die GUI des Horde-Framworks. Bevor wir uns daran machen können, benötigen wir noch eine entsprechende (//leere//) Konfigurations- und Backupdatei. Ferner müssen wir dafür sorgen, dass unser Apache-Webserver die Änderungen im Konfigurationsverzeichnis ablegen kann.
 +Als erstes legen wir also die besagte Konfigurations- und Backup-Datei an ...
 +   # touch /usr/share/horde/nag/config/conf.php
 +   # touch /usr/share/horde/nag/config/conf.php.bak
 +... und weisen diese unserem Apachen zu.
 +   # chown root.apache /usr/share/horde/nag/config/conf.php
 +   # chown root.apache /usr/share/horde/nag/config/conf.php.bak
 +Zum Schluß passen wir noch die Schreibberechtigung des Konfigurationsordners, samt den darin enthaltenen Dateien an.
 +   # chmod 660 /usr/share/horde/nag/config/*
 +<WRAP round important>__Nach erfolgter Konfiguration schützen wir selbige indem wir die Schreibberechtigung(en) wieder auf den **Root**-Account beschränken.__</WRAP>
 +   # chmod 640 /usr/share/horde/nag/config/*
 +
 +==== Erstellung der Datenbanktabellen ====
 +Zuerst müssen die dazugehörigen Tabellen in unserer MySQL-Datenbank erstellt werden. Dies kann über ein mitgeliefertes Script //**/usr/share/horde/nag/scripts/sql/nag.mysql.sql**// realisiert werden. Das Script wird mit nachfolgendem Befehl ausgeführt und legt alle relevanten Komponenten in der Datenbank - hier MySQL an: 
 +   # mysql -u root -p horde < /usr/share/horde/nag/scripts/sql/nag.mysql.sql
 +   Enter password: 
 +==== Konfiguration über die WEB-GUI ====
 +In der WEB-GUI müssen keine Änderungen vorgenommen werden, es reicht lediglich ein //Klick// auf **Aufgaben-Konfiguration erzeugen**.
 +Nach erfolgter Konfiguration schützen wir die eben erstellte Konfigurationsdatei, indem wir die Schreibberechtigung(en) wieder auf den **Root**-Account beschränken. :
 +   # chmod 640 /usr/share/horde/nag/config/*
 +===== Horde Konfiguration: Notizen (mnemo) =====
 +==== vorbereitende Konfiguration ====
 +Die Konfiguration des Modul/Projects **mnemo**, erfolgt über die GUI des Horde-Framworks. Bevor wir uns daran machen können, benötigen wir noch eine entsprechende (//leere//) Konfigurations- und Backupdatei. Ferner müssen wir dafür sorgen, dass unser Apache-Webserver die Änderungen im Konfigurationsverzeichnis ablegen kann.
 +Als erstes legen wir also die besagte Konfigurations- und Backup-Datei an ...
 +   # touch /usr/share/horde/mnemo/config/conf.php
 +   # touch /usr/share/horde/mnemo/config/conf.php.bak
 +... und weisen diese unserem Apachen zu.
 +   # chown root.apache /usr/share/horde/mnemo/config/conf.php
 +   # chown root.apache /usr/share/horde/mnemo/config/conf.php.bak
 +Zum Schluß passen wir noch die Schreibberechtigung des Konfigurationsordners, samt den darin enthaltenen Dateien an.
 +   # chmod 660 /usr/share/horde/mnemo/config/*
 +<WRAP round important>__Nach erfolgter Konfiguration schützen wir selbige indem wir die Schreibberechtigung(en) wieder auf den **Root**-Account beschränken.__</WRAP>
 +   # chmod 640 /usr/share/horde/mnemo/config/*
 +
 +==== Erstellung der Datenbanktabellen ====
 +Zuerst müssen die dazugehörigen Tabellen in unserer MySQL-Datenbank erstellt werden. Dies kann über ein mitgeliefertes Script //**/usr/share/horde/mnemo/scripts/sql/mnemo.mysql.sql**// realisiert werden. Das Script wird mit nachfolgendem Befehl ausgeführt und legt alle relevanten Komponenten in der Datenbank - hier MySQL an: 
 +   # mysql -u root -p horde < /usr/share/horde/mnemo/scripts/sql/mnemo.mysql.sql
 +   Enter password: 
 +==== Konfiguration über die WEB-GUI ====
 +In der WEB-GUI müssen keine Änderungen vorgenommen werden, es reicht lediglich ein //Klick// auf **Notitz-Konfiguration erzeugen**.
 +Nach erfolgter Konfiguration schützen wir die eben erstellte Konfigurationsdatei, indem wir die Schreibberechtigung(en) wieder auf den **Root**-Account beschränken. :
 +   # chmod 640 /usr/share/horde/mnemo/config/*
 +
 +~~DISCUSSION~~
  • centos/mailserver/horde_-_create._communicate._collaborate.txt
  • Zuletzt geändert: 22.07.2019 14:54.
  • von 127.0.0.1