Inhaltsverzeichnis

Basiskonfiguration des Frameworks Horde 5 unter CentOS 7.x

Nach der erfolgreichen Installation von Horde machen wir uns nun an die Basiskonfiguration des Frameworks Horde 5 unter CentOS 7.x.

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.

 $ firefox https://horde.sec-mail.guru

Bild:Bildschirmhardcopy Horde "Erstanmeldung"

Mit einem Klick auf das Zahnradsysmbol Bild: Horde Menüpunkt Administration erreichen wir den Menüpunkt Administration.

Bild: Bildschirmhardcopy Horde "Menüpunkt Administration"

Hier wählen wir den Menüpunkt Configuration aus.

Bild: Bildschirmhardcopy Horde "Configuration"

Da wir den Menüpukt Configuration noch nie vorher aufgerufen und noch keine Konfiguration vorgenommen haben, sind die beiden Fehlermeldungen normal. Um zur Konfiguration von Horde zu gelangen, klicken wir nun auf den Punkt Horde (horde).

Bild: Bildschirmhardcopy Horde "Configuration"

Auf den nun zur Verfügung stehenden Reitern, erfolgt die Konfiguration des Horde-Frameworks (Basis-Modul).

General

General Horde Settings

$conf[vhosts]                                                   [ ]

PHP Settings

$conf[debug_level]                                              E_ALL & ~E_NOTICE
$conf[max_exec_time]                                            0
$conf[compress_pages]                                           [✔]
$conf[secret_key] 	                                        54116806-935c-4e4f-9c1e-58ef0a000054
$conf[umask]                                                    077
$conf[testdisable]                                              [✔]
$conf[tmpdir]

URL Settings

