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
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.
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 a hostname using following command and replace hname with your hostname.
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
Now please enter the IPaddress and hostname at the end of the file then save and exit from the text editor.
You'll need to disable SELinux services for installing Kolab Groupware. You can disable SELinux services temporarily using following command.
You can disable these services completely and for this you'll need to edit configuration file /etc/selinux/config file using any text editor.
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.
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
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:
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
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.
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...
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...