Workshopserie: Open Source-Groupware Open-Xchange App Suite (1)

Freie Wahl

Microsofts Exchange Server dominiert nach wie vor in vielen Rechen­zentren, dabei gibt es längst eine breite Palette an quelloffenen Lösungen, die dem kommerziellen Platzhirschen das Wasser reichen können. Einige bieten sogar noch mehr Funktionalität. Ein hervorragendes Beispiel hierfür ist die maßgeblich in Deutschland entwickelte Open-Xchange App Suite. In diesem Workshop erfahren Sie, was die Suite zu bieten hat und wie Sie die Exchange-Alternative in Betrieb nehmen.
Für die Mai-Ausgabe hat sich IT-Administrator den Schwerpunkt 'Messaging & Collaboration' auf die Fahnen geschrieben. Lesen Sie darin, wie Sie die Open ... (mehr)

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.

In Java und für Linux konzipiert

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.

Bild 1: Ein erster Blick auf die sehr ansprechend gestaltete Benutzerschnittstelle der OX App Suite.

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
/

 

Bild 2: Die AJAX-basierte Schnittstelle lässt sich in vielen Bereichen wie eine klassische Desktop-Umgebung verwenden. Hier das Anlegen eines neuen E-Mail-Accounts.

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

 

Die Kraft der drei Admins

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
Bild 3: OX Drive dient der Kollaboration und integriert sich in die App Suite

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
Bild 4: Die App Suite verfügt über ein vollwertiges Kalendermodul

Ähnliche Artikel

comments powered by Disqus

Artikel der Woche

Eigene Registry für Docker-Images

Wer selber Docker-Images herstellt, braucht auch eine eigene Registry. Diese gibt es ebenfalls als Docker-Image, aber nur mit eingeschränkter Funktionalität. Mit einem Auth-Server wird daraus ein brauchbares Repository für Images. (mehr)
Einmal pro Woche aktuelle News, kostenlose Artikel und nützliche ADMIN-Tipps.
Ich habe die Datenschutzerklärung gelesen und bin einverstanden.

Konfigurationsmanagement

Ich konfiguriere meine Server

  • von Hand
  • mit eigenen Skripts
  • mit Puppet
  • mit Ansible
  • mit Saltstack
  • mit Chef
  • mit CFengine
  • mit dem Nix-System
  • mit Containern
  • mit anderer Konfigurationsmanagement-Software

Google+

Ausgabe /2019