$conf[use_ssl]                                                  Attempt to auto-detect, and generate URLs appropriately
$conf[server][name]                                             $_SERVER['SERVER_NAME']
$conf[server][port]
$conf[urls][token_lifetime]                                     30
$conf[urls][hmac_lifetime                                       30
$conf[urls][pretty]                                             No (Get-based URLs)
$conf[safe_ips]

Session Settings

$conf[session][name]                                            Horde
$conf[session][use_only_cookies]                                [✔]
$conf[session][cache_limiter]                                   nocache
$conf[session][timeout]                                         0
$conf[session][max_time]                                        7200
$conf[cookie][domain]                                           $_SERVER['SERVER_NAME']
$conf[cookie][path]                                             /

Database

Database Settings

$conf[sql][phptype]                                             MySQL (mysqli)
$conf[sql][username]                                            horde_admin_user
$conf[sql][password]                                            rbgsDK39DeM2b2btx9iMHfzd
$conf[sql][protocol]                                            TCP/IP
$conf[sql][hostspec]                                            mysql.dmz.nausch.org
$conf[sql][port]                                                3306
$conf[sql][database]                                            horde5
$conf[sql][charset]                                             utf-8
$conf[sql][ssl]                                                 [ ]
$conf[sql][ca]
$conf[sql][splitread]                                           Disabled

NoSQL Database Settings

$conf[nosql][phptype]                                           [None]

Klicken wir nun auf die Schaltfläche Bild: Schaltfläche Generate Horde Configuration, fällt uns eine Fehlermeldung entgegen!

Bild: Bildschirmhardcopy Horde "Configuration"

Den Fehler beheben wir durch den Aufruf des Programms horde-db-migrate.

 # horde-db-migrate
[  INFO  ] Migrating DB up.
[  INFO  ] Current Horde_Alarm schema version: 0
Migrating to HordeAlarmsTable (1)
== 1 HordeAlarmsTable: migrating ==============================================
-- tables()
   -> 0.0008s
-- createTable('horde_alarms')
   -> 0.0000s
-- addIndex('horde_alarms', array(0 => 'alarm_id'))
   -> 0.1807s
-- addIndex('horde_alarms', array(0 => 'alarm_uid'))
   -> 0.1089s
-- addIndex('horde_alarms', array(0 => 'alarm_start'))
   -> 0.1266s
-- addIndex('horde_alarms', array(0 => 'alarm_end'))
   -> 0.1108s
-- addIndex('horde_alarms', array(0 => 'alarm_snooze'))
   -> 0.1103s
-- addIndex('horde_alarms', array(0 => 'alarm_dismissed'))
   -> 0.1146s
== 1 HordeAlarmsTable: migrated (0.8027s) =====================================

Migrating to HordeAlarmsAddInstanceId (2)
== 2 HordeAlarmsAddInstanceId: migrating ======================================
-- addColumn('horde_alarms', 'alarm_instanceid', 'string', array('limit' => 255))
   -> 0.1053s
== 2 HordeAlarmsAddInstanceId: migrated (0.1055s) =============================

[  INFO  ] Ending Horde_Alarm schema version: 2
[  INFO  ] Current Horde_Auth schema version: 0
Migrating to HordeAuthBaseTables (1)
== 1 HordeAuthBaseTables: migrating ===========================================
-- tables()
   -> 0.0007s
-- createTable('horde_users', array('autoincrementKey' => array (
  0 => 'user_uid',
)))
   -> 0.0000s
== 1 HordeAuthBaseTables: migrated (0.0511s) ==================================

[  INFO  ] Ending Horde_Auth schema version: 1
[  INFO  ] Current Horde_Cache schema version: 0
Migrating to HordeCacheBaseTables (1)
== 1 HordeCacheBaseTables: migrating ==========================================
-- tables()
   -> 0.0009s
-- createTable('horde_cache', array('autoincrementKey' => array (
  0 => 'cache_id',
)))
   -> 0.0000s
== 1 HordeCacheBaseTables: migrated (0.0569s) =================================

Migrating to HordeCacheFixBlobLength (2)
== 2 HordeCacheFixBlobLength: migrating =======================================
-- changeColumn('horde_cache', 'cache_data', 'binary')
   -> 0.1312s
== 2 HordeCacheFixBlobLength: migrated (0.1313s) ==============================

[  INFO  ] Ending Horde_Cache schema version: 2
[  INFO  ] Current Horde_Dav schema version: 0
Migrating to HordeDavBaseTables (1)
== 1 HordeDavBaseTables: migrating ============================================
-- createTable('horde_dav_objects', array('autoincrementKey' => false))
   -> 0.0000s
-- addIndex('horde_dav_objects', 'id_collection')
   -> 0.1332s
-- addIndex('horde_dav_objects', 'id_internal', array('unique' => true))
   -> 0.1684s
-- addIndex('horde_dav_objects', 'id_external', array('unique' => true))
   -> 0.1265s
-- createTable('horde_dav_collections', array('autoincrementKey' => false))
   -> 0.0000s
-- addIndex('horde_dav_collections', 'id_interface')
   -> 0.1188s
-- addIndex('horde_dav_collections', 'id_internal')
   -> 0.1145s
-- addIndex('horde_dav_collections', 'id_external', array('unique' => true))
   -> 0.1085s
== 1 HordeDavBaseTables: migrated (0.8751s) ===================================

Migrating to HordeDavRemoveUniqueIndex (2)
== 2 HordeDavRemoveUniqueIndex: migrating =====================================
-- removeIndex('horde_dav_objects', 'id_external')
   -> 0.1032s
-- addIndex('horde_dav_objects', 'id_external')
   -> 0.1025s
-- addIndex('horde_dav_objects', array(0 => 'id_external', 1 => 'id_collection'), array('unique' => true))
   -> 0.1687s
== 2 HordeDavRemoveUniqueIndex: migrated (0.3748s) ============================

[  INFO  ] Ending Horde_Dav schema version: 2
[  INFO  ] Current Horde_Group schema version: 0
Migrating to HordeGroupBaseTables (1)
== 1 HordeGroupBaseTables: migrating ==========================================
-- tables()
   -> 0.0019s
-- createTable('horde_groups', array('autoincrementKey' => array (
  0 => 'group_uid',
)))
   -> 0.0000s
-- addIndex('horde_groups', array(0 => 'group_name'), array('unique' => true))
   -> 0.1211s
-- tables()
   -> 0.0010s
-- createTable('horde_groups_members', array('autoincrementKey' => false))
   -> 0.0000s
-- addIndex('horde_groups_members', array(0 => 'group_uid'))
   -> 0.1148s
-- addIndex('horde_groups_members', array(0 => 'user_uid'))
   -> 0.1205s
== 1 HordeGroupBaseTables: migrated (0.4680s) =================================

Migrating to HordeGroupUpgradeAutoIncrement (2)
== 2 HordeGroupUpgradeAutoIncrement: migrating ================================
-- changeColumn('horde_groups', 'group_uid', 'autoincrementKey')
   -> 0.1123s
-- dropTable('horde_groups_seq')
== 2 HordeGroupUpgradeAutoIncrement: migrated (0.1175s) =======================

Migrating to HordeGroupUpgradeNullParents (3)
== 3 HordeGroupUpgradeNullParents: migrating ==================================
-- changeColumn('horde_groups', 'group_parents', 'string', array('limit' => 255))
   -> 0.1132s
== 3 HordeGroupUpgradeNullParents: migrated (0.1134s) =========================

[  INFO  ] Ending Horde_Group schema version: 3
[  INFO  ] Current Horde_History schema version: 0
Migrating to HordeHistoryBaseTables (1)
== 1 HordeHistoryBaseTables: migrating ========================================
-- tables()
   -> 0.0010s
-- createTable('horde_histories', array('autoincrementKey' => array (
  0 => 'history_id',
)))
   -> 0.0000s
-- addIndex('horde_histories', array(0 => 'history_action'))
   -> 0.1448s
-- addIndex('horde_histories', array(0 => 'history_ts'))
   -> 0.1576s
-- addIndex('horde_histories', array(0 => 'object_uid'))
   -> 0.1147s
== 1 HordeHistoryBaseTables: migrated (0.4715s) ===============================

Migrating to HordeHistoryUpgradeAutoIncrement (2)
== 2 HordeHistoryUpgradeAutoIncrement: migrating ==============================
-- changeColumn('horde_histories', 'history_id', 'autoincrementKey')
   -> 0.1255s
-- dropTable('horde_histories_seq')
== 2 HordeHistoryUpgradeAutoIncrement: migrated (0.1273s) =====================

Migrating to HordeHistoryAddModSeq (3)
== 3 HordeHistoryAddModSeq: migrating =========================================
-- createTable('horde_histories_modseq', array('autoincrementKey' => false))
   -> 0.0000s
-- addColumn('horde_histories', 'history_modseq', 'integer', array('default' => 0, 'null' => false))
   -> 0.1267s
-- selectAll('SELECT history_id FROM horde_histories ORDER BY history_ts ASC')
   -> 0.0008s
-- beginDbTransaction()
   -> 0.0005s
-- commitDbTransaction()
   -> 0.0005s
-- addIndex('horde_histories', array(0 => 'history_modseq'))
   -> 0.1184s
-- changeColumn('horde_histories_modseq', 'history_modseq', 'autoincrementKey')
   -> 0.1208s
== 3 HordeHistoryAddModSeq: migrated (0.4217s) ================================

Migrating to HordeHistoryAddCompositeIndex (4)
== 4 HordeHistoryAddCompositeIndex: migrating =================================
-- addIndex('horde_histories', array(0 => 'history_modseq', 1 => 'object_uid'))
   -> 0.1854s
== 4 HordeHistoryAddCompositeIndex: migrated (0.1855s) ========================

Migrating to HordeHistoryRemoveCompositeIndex (5)
== 5 HordeHistoryRemoveCompositeIndex: migrating ==============================
-- indexes('horde_histories')
   -> 0.0030s
-- removeIndex('horde_histories', array('name' => 'index_horde_histories_on_object_uid'))
   -> 0.1204s
-- removeIndex('horde_histories', array('name' => 'index_horde_histories_on_history_modseq'))
   -> 0.1082s
== 5 HordeHistoryRemoveCompositeIndex: migrated (0.2320s) =====================

Migrating to HordeHistoryFixBotchedIndexes (6)
== 6 HordeHistoryFixBotchedIndexes: migrating =================================
-- indexes('horde_histories')
   -> 0.0013s
-- indexName('horde_histories', array('column' => array (
  0 => 'history_modseq',
  1 => 'object_uid',
)))
   -> 0.0000s
-- removeIndex('horde_histories', array('name' => 'index_horde_histories_on_history_modseq_and_object_uid'))
   -> 0.1062s
-- addIndex('horde_histories', array(0 => 'history_modseq'))
   -> 0.1159s
-- addIndex('horde_histories', array(0 => 'object_uid'))
   -> 0.1095s
== 6 HordeHistoryFixBotchedIndexes: migrated (0.3336s) ========================

[  INFO  ] Ending Horde_History schema version: 6
[  INFO  ] Current Horde_Imap_Client schema version: 0
Migrating to HordeImapClientBaseTables (1)
== 1 HordeImapClientBaseTables: migrating =====================================
-- tables()
   -> 0.0008s
-- createTable('horde_imap_client_data', array('autoincrementKey' => 'messageid'))
   -> 0.0000s
-- addIndex('horde_imap_client_data', array(0 => 'hostspec', 1 => 'mailbox', 2 => 'port', 3 => 'username'))
   -> 0.1146s
-- createTable('horde_imap_client_message', array('autoincrementKey' => false))
   -> 0.0000s
-- addIndex('horde_imap_client_message', array(0 => 'msguid', 1 => 'messageid'))
   -> 0.1211s
-- createTable('horde_imap_client_metadata', array('autoincrementKey' => false))
   -> 0.0000s
-- addIndex('horde_imap_client_metadata', array(0 => 'messageid'))
   -> 0.3064s
== 1 HordeImapClientBaseTables: migrated (0.7494s) ============================

Migrating to HordeImapClientChangeColumnName (2)
== 2 HordeImapClientChangeColumnName: migrating ===============================
-- columns('horde_imap_client_data')
   -> 0.0021s
-- columns('horde_imap_client_message')
   -> 0.0016s
-- columns('horde_imap_client_metadata')
   -> 0.0014s
== 2 HordeImapClientChangeColumnName: migrated (0.0054s) ======================

[  INFO  ] Ending Horde_Imap_Client schema version: 2
[  INFO  ] Current Horde_Lock schema version: 0
Migrating to HordeLockBaseTables (1)
== 1 HordeLockBaseTables: migrating ===========================================
-- tables()
   -> 0.0009s
-- createTable('horde_locks', array('autoincrementKey' => array (
  0 => 'lock_id',
)))
   -> 0.0000s
== 1 HordeLockBaseTables: migrated (0.0507s) ==================================

Migrating to HordeLockUpgradeColumnTypes (2)
== 2 HordeLockUpgradeColumnTypes: migrating ===================================
== 2 HordeLockUpgradeColumnTypes: migrated (0.0000s) ==========================

Migrating to HordeLockFixOwnerWidth (3)
== 3 HordeLockFixOwnerWidth: migrating ========================================
-- changeColumn('horde_locks', 'lock_owner', 'string', array('limit' => 255, 'null' => false))
   -> 0.1251s
== 3 HordeLockFixOwnerWidth: migrated (0.1253s) ===============================

[  INFO  ] Ending Horde_Lock schema version: 3
[  INFO  ] Current Horde_Perms schema version: 0
Migrating to HordePermsBaseTables (1)
== 1 HordePermsBaseTables: migrating ==========================================
-- tables()
   -> 0.0012s
-- createTable('horde_perms', array('autoincrementKey' => array (
  0 => 'perm_id',
)))
   -> 0.0000s
-- addIndex('horde_perms', array(0 => 'perm_name'), array('unique' => true))
   -> 0.1401s
== 1 HordePermsBaseTables: migrated (0.2002s) =================================

Migrating to HordePermsUpgradeAutoIncrement (2)
== 2 HordePermsUpgradeAutoIncrement: migrating ================================
-- changeColumn('horde_perms', 'perm_id', 'autoincrementKey')
   -> 0.1187s
-- dropTable('horde_perms_seq')
== 2 HordePermsUpgradeAutoIncrement: migrated (0.1235s) =======================

[  INFO  ] Ending Horde_Perms schema version: 2
[  INFO  ] Current Horde_Prefs schema version: 0
Migrating to HordePrefsBaseTables (1)
== 1 HordePrefsBaseTables: migrating ==========================================
-- tables()
   -> 0.0009s
-- createTable('horde_prefs', array('autoincrementKey' => array (
  0 => 'pref_uid',
  1 => 'pref_scope',
  2 => 'pref_name',
)))
   -> 0.0000s
-- addIndex('horde_prefs', array(0 => 'pref_uid'))
   -> 0.1133s
-- addIndex('horde_prefs', array(0 => 'pref_scope'))
   -> 0.1204s
== 1 HordePrefsBaseTables: migrated (0.2859s) =================================

Migrating to HordePrefsUpgradeBinaryValue (2)
== 2 HordePrefsUpgradeBinaryValue: migrating ==================================
-- changeColumn('horde_prefs', 'pref_value', 'binary')
   -> 0.1494s
== 2 HordePrefsUpgradeBinaryValue: migrated (0.1496s) =========================

Migrating to HordePrefsFixBlobLength (3)
== 3 HordePrefsFixBlobLength: migrating =======================================
-- changeColumn('horde_prefs', 'pref_value', 'binary')
   -> 0.1071s
== 3 HordePrefsFixBlobLength: migrated (0.1073s) ==============================

[  INFO  ] Ending Horde_Prefs schema version: 3
[  INFO  ] Current Horde_Queue schema version: 0
Migrating to HordeQueueBaseTables (1)
== 1 HordeQueueBaseTables: migrating ==========================================
-- createTable('horde_queue_tasks', array('autoincrementKey' => 'task_id'))
   -> 0.0001s
== 1 HordeQueueBaseTables: migrated (0.0600s) =================================

[  INFO  ] Ending Horde_Queue schema version: 1
[  INFO  ] Current Horde_SessionHandler schema version: 0
Migrating to HordeSessionhandlerBaseTables (1)
== 1 HordeSessionhandlerBaseTables: migrating =================================
-- tables()
   -> 0.0010s
-- createTable('horde_sessionhandler', array('autoincrementKey' => false))
   -> 0.0000s
-- addIndex('horde_sessionhandler', array(0 => 'session_lastmodified'))
   -> 0.1194s
== 1 HordeSessionhandlerBaseTables: migrated (0.1755s) ========================

Migrating to HordeSessionHandlerFixBlobLength (2)
== 2 HordeSessionHandlerFixBlobLength: migrating ==============================
-- changeColumn('horde_sessionhandler', 'session_data', 'binary')
   -> 0.1120s
== 2 HordeSessionHandlerFixBlobLength: migrated (0.1121s) =====================

[  INFO  ] Ending Horde_SessionHandler schema version: 2
[  INFO  ] Current Horde_SyncMl schema version: 0
Migrating to HordeSyncmlBaseTables (1)
== 1 HordeSyncmlBaseTables: migrating =========================================
-- tables()
   -> 0.0008s
-- createTable('horde_syncml_map', array('autoincrementKey' => false))
   -> 0.0000s
-- addIndex('horde_syncml_map', array(0 => 'syncml_syncpartner'))
   -> 0.1267s
-- addIndex('horde_syncml_map', array(0 => 'syncml_db'))
   -> 0.2100s
-- addIndex('horde_syncml_map', array(0 => 'syncml_uid'))
   -> 0.1151s
-- addIndex('horde_syncml_map', array(0 => 'syncml_cuid'))
   -> 0.2767s
-- addIndex('horde_syncml_map', array(0 => 'syncml_suid'))
   -> 0.1168s
-- tables()
   -> 0.0009s
-- createTable('horde_syncml_anchors', array('autoincrementKey' => false))
   -> 0.0000s
-- addIndex('horde_syncml_anchors', array(0 => 'syncml_syncpartner'))
   -> 0.1088s
-- addIndex('horde_syncml_anchors', array(0 => 'syncml_db'))
   -> 0.1254s
-- addIndex('horde_syncml_anchors', array(0 => 'syncml_uid'))
   -> 0.1630s
== 1 HordeSyncmlBaseTables: migrated (1.3640s) ================================

[  INFO  ] Ending Horde_SyncMl schema version: 1
[  INFO  ] Current Horde_Token schema version: 0
Migrating to HordeTokenBaseTables (1)
== 1 HordeTokenBaseTables: migrating ==========================================
-- tables()
   -> 0.0011s
-- createTable('horde_tokens', array('autoincrementKey' => array (
  0 => 'token_address',
  1 => 'token_id',
)))
   -> 0.0000s
== 1 HordeTokenBaseTables: migrated (0.0912s) =================================

[  INFO  ] Ending Horde_Token schema version: 1
[  INFO  ] Current Horde_Vfs schema version: 0
Migrating to HordeVfsBaseTables (1)
== 1 HordeVfsBaseTables: migrating ============================================
-- tables()
   -> 0.0010s
-- createTable('horde_vfs', array('autoincrementKey' => array (
  0 => 'vfs_id',
)))
   -> 0.0000s
-- addIndex('horde_vfs', array(0 => 'vfs_path'))
   -> 0.1088s
-- addIndex('horde_vfs', array(0 => 'vfs_name'))
   -> 0.1024s
-- tables()
   -> 0.0011s
-- createTable('horde_muvfs', array('autoincrementKey' => array (
  0 => 'vfs_id',
)))
   -> 0.0000s
-- addIndex('horde_muvfs', array(0 => 'vfs_path'))
   -> 0.1274s
-- addIndex('horde_muvfs', array(0 => 'vfs_name'))
   -> 0.1196s
== 1 HordeVfsBaseTables: migrated (0.5685s) ===================================

Migrating to HordeVfsUpgradeAutoIncrement (2)
== 2 HordeVfsUpgradeAutoIncrement: migrating ==================================
-- changeColumn('horde_vfs', 'vfs_id', 'autoincrementKey')
   -> 0.1675s
-- dropTable('horde_vfs_seq')
-- changeColumn('horde_muvfs', 'vfs_id', 'autoincrementKey')
   -> 0.1886s
-- dropTable('horde_muvfs_seq')
== 2 HordeVfsUpgradeAutoIncrement: migrated (0.3594s) =========================

Migrating to HordeVfsFixBlobLength (3)
== 3 HordeVfsFixBlobLength: migrating =========================================
-- changeColumn('horde_vfs', 'vfs_data', 'binary')
   -> 0.1130s
-- changeColumn('horde_muvfs', 'vfs_data', 'binary')
   -> 0.1205s
== 3 HordeVfsFixBlobLength: migrated (0.2338s) ================================

Migrating to HordeVfsUpgradeNullColumns (4)
== 4 HordeVfsUpgradeNullColumns: migrating ====================================
-- changeColumn('horde_vfs', 'vfs_path', 'string', array('limit' => 255, 'null' => true))
   -> 0.1310s
-- changeColumn('horde_vfs', 'vfs_owner', 'string', array('limit' => 255, 'null' => true))
   -> 0.1263s
-- changeColumn('horde_muvfs', 'vfs_path', 'string', array('limit' => 255, 'null' => true))
   -> 0.1265s
-- changeColumn('horde_muvfs', 'vfs_owner', 'string', array('limit' => 255, 'null' => true))
   -> 0.1721s
-- update('UPDATE horde_vfs SET vfs_path = NULL WHERE vfs_path = \'\'')
   -> 0.0011s
   -> 0 rows
-- update('UPDATE horde_vfs SET vfs_owner = NULL WHERE vfs_path = \'\'')
   -> 0.0008s
   -> 0 rows
-- update('UPDATE horde_muvfs SET vfs_path = NULL WHERE vfs_path = \'\'')
   -> 0.0007s
   -> 0 rows
-- update('UPDATE horde_muvfs SET vfs_owner = NULL WHERE vfs_path = \'\'')
   -> 0.0006s
   -> 0 rows
== 4 HordeVfsUpgradeNullColumns: migrated (0.5604s) ===========================

[  INFO  ] Ending Horde_Vfs schema version: 4

Rufen wir nun erneut die Konfiguration im Admin-Bereich auf, sehen wir, dass nun die Datenbanktabellen angelegt und alle den Status SQL DB schema is ready haben.

 $ firefox https://horde.sec-mail.guru/admin/config/

Bild: Bildschirmhardcopy Horde "Configuration"

Wir können nun mit der weiteren Konfiguration von Horde fortfahren, indem wir auf den Punkt Horde (horde) klicken.

LDAP

Datenbank anlegen

LDAP Settings

$conf[ldap][useldap]                                                           [no]

Authentication

Authentication Settings

$conf[auth][admins]                                                            Administrator
$conf[auth][checkip]                                                           [✔]
$conf[auth][checkbrowser]                                                      [✔]
$conf[auth][resetpassword]                                                     yes
$conf[auth][resetpassword_from]                                                
$conf[auth][alternate_login]                                                   false
$conf[auth][redirect_on_logout]                                                false
$conf[auth][list_users]                                                        Show an input field
$conf[auth][driver]                                                            Automatic authentication as a certain user
$conf[auth][params][username]                                                  Administrator
$conf[auth][params][password]
$conf[auth][params][requestuser]                                               [ ]
$conf[auth][params][count_bad_logins]                                          [ ]
$conf[auth][params][login_block]                                               [ ]
$conf[auth][params][login_block_count                                          5
$conf[auth][params][login_block_time]                                          5

Terms of Service Agreement

$conf[tos][file]

Signing Up

Sign Up Settings

$conf[signup][allow]                                                           No

Logging

Logging Settings

$conf[log][enabled]                                                            Yes
$conf[log][priority]                                                           INFO
$conf[log][ident]                                                              HORDE
$conf[log][time_format]
$conf[log][type]                                                               Syslog
$conf[log][name]                                                               LOG_USER
$conf[log][log_accesskeys]                                                     [ ]

Preference System

Preferences Settings

$conf[prefs][maxsize]                                                          65535
$conf[prefs][driver]                                                           SQL Database
$conf[prefs][params][driverconfig]                                             Horde defaults
$conf[prefs][params][table]                                                    horde_prefs

Alarm System

Alarms Settings

$conf[alarms][driver]                                                          SQL Database
$conf[alarms][params][driverconfig]                                            Horde defaults
$conf[alarms][params][table]                                                   horde_alarms
$conf[alarms][params][ttl]                                                     300

Groups

Groups Settings

$conf[group][driver]                                                           SQL
$conf[group][driverconfig]                                                     Horde defaults

Permissions

Permissions Settings

$conf[perms][driver]                                                           SQL
$conf[perms][driverconfig]                                                     Horde defaults

Shares

Allow Sharing?

$conf[share][no_sharing]                                                       [ ]
$conf[share][auto_create]                                                      [✔]
$conf[share][world]                                                            [✔]
$conf[share][any_group]                                                        [ ]
$conf[share][hidden]                                                           [ ]

Share Caching

$conf[share][cache]                                                            [✔]

Shares Driver

$conf[share][driver]                                                           Next-Generation SQL

Damit das Horde-Framework die caching-Daten in das Verzeichnis /usr/share/horde/static/ schreiben kann, passen wir dessen Verzeichnisrechte und -berechtigungen an!

 # chown root.apache /usr/share/horde/static/
 # chmod 775 /usr/share/horde/static/

Cache System

Cache System Settings

$conf[cache][default_lifetime]                                                 86400
$conf[cache][driver]                                                           Store data in filesystem
$conf[cache][params][dir]                                                      /usr/share/horde/static
$conf[cache][params][sub]                                                      0
$conf[cache][params][prefix]                                                   cache_
$conf[cache][use_memorycache]                                                  None

CSS Caching

$conf[cachecss]                                                                Yes
$conf[cachecssparams][driver]                                                  Filesystem (recommended)
$conf[cachecssparams][filemtime]                                               [ ]
$conf[cachecssparams][lifetime]                                                86400

Javascript Caching

$conf[cachejs]                                                                 Yes
$conf[cachejsparams][driver]                                                   Filesystem (recommended)
$conf[cachejsparams][compress]                                                 Built-in compressor (Good compression, good speed)
$conf[cachejsparams][lifetime]                                                 604800

Theme Caching

$conf[cachethemes]                                                             Yes
$conf[cachethemesparams][check]                                                Application versions
$conf[cachethemesparams][lifetime]                                             604800

Locking

Locking Settings

$conf[lock][driver] 	                                                       SQL-based locking
$conf[lock][params][driverconfig]                                              Horde defaults
$conf[lock][params][table]                                                     horde_locks

Tokens

Tokens Settings

$conf[token][timeout]                                                          180
$conf[token][driver]                                                           SQL-based token storage
$conf[token][params][driverconfig]                                             Horde defaults
$conf[token][params][table]                                                    horde_tokens

History

History Settings

$conf[history][driver]                                                         SQL-based history storage
$conf[history][params][driverconfig] 	                                         Horde defaults

DAV

DAV Settings

 $conf[davstorage][driver]                                                     SQL-based metadata storage
 $conf[davstorage][params][driverconfig]                                       Horde defaults

Mailer

Mailer Settings

$conf[mailer][type]                                                            Use a SMTP server (HIGHLY RECOMMENDED)
$conf[mailer][params][host]                                                    smtp.dmz.nausch.org
$conf[mailer][params][port]                                                    25
$conf[mailer][params][localhost] 	                                       vml000097.dmz.nausch.org
$conf[mailer][params][auth]                                                    No
$conf[mailer][params][lmtp]                                                    [ ]

Virtual File Storage

Virtual File Storage Settings

$conf[vfs][type]                                                               SQL database
$conf[vfs][params][driverconfig]                                               Horde defaults

Session handler

Session Handler Settings

$conf[sessionhandler][type]                                                    SQL database
$conf[sessionhandler][params][driverconfig]                                    Horde defaults
$conf[sessionhandler][params][table]                                           horde_sessionhandler
$conf[sessionhandler][memcache] 	                                       [ ]

HTTP Proxy

HTTP Proxy Settings

$conf[http][proxy][proxy_host]
$conf[http][proxy][proxy_port]
$conf[http][proxy][proxy_user]
$conf[http][proxy][proxy_pass]

Spell Checker

$conf[spell][driver]                                                           aspell (command line)
$conf[spell][params][path]                                                     /usr/bin/aspell

GnuPG

GnuPG Settings

$conf[gnupg][path]                                                             /usr/bin/gpg
$conf[gnupg][keyserver]                                                        keyserver.nausch.org, pool.sks-keyservers.net, subkeys.pgp.net, pgp.mit.edu
$conf[gnupg][timeout]                                                          10

OpenSSL

OpenSSL Settings

$conf[openssl][cafile]                                                         /etc/pki/tls/certs/ca-bundle.crt
$conf[openssl][path]                                                           /usr/bin/openssl

Themes

Theme Settings

$conf[nobase64_img]                                                            [ ]

Image Manipulation

Image Manipulation Settings

$conf[image][driver] 	                                                       The PECL Imagick Library (recommended)

Image Metadata Driver Settings

$conf[exif][driver]                                                          Bundled implementation in PHP

MIME Detection

MIME Detection Settings

$conf[mime][magic_db]                                                        /usr/share/misc/magic

Country Lookup

Country Lookup Settings

$conf[geoip][datafile]                                                       /usr/share/GeoIP/GeoIP.dat

Timezone Lookup

Timezone Lookup Settings

$conf[timezone][location]                                                     ftp://ftp.iana.org/tz/tzdata-latest.tar.gz

Problem Reporting

Problem Reporting Settings

$conf[problems][tickets]                                                      No
$conf[problems][email]                                                        webmaster@nausch.org
$conf[problems][maildomain]                                                   nausch.org
$conf[problems][username]
$conf[problems][password]
$conf[problems][attachments]                                                  [✔]
$conf[menu][links][help]                                                      All users
$conf[menu][links][prefs]                                                     Authenticated users
$conf[menu][links][problem]                                                   All users
$conf[menu][links][login]                                                     All users
$conf[menu][links][logout]                                                    Authenticated users

Portal Blocks

Portal Blocks Settings

$conf[portal][fixed_blocks] 	                                              

Fortune Configuration

$conf[fortune][exec_path] 

Account Info Configuration

$conf[accounts][driver]                                                       None

User Capabilities and Constraints

User Capabilities and Constraints

$conf[user][verify_from_addr]                                                 [ ]
$conf[user][select_view]                                                      Yes

API Keys

API Keys Settings

$conf[api][googlemaps]
$conf[api][googlesafebrowsing]
$conf[api][googlesearch] 	
$conf[api][yahoomaps]
$conf[api][cloudmade]
$conf[api][bing]

Facebook Integration Settings

$conf[facebook][enabled] 	                                              Disabled

Twitter Integration Settings

$conf[twitter][enabled]  	                                              Disabled

Url Shortening

$conf[urlshortener]                                                           TinyUrl

Weather Services

$conf[weather][provider]                                                      None

IMAP Server

IMAP Server Settings

$conf[imap][enabled]                                                          Disabled

IMSP Server

IMSP Server Settings

$conf[imsp][enabled]                                                          Disabled

Kolab Server

Kolab Server Settings

$conf[kolab][enabled]                                                         Disabled

Distributed Hash Table

$conf[hashtable][driver]                                                      None

ActiveSync

$conf[activesync][enabled]                                                    Enabled

Storage

$conf[activesync][storage]                                                    SQL Database	
$conf[activesync] [params][driverconfig]                                      Horde defaults       

Capabilities

$conf[activesync][emailsync]                                                  [✔]
$conf[activesync][version]                                                    Exchange 2010sp2 (EAS 14.1)

Authentication

$conf[activesync][auth][type]                                                 HTTP Basic

Autodiscovery

$conf[activesync][autodiscovery] 	                                        Use the full email address as user name
$conf[activesync][outlookdiscovery]                                           No

Logging

$conf[activesync][logging][type]                                              None

Ping Settings

$conf[activesync][ping][deviceping]                                           Device managed heartbeat
$conf[activesync][ping][heartbeatmin]                                         60
$conf[activesync][ping][heartbeatmax]                                         2700
$conf[activesync][ping][heartbeatdefault]                                     4800
$conf[activesync][ping][waitinterval] 	                                15

Hauptkonfigurationsdatei /usr/share/horde/config/conf.php

Mit einem Klick auf die Schaltfläche Bild: Schaltfläche Generate Horde Configuration wird die Konfigurationsdate im Verzeichnis /usr/share/horde/config abgelegt.

 # less /usr/share/horde/config/conf.php
/usr/share/horde/config/conf.php
<?php
/* CONFIG START. DO NOT CHANGE ANYTHING IN OR AFTER THIS LINE. */
// $Id: 6db3756a468182066a4699d0bb476a46d2c76ec1 $
$conf['vhosts'] = false;
$conf['debug_level'] = E_ALL & ~E_NOTICE;
$conf['max_exec_time'] = 0;
$conf['compress_pages'] = true;
$conf['secret_key'] = '54116806-935c-4e4f-9c1e-58ef0a000054';
$conf['umask'] = 077;
$conf['testdisable'] = true;
$conf['use_ssl'] = 2;
$conf['server']['name'] = $_SERVER['SERVER_NAME'];
$conf['urls']['token_lifetime'] = 30;
$conf['urls']['hmac_lifetime'] = 30;
$conf['urls']['pretty'] = false;
$conf['safe_ips'] = array();
$conf['session']['name'] = 'Horde';
$conf['session']['use_only_cookies'] = true;
$conf['session']['timeout'] = 0;
$conf['session']['cache_limiter'] = 'nocache';
$conf['session']['max_time'] = 72000;
$conf['cookie']['domain'] = $_SERVER['SERVER_NAME'];
$conf['cookie']['path'] = '/';
$conf['sql']['username'] = 'horde_admin_user';
$conf['sql']['password'] = 'rbgsDK39DeM2b2btx9iMHfzd';
$conf['sql']['hostspec'] = 'mysql.dmz.nausch.org';
$conf['sql']['port'] = 3306;
$conf['sql']['protocol'] = 'tcp';
$conf['sql']['database'] = 'horde5';
$conf['sql']['charset'] = 'utf-8';
$conf['sql']['ssl'] = false;
$conf['sql']['splitread'] = false;
$conf['sql']['phptype'] = 'mysqli';
$conf['nosql']['phptype'] = false;
$conf['ldap']['useldap'] = false;
$conf['auth']['admins'] = array('Administrator');
$conf['auth']['checkip'] = true;
$conf['auth']['checkbrowser'] = true;
$conf['auth']['resetpassword'] = true;
$conf['auth']['alternate_login'] = false;
$conf['auth']['redirect_on_logout'] = false;
$conf['auth']['list_users'] = 'input';
$conf['auth']['params']['username'] = 'Administrator';
$conf['auth']['params']['requestuser'] = false;
$conf['auth']['driver'] = 'auto';
$conf['auth']['params']['count_bad_logins'] = false;
$conf['auth']['params']['login_block'] = false;
$conf['auth']['params']['login_block_count'] = 5;
$conf['auth']['params']['login_block_time'] = 5;
$conf['signup']['allow'] = false;
$conf['log']['priority'] = 'INFO';
$conf['log']['ident'] = 'HORDE';
$conf['log']['name'] = LOG_USER;
$conf['log']['type'] = 'syslog';
$conf['log']['enabled'] = true;
$conf['log_accesskeys'] = false;
$conf['prefs']['maxsize'] = 65535;
$conf['prefs']['params']['table'] = 'horde_prefs';
$conf['prefs']['params']['driverconfig'] = 'horde';
$conf['prefs']['driver'] = 'Sql';
$conf['alarms']['params']['table'] = 'horde_alarms';
$conf['alarms']['params']['driverconfig'] = 'horde';
$conf['alarms']['params']['ttl'] = 300;
$conf['alarms']['driver'] = 'Sql';
$conf['group']['driverconfig'] = 'horde';
$conf['group']['driver'] = 'Sql';
$conf['perms']['driverconfig'] = 'horde';
$conf['perms']['driver'] = 'Sql';
$conf['share']['no_sharing'] = false;
$conf['share']['auto_create'] = true;
$conf['share']['world'] = true;
$conf['share']['any_group'] = false;
$conf['share']['hidden'] = false;
$conf['share']['cache'] = true;
$conf['share']['driver'] = 'Sqlng';
$conf['cache']['default_lifetime'] = 86400;
$conf['cache']['params']['sub'] = 0;
$conf['cache']['params']['prefix'] = '/usr/share/horde/static';
$conf['cache']['driver'] = 'File';
$conf['cache']['use_memorycache'] = '';
$conf['cachecssparams']['url_version_param'] = true;
$conf['cachecss'] = false;
$conf['cachejsparams']['url_version_param'] = true;
$conf['cachejs'] = false;
$conf['cachethemes'] = false;
$conf['lock']['params']['table'] = 'horde_locks';
$conf['lock']['params']['driverconfig'] = 'horde';
$conf['lock']['driver'] = 'Sql';
$conf['token']['timeout'] = 180;
$conf['token']['params']['table'] = 'horde_tokens';
$conf['token']['params']['driverconfig'] = 'horde';
$conf['token']['driver'] = 'Sql';
$conf['history']['params']['driverconfig'] = 'horde';
$conf['history']['driver'] = 'Sql';
$conf['davstorage']['params']['driverconfig'] = 'horde';
$conf['davstorage']['driver'] = 'Sql';
$conf['mailer']['params']['host'] = 'smtp.dmz.nausch.org';
$conf['mailer']['params']['port'] = 25;
$conf['mailer']['params']['localhost'] = 'vml000097.dmz.nausch.org';
$conf['mailer']['params']['auth'] = false;
$conf['mailer']['params']['lmtp'] = false;
$conf['mailer']['type'] = 'smtp';
$conf['vfs']['params']['driverconfig'] = 'horde';
$conf['vfs']['type'] = 'Sql';
$conf['sessionhandler']['params']['table'] = 'horde_sessionhandler';
$conf['sessionhandler']['params']['driverconfig'] = 'horde';
$conf['sessionhandler']['type'] = 'Sql';
$conf['sessionhandler']['hashtable'] = false;
$conf['spell']['params']['path'] = '/usr/bin/aspell';
$conf['spell']['driver'] = 'aspell';
$conf['gnupg']['path'] = '/usr/bin/gpg';
$conf['gnupg']['keyserver'] = array('pool.sks-keyservers.net', 'subkeys.pgp.net', 'pgp.mit.edu');
$conf['gnupg']['timeout'] = 10;
$conf['openssl']['cafile'] = '/etc/pki/tls/certs/ca-bundle.crt';
$conf['openssl']['path'] = '/usr/bin/openssl';
$conf['nobase64_img'] = false;
$conf['image']['driver'] = 'Imagick';
$conf['exif']['driver'] = 'Bundled';
$conf['mime']['magic_db'] = '/usr/share/misc/magic';
$conf['geoip']['datafile'] = '/usr/share/GeoIP/GeoIP.dat';
$conf['timezone']['location'] = 'ftp://ftp.iana.org/tz/tzdata-latest.tar.gz';
$conf['problems']['email'] = 'webmaster@nausch.org';
$conf['problems']['maildomain'] = 'nausch.org';
$conf['problems']['tickets'] = false;
$conf['problems']['attachments'] = true;
$conf['menu']['links']['help'] = 'all';
$conf['menu']['links']['prefs'] = 'authenticated';
$conf['menu']['links']['problem'] = 'all';
$conf['menu']['links']['login'] = 'all';
$conf['menu']['links']['logout'] = 'authenticated';
$conf['portal']['fixed_blocks'] = array();
$conf['accounts']['driver'] = 'null';
$conf['user']['verify_from_addr'] = false;
$conf['user']['select_view'] = true;
$conf['facebook']['enabled'] = false;
$conf['twitter']['enabled'] = false;
$conf['urlshortener'] = 'TinyUrl';
$conf['weather']['provider'] = false;
$conf['imap']['enabled'] = false;
$conf['imsp']['enabled'] = false;
$conf['kolab']['enabled'] = false;
$conf['hashtable']['driver'] = 'none';
$conf['activesync']['enabled'] = false;
/* CONFIG END. DO NOT CHANGE ANYTHING IN OR BEFORE THIS LINE. */

Links