Hallo,
Du hast einen Debian 9 Server mit ISPconfig 3 und willst eine Groupware?
Dann wäre doch Horde-Webmail genau das Richtige.
Hier erkläre ich dir, wie du Horde-Webmail auf einen Debian 9 Server mit ISPConfig 3 installierst.
Zur Horde Installation:
Erst das System auf den neusten Stand bringen mit:
apt update && apt upgrade.
Dann Horde-Webmail installieren mit:
apt install php-horde-webmail –y
Danach Legen wir als erstes eine Datenbank an:
mysql -u root -p
Mit dem MySQl root Passwort bestätigen und dann:
CREATE DATABASE horde; GRANT ALL ON horde.* TO horde@localhost IDENTIFIED BY 'PASSWORD'; FLUSH PRIVILEGES; exit;
Bei PASSWORD sollte natürlich dein eigenes Passwort rein.
Dann das Installations Script aufrufen mit:
webmail-install
und die Fragen Beantworten:
What database backend should we use?
(false) [None]
(mysql) MySQL / PDO
(mysqli) MySQL (mysqli)
(oci8) Oracle
(pgsql) PostgreSQL
(sqlite) SQLite
Type your choice []:
mysqli
Username to connect to the database as* []
horde
Password to connect with
euer oben erstelltes horde Passwort
How should we connect to the database?
(unix) UNIX Sockets
(tcp) TCP/IP
Type your choice [unix]: Enter
Location of UNIX socket [] Enter
Database name to use* []
horde
Internally used charset* [utf-8] Enter
Use SSL to connect to the server?
(1) Yes
(0) No
Type your choice [0]: Enter
Certification Authority to use for SSL connections []
false
Split reads to a different server?
(false) Disabled
(true) Enabled
Type your choice [false]: Enter
Specify an existing mail user who you want to give administrator
permissions (optional):
Hier eine in ISPConfig3 vorhandene Admin Mail Adresse
Weiter geht es mit:
apt install php-horde-passwd
nun machen wir erstmal aus der backends.php eine locale php damit diese beim Update nicht überschrieben wird.
cp /usr/share/horde/passwd/config/backends.php /usr/share/horde/passwd/config/backends.local.php
Nun öffnen wir zum Bearbeiten die Datei und ändern einige Teile:
nano /usr/share/horde/passwd/config/backends.local.php
Suche nach:
$backends['hordesql'] = array ( 'disabled' => false,
und mach daraus, wenn es nicht schon sein sollte:
$backends['hordesql'] = array ( 'disabled' => true,
Weiter suchen wir nach:
$backends['sql'] = array ( 'disabled' => false, 'name' => 'SQL Server', [...] // 'query_lookup' => 'SELECT user_pass FROM horde_users WHERE user_uid = %u', // 'query_modify' => 'UPDATE horde_users SET user_pass = %e WHERE user_uid = %u', ), );
Daraus machen wir dann:
$backends['sql'] = array ( 'disabled' => false, 'name' => 'SQL Server', 'preferred' => '', 'policy' => array( 'minLength' => 7, 'maxLength' => 64, 'maxSpace' => 0, 'minNumeric' => 1, ), 'driver' => 'Sql', 'params' => array( 'phptype' => 'mysql', 'hostspec' => 'localhost', 'username' => 'root', 'password' => 'MySQL RootPasswort', 'encryption' => 'crypt-md5', 'database' => 'ISPCONFIG_DATABASE', 'table' => 'mail_user', 'user_col' => 'email', 'pass_col' => 'password', 'show_encryption' => false // The following two settings allow you to specify custom queries for // lookup and modify functions if special functions need to be // performed. In places where a username or a password needs to be // used, refer to this placeholder reference: // %d -> gets substituted with the domain // %u -> gets substituted with the user // %U -> gets substituted with the user without a domain part // %p -> gets substituted with the plaintext password // %e -> gets substituted with the encrypted password // // 'query_lookup' => 'SELECT user_pass FROM horde_users WHERE user_uid = %u', // 'query_modify' => 'UPDATE horde_users SET user_pass = %e WHERE user_uid = %u', ), );
Bitte achte darauf das bei pass_col das MySql root Passwort hinkommt
Nun können wir uns unter http://deine.Domain/horde mit der Admin Mail Adresse in Horde einloggen.
- Im Administrations Bereich müssen nun noch die Configs von den einzelnen Modulen geschrieben/gespeichert werden.
Dabei haben wir nun verschiedene Möglichkeiten: - wir erzeugen die Configuration und speichern sie manuell und setzen: chown www-data:www-data
wir geben den Verzeichnissen temporär Schreibrechte, wobei wir das Verzeichnis auch auf chown www-data:www-data setzen müssten, was aber nicht sehr Sicher - Über das Horde Login die Config mit FTP auf dem Server speichern und verschieben.
Wenn die conf.php‘s schon da sind brauchen wir diese auch nur auf chown www-data:www-data setzen und können alles andere von Horde Login aus machen.
Ich wünsche euch viel Spaß mit eurer Horde-Webmail.
Einige Teile dieses Howto’s stammen von howtoforge.com und wurden nur für Debian 9 Angepasst