• Get In Touch
May 24, 2017

How to Install Kolab Groupware on CentOS 7

Want your very own server? Get our 1GB memory, Xeon V4, 25GB SSD VPS for £10.00 / month.
Get a Cloud Server

Kolab is a free and open source groupware suite. It is a software groupware solution for Email communications, Events & Appointments, Contacts and more. It supports mixed client environments because of an open storage format, and the use of well-established, standard protocols such as IMAP and SMTP. Some of its features are listed below:

  • Full seamless support of mixed clients environments (Outlook, KDE, Web etc.)
  • Full server side support for ActiveSync and CalDAV, CardDAV and WebDAV
  • Support for Email, Calendar, Address Books, Tasks and File-Cloud
  • Support for KDE with Kontact
  • A web administration interface
  • Configuration data is kept in a LDAP directory
  • Configuration data is kept in a LDAP directory
  • Full support for shared contacts with IMAP ACLs
  • Full support for freebusy handling
  • Support for server side resource management

Prerequisites

You’ll need a CentOS 7 server and and a normal user with root privileges over it to follow this guide. You can switch from non root user to root user using sudo -i command.

System Update

It is recommended to install Kolab Groupware on freshly updated CentOS 7 server so run below given command to upgrade available packages and update your system upto date.

yum -y update

Set hostname

Set a hostname using following command and replace hname with your hostname.

hostnamectl kolab.hname.com

Next, edit the /etc/hosts file using your favorite editor, here we are using nano text editor. If in case you don’t have already installed it then you can install it using yum -y install nano

nano /etc/hosts

Now please enter the IPaddress and hostname at the end of the file then save and exit from the text editor.

192.0.0.0 kolab.hname.com

Disable SELinux

You’ll need to disable SELinux services for installing Kolab Groupware. You can disable SELinux services temporarily using following command.

setenforce 0

You can disable these services completely and for this you’ll need to edit configuration file /etc/selinux/config file using any text editor.

nano /etc/selinux/config

Find the line SELINUX=enforcing and then change it to SELINUX=disabled, save the file and exit from the text editor.

Configure Firewall Services

You’ll need to configure firewall services to allow the ports through the system firewall. So simply run following commands one by one.

firewall-cmd --permanent --add-service=http
firewall-cmd --permanent --add-service=https
firewall-cmd --permanent --add-service=pop3s
firewall-cmd --permanent --add-service=imaps
firewall-cmd --permanent --add-service=smtp
firewall-cmd --permanent --add-service=ldap
firewall-cmd --permanent --add-service=ldaps
firewall-cmd --permanent --add-port=110/tcp
firewall-cmd --permanent --add-port=143/tcp
firewall-cmd --permanent --add-port=587/tcp
firewall-cmd --reload

Install Kolab

Next, add the Kolab groupware repository to the system and you can do so using following command.

wget http://obs.kolabsys.com/repositories/Kolab:/16/CentOS_7/Kolab:16.repo -O /etc/yum.repos.d/Kolab:16.repo

rpm --import https://ssl.kolabsys.com/community.asc

Next, you’ll need to install yum-plugin-priorities package. You can do so using following command.

yum -y install yum-plugin-priorities

Next, you’ll need to give Kolab repository a higher priority then the EPEL repository using the following command.

bash -c 'for f in /etc/yum.repos.d/Kolab*.repo; do echo "priority = 60" >> $f; done'

Now we are ready to install Kolab Groupware, run following command to install it.

yum -y install kolab

Configure Kolab

You’ve installed Kolab Groupware successfully and next you’ll need to configure Kolab Groupware and you’ll have to set a few administaration passwords. Run following command:

setup-kolab

You’ll be asked following questions so please follow the instructions and answer them correctly.

Administrator password: #Provide LDAP admin password for default user 'admin'
Directory Manager password [qhZlb2P9OYubDJv]: #Provide LDAP directory manger password

User [dirsrv]:        #Press enter to use default
Group [dirsrv]:       #Press enter to use default

rackvoucher.com [Y/n]: #Check or provide the domain name, it may not be a full FQDN

dc=rackvoucher,dc=com [Y/n]:          #Press enter

Cyrus Administrator password [Awt7z1O2UTl-HZs]: #Provide Cyrus admin password

Kolab Service password [T_T4ut8pvE_G_Os]:    #Provide Kolab service admin password

What MySQL server are we setting up?
 - 1: Existing MySQL server (with root password already set).
 - 2: New MySQL server (needs to be initialized).
Choice: 2      #Provide choice 2 to initialize MySQL server

MySQL root password [E7FIj_MWGNEVXPF]:  #Provide new MySQL root password

MySQL kolab password [8MYG_Hveb4FPCW3]:  #Provide Kolab DB user password

Timezone ID [UTC]: #Provide appropriate timezone

MySQL roundcube password [iz3gP7sqaBa6Vh6]: #Provide Roundcube DB user password

Web Interface

Open up your favorite web browser and point it to http://YourServerIP/kolab-webadmin . Login with the username cn=Directory Manager and the password of the directory manager set during Kolab Setup. You will be presented with the Kolab Groupware dashboard.

HP_NO_IMG/data/uploads/users/87cc1edd-a495-404e-9f7f-6fe80595e855/1910449487.png” alt=” ” />

Want your very own server? Get our 1GB memory, Xeon V4, 25GB SSD VPS for £10.00 / month.
Get a Cloud Server

Share this Article!

Related Posts

Node.js Authentication – A Complete Guide with Passport and JWT

Node.js Authentication – A Complete Guide with Passport and JWT

Truth be told, it’s difficult for a web application that doesn’t have some kind of identification, even if you don’t see it as a security measure in and of itself. The Internet is a kind of lawless land, and even on free services like Google’s, authentication ensures that abuses will be avoided or at least […]

Node.js and MongoDB: How to Connect MongoDB With Node

Node.js and MongoDB: How to Connect MongoDB With Node

MongoDB is a document-oriented NoSQL database, which was born in 2007 in California as a service to be used within a larger project, but which soon became an independent and open-source product. It stores documents in JSON, a format based on JavaScript and simpler than XML, but still with good expressiveness. It is the dominant […]

Using MySQL with Node.js: A Complete Tutorial

Using MySQL with Node.js: A Complete Tutorial

Although data persistence is almost always a fundamental element of applications, Node.js has no native integration with databases. Everything is delegated to third-party libraries to be included manually, in addition to the standard APIs. Although MongoDB and other non-relational databases are the most common choice with Node because if you need to scale an application, […]

Node.Js Vs Django: Which Is the Best for Your Project

Node.Js Vs Django: Which Is the Best for Your Project

Django and NodeJs are two powerful technologies for web development, both have great functionality, versatile applications, and a great user interface. Both are open source and can be used for free. But which one fits your project best? NodeJs is based on JavaScript, while Django is written in Python. These are two equally popular technologies […]

Nodejs Vs PHP:  Which Works Best?

Nodejs Vs PHP: Which Works Best?

Before getting into the “battle” between Node.js and PHP we need to understand why the issue is still ongoing. It all started with the increased demand for smartphone applications, their success forcing developers to adapt to new back-end technologies that could handle a multitude of simultaneous requests. JavaScript has always been identified as a client-side […]