Nachdem ich zuvor die Installation der Groupware Kopano in der Community Edition auf einem Debian Jessie installiert habe: Kopano Groupware Community Edition – Installation Geht es nun im nächsten Schritt um die Konfiguration des Servers. Grundlegend ist Kopano nach der Installation gut vorkonfiguriert, muss jedoch auf das eigene System angepasst werden.
Nachfolgend meine Notizen die ich mir beim durchhangel der guten Doku gemacht habe. Die Doku ist unter: https://documentation.kopano.io/ zu finden.
Es gibt verschiedene Möglichkeiten der Authentifizierung eines Benutzers an Kopano, dies passiert über folgende Plugins darunter:
- MySQL
- Unix Authentication
- LDAP
- Active Directory
Je nachdem welchen Weg man wählt stehen folgende Möglichkeiten zur Verfügung:
Feature | DB | Unix | LDAP | LDAPMS |
---|---|---|---|---|
Create/delete/ modify users | yes | yes | yes | yes |
Set aliases | On MTA level | On MTA level | yes | yes |
Hide users | yes | yes | ||
Sendas permissions | yes | yes | yes | yes |
Sendas permissions of groups | yes | yes | ||
Security Groups | yes | yes | yes | yes |
Distribution groups | yes | yes | ||
Hide groups | yes | yes | ||
Dynamic groups | yes | yes | ||
Contacts support | yes | yes | ||
Multi-tenancy support | yes | yes | yes | |
Addresslists support | yes | yes | ||
Multi-server support | yes |
Ich werde nachfolgend die Authentifizierung über MySQL konfigurieren. Die Konfiguration erfolgt unter Debian unter /etc/kopano wo sich diverse Konfigurationsdateien befinden:
- backup.cfg
- dagent.cfg
- gateway.cfg
- ical.cfg
- migration-pst.cfg
- monitor.cfg
- presence.cfg
- quotamail
- search.cfg
- server.cfg
- spooler.cfg
- unix.cfg
- webmeetings.cfg
Info zur Konfiguration unter z.B. man kopano-server.cfg.
Kopano Server konfiguration
erfolgt unter /etc/kopano/server.cfg
Log aktivieren und Loglevel einstellen:
- log_method = file
- log_file = /var/log/kopano/server.log
- log_level = 3 #(warn)
Kopano Server und MySQL konfigurieren
Anlegen des User „kopano“ mit dem Passwort „password“:
- # mysql -uroot -p
- # GRANT ALL PRIVILEGES ON kopano.* TO ‚kopano’@’localhost‘ IDENTIFIED BY ‚kopano‘;
Festlegen der Rechte für den Datenbankbenutzer kopano:
- # GRANT ALTER, CREATE, CREATE ROUTINE, DELETE, DROP, INDEX, INSERT, LOCK TABLES, \
SELECT, UPDATE ON kopano.* TO ‚kopano’@’localhost‘ IDENTIFIED BY ‚password‘;
Nun muss der Server für MySQL konfiguriert werden. Dafür die /etc/kopano/server.cfg anpassen.
- mysql_host = localhost
- mysql_port =3306
- mysql_user = kopano
- mysql_password = password
- mysql_socket =
- mysql_database = kopano
- attachment_storage = files
Festlegen wo Attachments / Dateianhänge gespeichert werden sollen (Amazon S3 möglich)
- attachment_storage = files
- attachment_files_fsync = yes
- attachment_path = /var/lib/kopano/attachments
Falls „database“ gewählt wurde, kann mittels Script auch zu „Files“ konvertiert werden, aber nicht umgekehrt.
Vor- und Nachteile die Dateianhänge dateibasiert zu speichern:
Vorteile
- MySQL muss nicht die großen Binary Blobs in der Datenbank ablegen, read und write Zugriff wird beschleunigt
- Cache Purges in MySQL werden vermieden
Nachteile
- nur die Datenbank zu sichern reicht als Backup/Restore Strategie nicht aus, NFS mit locking -o nolock als Mount wird empfohlen
Dann den Kopano Server neustarten: # /etc/init.d/kopano-server restart
Kopano Spooler konfigurieren
Der Spooler ist für den Mailversand sowohl intern als auch nach extern zuständig. Mails die gesendet werden landen in den Postausgang von wo der MTA die Mail versendet. Die Konfiguration erfolgt unter /etc/kopano/spooler.cfg
- smtp_server = localhost
- smtp_port = 25
- server_socket = file:///var/run/kopano/server.sock (selber wie server_pipe_name in der server.cfg)
- log_method = file
- log_level = 3 (warn)
- log_file = /var/log/kopano/spooler.log
Dann den Kopano Spooler neustarten: # /etc/init.d/kopano-spooler restart
Kopano Caldav konfigurieren
Wer Caldav oder iCal zum verbinden des Kalenders mit mobilen Geräten oder Clients nutzen möchte. Ich lasse dies vorerst aus und will später ActiveSync nutzen.
Kopano IMAP / POP3 Gateway konfigurieren
Das Gateway wird benötigt damit der Benutzer über IMAP oder POP3 von einem Mailclient auf Elemente zugreifen kann. Das Gateway selber verbindet sich mittels MAPI mit dem Server. Die Änderungen werden in der gateway.cfg vorgenommen.
- server_bind = 0.0.0.0 (jede Adresse)
- server_socket = http://localhost:236/
- imap_enable = yes
- imap_port = 143
- imaps_enable = yes
- imaps_port = 993
- imap_only_mailfolders = yes
- pop3_enable = yes
- pop3_port = 110
- pop3s_enable = yes
- pop3s_port = 995
- log_method = file
- log_level = 3 (warn)
- log_file = /var/log/kopano/gateway.log
Dann das Kopano Gateway neustarten: # /etc/init.d/kopano-gateway restart
Kopano Quota Manager konfigurieren
Benutzer können durch viele E-Mails mit Anhängen und abgelegten Dateien, viel Speicherplatz belegen. Damit dies kontrolliert werden und vor allem koordiniert werden kann, kann in Kopano Quota konfiguriert werden. Dies kann Serverweit in der server.cfg eingestellt werden. Der Kopano Quota-Manager kennt drei Warnstufen, warn, soft und hard quota. Bei jeder erreichten Stufe erhält der Benutzer eine Infomail mit entsprechenden Daten über sein Quota.
- soft quota = der Benutzer kann keine Mails mehr senden
- hard quota = der Benutzer kann keine Mails mehr senden und empfangen
, bis er seinen Store reduziert hat. Der Wert in der server.cfg ist in Megabytes.
- quota_warn = 100
- quota_soft = 150
- quota_hard = 200
Quota pro Benutzer einstellen
Quota kann auch über den Befehl „kopano-admin“ für bestimmte Benutzer gesetzt werden. Um z.B. für Max ein Warn Quota von 80Mb, Soft Quota von 90 und ein Hard Limit von 100 zu setzen, sieht der Befehl wie folgt aus:
- kopano-admin -u max –qo 1 –qw 80 qs 90 –qh 100
Quota Monitoring aktivieren
Das Kopano Monitor programm überprüft jede Stunde (per Default) welcher Benutzer sein Quota erreicht hat und sendet entsprechende Benachrichtigungen. Damit der Monitor funktioniert muss er gestartet werden: # /etc/init.d/kopano-monitor start oder als Daemon mit: # kopano-monitor -c /etc/kopano/monitor.cfg
Quota Templates anpassen
Die Templates sind per Default unter /etc/kopano/quotamail gespeichert. Sie könnem mit folgenden Optionen spezifiziert werden:
- userquota_warning_template
- companyquota_warning_template
Die Templates beinhalten bestimmte Variablen die wie folgt lauten:
- KOPANO_QUOTA_NAME = name des Benutzers oder Firma
- KOPANO_QUOTA_COMPANY = Name der Firma zu der der Benutzer gehört
- KOPANO_QUOTA_STORE_SIZE =enthält Total Size des Benutzers oder bei einer Firma aller Stores inkl. der Public Stores der Firma
- KOPANO_QUOTA_WARN_SIZE = Warning Limit des Benutzers oder der Firma
- enthalten in den Werten sind immer B, KB, MB und GB
Kopano Suchdienst konfigurieren
Die Full-Text-Suche wird vom Kopano Suchserver bereitgestellt. Dieser indexiert kontinuierlich alle Mails. Jeder Kopano-Server Instanz ines Multi-Server Setup benötigt seinen eigenen Search Service. Auch ist es möglich die Indexierung der Anhänge zu aktivieren. Die Einstellung findet in der server.cfg statt:
- search_enable = yes
- search_socket = file:///var/run/kopano/search.sock
Starten der Indexierung durch den Searchservice: # /etc/init.d/kopano-search start
Suchdienst konfigurieren
Während der Indexierung wird eine Indexdatei für jeden Store auf Festplatte gespeichert. Der Pfad dieser wird in der search.cfg festgelegt:
- index_path = /var/lib/kopano/search
Wenn ein Store erneut indexiert werden muss, oder der Pfad sich ändern, muss der Suchdienst zuvor angehalten werden. Damit die Indexierung möglichst schnell läuft kann die Streaming Synchronisation aktiviert werden. Dies erfolgt in der server.cfg:
- enable_enhanced_ics = yes
Anhänge / Attachments indexieren
Damit auch Anhänge indexiert werden muss in der search.cfg folgende Option aktiviert werden:
- index_attachments = yes
Dabei werden die Anhänge in Plaintext umgewandelt und indexiert. Je nach Größe des Anhangs kann es länger oder kürzer sein. Die Größe des zu indexierenden Anhangs kann mit der Option:
- index_attachment_max_size = 5M
konfiguriert werden. Damit dieser Prozess läuft muss ein bestimmtes Script bereitgestellt werden. Der Pfad dahin ist unter der Option:
- index_attachment_parser = /etc/kopano/searchscripts/attachments_parser
einzustellen. Das Script nutzt dann die Datei attachments_parser.db um zu entscheiden welche Anhänge indexiert werden. Das Layout sieht wie folgt aus:
- <mime-type>;<extension> ‚<command>
Kopano WebApp konfigurieren
Auch die WebApp kann mittels /etc/kopano/webapp/config.php konfiguriert und angepasst werden. So kann die Default-Sprache oder Anzahl an zur Auswahl stehenden Sprachen festgelegt werden, oder auch bestimmte Plugins deaktiviert werden.
Kopano Z-Push (ActiveSync) Konfiguration
Z-Push ist ein unabhängiges und eigenständiges Projekt unter http://z-push.org. Z-Push emuliert die ActiveSync Funktionalität von Microsoft Exchange Server. Als Voraussetzung muss Z-Push auf dem Server installiert werden. Z-Push kann mit folgenden mobilen Endgeräten verwendet werden:
- Apple iPhone und iPad
- Windows Phone 7, 7.5 und 8
- Android Smartphones mit Version 4.x und neuer
- Blackberry PlayBook und 10 mit ActiveSync
- und andere ActiveSync kompatiblen Geräte
Damit die Sicherheit beim Transfer zwischen Kopano Server und Z-Push Gerät eingehalten wird, muss der SSL Support auf dem Web-Server aktiviert und konfiguriert werden. Die mobilen Geräte funktionieren meist nur mit offiziellen Zertifikaten und nicht mit selbstsignierten, unter Windows kann es sein, dass das Zertifikat direkt im Gerät importiert werden muss.
Z-Push Installation
Läuft nur auf PHP 5.4 und neuer, sowie ab
- Debian 7.0
- Ubuntu 14.04
- RHEL/CentOS 6
- Fedora 23
- OpenSuse 13.2
- SLES 12
Installation
- Verzeichnis erstellen: # mkdir -p /usr/share/z-push
- Download der letzten Version (2.3.4) : # wget http://download.z-push.org/final/2.3/z-push-2.3.4.tar.gz
- entpacken: # tar -vxf z-push-2.3.4.tar.gz –strip-components=1
Z-Push speichert je Benutzer in ein Verzeichnis den Status und die Logs. Das „state“ und „log“ Verzeichnis muss existieren.
Berechtigungen für Z-Push festlegen
Da Z-Push über den Webserver (Apache) läuft muss der der Besitzer sein.
- # mkdir -p /var/lib/z-push
- # mkdir -p /var/log/z-push
- # chmod 755 /var/lib/z-push
- # chmod 755 /var/log/z-push
- # chown www-data www-data /var/lib/z-push
- # chown www-data www-data /var/log/z-push
Apache für ActiveSync konfigurieren
Damit Z-Push über den Alias „Microsoft-Server-ActiveSync“ erreichbar ist, wird ein Alias im Apache2 erstellt:
- # touch /etc/apache2/sites-available/z-push.conf
Der Inhalt sieht wie folgt aus:
- Alias /Microsoft-Server-ActiveSync /usr/share/z-push/index.php
aktivieren und Webserver neu laden:
- # a2ensite z-push
- # service apache2 reload
Z-Push alle Features nutzen
Damit alle Funktionen von Z-Push und dem z-push-top Befehl genutzt werden können, müssen diese weiteren PHP-Pakete installiert werden:
- Red Hat Enterprise Linux*
- php-cli php-soap php-process
- SLES**
- php53 php53-soap php53-pcntl php53-sysvshm php53-sysvsem php53-posix
- Debian and Ubuntu
- # aptitude install php5-cli php-soap
- # service apache2 reload
Z-Push PHP Einstellungen
Folgende Einstellungen sollten in der php.ini oder .htaccess für Z-Push min. konfiguriert werden:
- php_flag magic_quotes_gpc = off
- php_flag register_globals = off
- php_flag magic_quotes_runtime = off
- php_flag short_open_tag = on
Sowei folgende Apache Direktiven:
<Directory /usr/share/z-push>
php_flag magic_quotes_gpc off
php_flag register_globals off
php_flag magic_quotes_runtime off
php_flag short_open_tag on
</Directory>
Z-Push aktivieren
Start von Z-Push mittels:
- ./z-push-top.php
- und / oder
- ./z-push-admin.php
sowie setzen der symbolischen Links
- # ln -s /usr/share/z-push/z-push-admin.php /usr/local/sbin/z-push-admin
- # ln -s /usr/share/z-push/z-push-top.php /usr/local/sbin/z-push-top
Damit können die Z-Push Tools von jedem Verzeichnis und ohne die .php Eerweiterung ausgeführt werden.
Kopano Mobile Device Managment
Benutzer können das MDM Web-Plugin von Kopano zum verwalten ihrer Geräte verwenden. Damit können Sie ihr Gerät löschen. Aber auch Administratoren können mittels Befehl z-push-admin remote Geräte löschen / wipen.
Interessiert in verschiedenste IT Themen, schreibe ich in diesem Blog über Software, Hardware, Smart Home, Games und vieles mehr. Ich berichte z.B. über die Installation und Konfiguration von Software als auch von Problemen mit dieser. News sind ebenso spannend, sodass ich auch über Updates, Releases und Neuigkeiten aus der IT berichte. Letztendlich nutze ich Taste-of-IT als eigene Dokumentation und Anlaufstelle bei wiederkehrenden Themen. Ich hoffe ich kann dich ebenso informieren und bei Problemen eine schnelle Lösung anbieten. Wer meinen Aufwand unterstützen möchte, kann gerne eine Tasse oder Pod Kaffe per PayPal spenden – vielen Dank.
Ich setze Zarafa+Yaffas//Kopano schon seit 2012 ein aber ich will hier einfach nur mal danke sagen für die Anleitung! Denn die Installation und Einrichtung ist das eine aber noch das alles zu dokumentieren und zu veröffentlichen ist auch Arbeit!
Hallo SH,
und vielen Dank.
Gerade im deutschsprachigen Raum vielleicht interessant:
Bei diversen Debian Installationen, war es notwendig die „locales“ zu konfigurieren.
dpkg-reconfigure locales (de_DE.UTF-8)
Anschließend wird die Datei
/etc/default/kopano noch angepasst:
#Common defaults for all daemons
KOPANO_LOCALE=“C“
ändern in:
KOPANO_LOCALE=“de_DE.UTF-8″
Ebenfalls zu ändern ist folgende Zeile, um die Ordneransicht in deutscher Sprache auszugeben („Posteingang“ anstelle von „Inbox“ usw.)
# Locale to export to userscripts
KOPANO_USERSCRIPT_LOCALE=“de_DE.UTF-8″
Neue Datenspeicher (s.g. Stores) werden nun in deutscher Sprache angelegt.
(Sollte im Falle des Falles vor dem Anlegen von Benutzern passieren – da dies nicht nachträglich auf bestehende Stores angewendet werden kann.
Sollte es in der Web-/Deskapp zur fehlerhaften Ausgabe von Sonderzeichen kommen, so hilft ein Blick in die Datei
/etc/apache2/envvars
Hier einfach die folgenden Zeilen
##The locale used by some modules like mod_dav
export LANG=C
## Uncomment the following line to use the system defa$
#. /etc/default/locale
Ändern in :
The locale used by some modules like mod_dav
export LANG=de_DE.UTF-8
## Uncomment the following line to use the system defa$
. /etc/default/locale
Im Anschluss den Apache Server Neustarten und der deutschen Sprache sollte nichts mehr im Wege stehen.
Natürlich kann ich keine Garantie für die Korrektheit und Vollständigkeit der Angaben geben – jedoch läuft es bei mir so.
Hallo Lars,
und vielen Dank für deinen konstruktiven Kommentar.