Preface

This document is intended as a base to migrate a Linux server running ZCP to the latest Kopano Core version. It does not contain any specific commands as they could vary in different distributions.

Audience

This document is intended to be used by experienced system administrators and engineers who have in-depth knowledge of both Linux and MySQL environments.

Disclaimer

Use these suggestions at your own risk and only if you know what you are doing.

These instructions are intended as pointers and not as a definitive configuration, as every environment can be set up differently.

Also keep in mind that some steps in this guide can take time depending on the size and complexity of your environment.

Preface

Kopano Core is a fork of ZCP 7.2.3. Migrating from ZCP to Kopano Core means that some features and components are replaced and some are dropped

If you are migrating from ZCP 7.1 to KC 8.x, please take the following into account before upgrading:

Backups are not compatible. We recommend our users to make a MySQL backup before starting the migration procedure.

Kopano introduces a new search component with a new index format. Indexes have to be rebuilt, which can take a considerable amount of time.

Kopano Core is MAPI based. WebApp, Z-Push and other MAPI based clients (such as Zarafa MAPI client) can be used.

Optional, but highly recommended steps:

Run the daemon as an unprivileged user. Please note this means that the attachements directory needs to be 'chowned'. This can take quite some time.

The socket location has changed to implement support for systemd (also required to run daemons as unpriviledged users.

Also note: you can use the ZCP LDAP scheme with its attributes. Keep in mind that you might need to migrate the schema if new features require schema changes in the future.

Preparations

The ZCP packages will need to be purged in order to install Kopano Core. Make sure you have a working backup of /etc/zarafa before you start. Also note: the github version of python-zarafa is not compatible with python-kopano so remove any previous version of it (usually located in for example /usr/local/lib/python2.7/dist-packages/zarafa)

We recommend that you use our repositories to install/migrate Kopano Core. They are available at https://download.kopano.io/supported/. Use the following examples to configure repositories for your operating system:

Example repository configuration

Please be aware that special characters in the username or password like '!' can cause issues

Installing the packages

You can manually pick the packages you want to install, or install the meta package 'kopano-server-packages'. The meta package will install:

kopano-backup

kopano-dagent

kopano-gateway

kopano-ical

kopano-monitor

kopano-presence

kopano-search

kopano-server

kopano-spooler

kopano-utils

Config file changes

SSL configuration options

In the configuration files server.cfg, ical.cfg and gateway.cfg “ssl_enable_v2” parameter has become obsolete and has to be removed.

The following parameters have to be added to these three files:

server_ssl_protocols = !SSLv2

server_ssl_ciphers = ALL:!LOW:!SSLv2:!EXP:!aNULL

server_ssl_prefer_server_ciphers = no

Services configuration

Most daemons are now started using an unprivileged user by default. If you want to change this (not recommended), edit the configuration files and modify the 'run_as_user' and 'run_as_group' parameters:

‘run_as_user = kopano’

‘run_as_group = kopano’

Check if the user has write access to:

/var/lib/kopano/

/etc/kopano/

/var/log/kopano/

/tmp/

Default socket locations have changed to /var/run/kopano/. All services must use the same socket location, which can be configured in the respective configuration files. For example:

server_socket = /var/run/kopano/server.sock

pid_file = /var/run/kopano/server.pid

Make sure all configuration daemons are configured to use the same user/group combination as well as the same sockets location!

Migration changes

It is highly recommended that you change the new config file instead of copying the Zarafa files

Attachment location

The default location for attachment storage in Kopano is /var/lib/kopano/attachments/. Move any existing attachments to this directory, or alternatively change the option 'attachment_path' in the server.cfg to the location where you previously stored the Zarafa attachments.

If you are running the deamons as an unprivileged user, make sure that the attachments are accessible (read/write) by this user.

SQL database

The Kopano database is compatible with the Zarafa database, there are no changes neccesary. Make sure the correct database name is configured.

Search files

The new default location of the index files is /var/lib/kopano/search/. Make sure there is plenty of disk space available on this filesystem.

Note that if you migrate from a ZCP 7.1.x installations, the kopano-search index format is not compatible with the zarafa-search

If you migrate from ZCP 7.2.x, you can either change the option 'index_path' in the search.cfg or you move the index files to /var/lib/kopano/search

In both cases, make sure the kopano user is able to access the files (read/write)

LDAP

Kopano Core is capable to use the zarafa schema, however it is highly recommended that you import and use the kopano-schema.

If you must use the old schema, then make sure you change '!propmap /etc/zarafa/ldap.propmap.cfg' to '!propmap /etc/kopano/ldap.propmap.cfg' in the ldap.cfg configuration file.

Multiserver

Make sure you change the socket location in the LDAP or Active Directory if you are using a multi server setup

Backup

If you migrate from a ZCP 7.2.1 or lower kopano-backup is not compatible with the old backup files. You will need to recreate backups with the new kopano-backup.

Caching

All the caching values can be copied from the Zarafa server.cfg configuration file.