Die Geschichte von Open-Xchange [1], kurz OX, beginnt vor über 15 Jahren. Die Groupware ist als Alternative zum MS Exchange Server konzipiert und hat seither eine stetige Weiterentwicklung durchlaufen. Wie es sich für eine professionelle Groupware-Umgebung gehört, verfügt Open-Xchange über E-Mail-Funktionalität, Termin-, Kontakt- und Aufgabenverwaltung. Außerdem besitzt die Umgebung ein Dokumentenmanagement sowie viele interessante und nützliche Funktionen, die beispielsweise die Integration von Verzeichnisdiensten erlauben.
Die Anwender greifen über ein AJAX-basiertes Webfrontend, MS Outlook, WebDAV oder die Mac OS X-Anwendungen Mail, Address Book und iCal auf das System zu. Auch der Datenabgleich zwischen der Groupware und gängigen Clients ist zuverlässig möglich.
Im Frühjahr 2012 steuerten ehemalige OpenOffice-Entwickler eine Cloud-basierte Office-Software namens “OX Documents” zum Open Xchange-Server bei. Im Unterschied zu Google Docs und Microsoft Office 365 müssen OX Documents-Anwender nicht ein spezifisches Dateiformat verwenden, sondern können MS Office- und OpenOffice/LibreOf-fice-Dateien unmittelbar im Browser lesen und editieren, ohne dass eine Konvertierung notwendig wäre.
Im April 2013 folgte mit der Einführung der OX App Suite der nächste Streich. Die Suite ist eine Kollaborationssoftware mit integrierten Apps für die Bearbeitung von E-Mails, Kontakten und Terminen, die um Informationen und Adressen aus sozialen Netzwerken ergänzt werden können. Auch Bilder, Audio-, Video- und Office-Dateien lassen sich mit der OX App Suite verwalten. Die Suite nutzt HTML5 und JavaScript und erlaubt die Nutzung der Umgebung von jedem Endgerät. Das Responsive Design passt die Schnittstelle automatisch an die unterschiedlichen Display-Größen von PC, Laptop, Tablet und Smartphone an. Dank der Local Storage-Funktion aktueller Browser soll die OX App Suite der Performance traditioneller Client-Server-Software in nichts nachstehen.
Die Groupware-Umgebung, die ihre Ursprünge in Hamburg hat und auch dort heute noch maßgeblich weiterentwickelt wird, ist Java-basiert und für den Einsatz auf Linux-Servern konzipiert. Exemplarisch sei hier die Inbetriebnahme der App Suite auf einem Debian 7.0-Server demonstriert. Die Vorgehensweise auf alternativen Linux-Plattformen verläuft ähnlich. Für die Installation von OX benötigen Sie einen Debian 7.0-Server. Es dürfte sicherheitsbewussten Administratoren entgegenkommen, dass Sie dabei ganz ohne grafische Tools auskommen.
Neben einer Java- und einer MySQL-Installation benötigen Sie eine bestehende Internet-Verbindung. Da “vim” bei Debian Wheezy standardmäßig nicht installiert ist, sollten Sie das mit dem Befehl apt-get install vim nachholen. Der nächste Schritt dient dem Hinzufügen des Open-Xchange Repository. Um die Installation und das Aufspielen von Updates zu vereinfachen, sollten Sie eines der verschiedenen Repositories im Debian-System registrieren. Dazu starten Sie die Konsole und modifizieren die Debian Repository-Infodatei:
$ cat /etc/apt/sources.list.d/open-xchange.list deb http://software.open-xchange.com/products/appsuite/stable/appsuiteui/DebianWheezy/ / deb http://software.open-xchange.com/products/appsuite/ stable/backend/DebianWheezy/ / EOF
Besitzen Sie ein gültiges Maintenance-Abo, entkommentieren Sie folgende Zeilen und fügen die ldb-Account-Dateien in die URL ein:
# deb http://LDBACCOUNT:LDBPASSWORD@software.open-xchange.com/products/appsuite/stable/appsuiteui/updates/DebianWheezy / # deb http://LDBACCOUNT:LDBPASSWORD@software.open-xchange.com/ products/appsuite/stable/backend/updates/DebianWheezy /
Die Entwickler empfehlen ausdrücklich den Import des Open-Xchange Build Key, damit die Installation von Paketen mit gültiger Signatur sichergestellt ist. Sie sollten dazu einen Reload des Package-Index durchführen. Der lädt die Paketbeschreibungen aus den Repositories herunter und sorgt für die Verwendung von gültigen Quellen für die signierten Pakete:
$ apt-get update
Möchten Sie einen Standalone-Server einrichten, sorgt das folgende Kommando für den Download und die Installation aller notwendigen Pakete:
$ apt-get install mysql-server open-xchange open-xchange-authentication-database open-xchange-grizzly \open-xchange-admin open-xchange-appsuite \open-xchange-appsuite-backend open-xchange-appsuite-manifest
Nach der erfolgreichen Installation der App Suite können Sie sich an die Konfiguration der Umgebung machen. Für den Betrieb der Umgebung benötigen Sie einen MySQL-Datenbankbenutzer sowie einen Groupware-Administrator und einen Kontext-Admin. Der Datenbankbenutzer ist für die Ausführung aller Datenbankoperationen zuständig. Ihm weisen wir in dieser Beispielinstallation den Benutzernamen “openexchange” und das Passwort “db_password” zu.
Dann benötigen Sie einen Open-X-change-Administrator, der für die typischen administrativen Aufgaben, die Server-Konfiguration und die Verwaltung der Kontexte zuständig ist. Ihm geben wir den Benutzernamen “oxadminmaster” und das Passwort “admin_master_password”. Wir benötigen außerdem einen sogenannten Kontext-Administrator, der für die Verwaltung von Benutzern, Gruppen und Ressourcen zuständig ist. Er erhält den Benutzernamen “oxadmin” und die Kennung “admin_password”. Die Groupware setzt auf einem MySQL-Server auf, den Sie vor der Ausführung der Groupware starten:
$ /etc/init.d/mysql start
In verteilten Umgebungen sollten Sie MySQL mit der Option “--skip-name-resolve” verwenden oder alle Hosts der Host-Datei des Datenbankservers hinzufügen, damit nicht langsame DNS-Antworten das Erstellen von neuen Datenbankverbindungen ausbremsen. Fügen Sie außerdem Open-Xchange dem PATH hinzu:
$ echo PATH=$PATH:/opt/open-xchange/sbin/ > ~/.bashrc && . ~/.bashrc
Der nächste Schritt dient der Initialisierung der Open Xchange-Datenbank “configdb”. Hierzu führen Sie einfach das Skript “initconfigdb” aus:
$ /opt/open-xchange/sbin/initconfigdb --configdb-pass=db_password -a
Wenn Sie eine bereits bestehende “configdb”-Datenbank entfernen wollen, verwenden Sie zusätzlich die Option “-i”. In obigem Kommando generiert der Parameter “-a” einen administrativen Account für MySQL. Dieser Account ist für das Erstellen der “oxdatabase”-Datenbank erforderlich.
Bevor Sie irgendwelcheServices starten, müssen die Open-Xchange-Konfigurationsdateien korrekt eingerichtet sein. Die Option “--configdb-pass” zeigt das Passwort für den Datenbankbenutzer an, den Sie angelegt haben, die Option “--master-pass” spezifiziert das Passwort für den Administrator, den Sie bei der Ausführung des “oxinstaller”-Skripts angelegt haben. Damit Open-Xchange die volle E-Mail-Funktionalität bereitstellen kann, richten Sie die Groupware für das Zusammenspiel mit dem E-Mail-Server ein. Dazu editieren Sie die Konfigurationsdatei /opt/open-xchange/etc/mail.properties und ändern die Einstellung von “com.openexchange.mail. loginSource”:
# Anpassung von com.openexchange.mail.loginSource $ vim /opt/open-xchange/etc/mail.properties
Damit sind die notwendigen Schritte für die Inbetriebnahme von OX vorgenommen und Sie können den Administrationsservice ausführen:
$ /etc/init.d/open-xchange start
Nun registrieren Sie den lokalen Server in der Open-Xchange “configdb”-Datenbank:
$ /opt/open-xchange/sbin/registerserver -n oxserver -A oxadminmaster -P admin_master_password
Der nächste Schritt dient dem Erstellen eines lokalen Verzeichnisses, das als OX-Filestore verwendet wird. In dieser Ablage werden alle Inhalte und Dateien abgelegt, die mit Groupware-Objekten verknüpft sind. Der OX-User muss dazu über entsprechende Berechtigungen für die Nutzung verfügen:
$ mkdir /var/opt/filestore $ chown open-xchange:open-xchange /var/opt/filestore
Dann registrieren Sie das Verzeichnis als Filestore für den Groupware-Server:
$ /opt/open-xchange/sbin/register-filestore -A oxadminmaster -P admin_master_password / -t file:/var/opt/filestore -s 1000000
Mit der Option “-s” legen Sie die maximale Größe der Ablage in MByte fest. Schließlich registrieren Sie noch die Groupware-Datenbank. Dabei handelt es sich um eine separate Datenbank, in der alle Groupware-spezifischen Daten gespeichert werden:
$ /opt/open-xchange/sbin/registerdatabase -A oxadminmaster -P admin_master_password / -n oxdatabase -p db_password -m true