kolab groupware 2.4 community installation guide en us

80
Kolab Groupware 2.4 Installation Guide The Kolab Groupware Solution Jeroen van Meeuwen

Upload: pratik-mahajan

Post on 14-Oct-2014

665 views

Category:

Documents


9 download

TRANSCRIPT

Page 1: Kolab Groupware 2.4 Community Installation Guide en US

Kolab Groupware 2.4

Installation GuideThe Kolab Groupware Solution

Jeroen van Meeuwen

Page 2: Kolab Groupware 2.4 Community Installation Guide en US

Installation Guide Draft

Kolab Groupware 2.4 Installation GuideThe Kolab Groupware SolutionEdition 1

Author Jeroen van Meeuwen [email protected]

Copyright © 2011 Kolab Systems AG This material may only be distributed subject to the terms andconditions set forth in the GNU Free Documentation License (GFDL), V1.2 or later (the latest versionis presently available at http://www.gnu.org/licenses/fdl.txt).

A short overview and summary of the book's subject and purpose, traditionally no more than oneparagraph long. Note: the abstract will appear in the front matter of your book and will also be placedin the description field of the book's RPM spec file.

Page 3: Kolab Groupware 2.4 Community Installation Guide en US

Draft Draft

iii

Preface v1. Document Conventions ................................................................................................... v

1.1. Typographic Conventions ...................................................................................... v1.2. Pull-quote Conventions ........................................................................................ vi1.3. Notes and Warnings ........................................................................................... vii

2. Feedback ...................................................................................................................... vii2.1. Reporting Bugs in Kolab ..................................................................................... vii2.2. Mailing Lists ....................................................................................................... viii2.3. IRC ................................................................................................................... viii

3. About Kolab Groupware ................................................................................................ viii3.1. Free Software Components ................................................................................ viii3.2. Kolab Groupware Flavors ................................................................................... viii3.3. Supported Platforms and System Requirements .................................................... ix3.4. Kolab Product Series ........................................................................................... ix

I. Kolab Groupware Server 1

1. Preparing the System 31.1. Prerequisites ........................................................................................................ 31.2. Recommendations ................................................................................................ 31.3. Enterprise Linux ................................................................................................... 3

2. Kolab Server 5

3. Installation 73.1. Kolab Server Installation ....................................................................................... 73.2. Repository Configuration ....................................................................................... 7

3.2.1. Installation with APT Packages .................................................................. 73.2.2. Installation with RPM Packages .................................................................. 9

3.3. Full default installation on a single server ............................................................. 143.4. Packagelist ........................................................................................................ 14

4. Configuration 174.1. Pykolab setup utility ............................................................................................ 174.2. Configuration through Puppet .............................................................................. 174.3. Manual Configuration .......................................................................................... 17

4.3.1. LDAP Configuration ................................................................................. 174.3.2. Kolab deamon Configuration .................................................................... 184.3.3. Cyrus-IMAP Configuration (default) ........................................................... 184.3.4. Dovecot-IMAP Configuration (Alternative) .................................................. 194.3.5. MTA Configuration ................................................................................... 204.3.6. Kolab-Webadmin Configuration ................................................................. 214.3.7. Webclient Configuration ........................................................................... 224.3.8. Webclient Database Configuration ............................................................ 22

5. Bootstrapping the Kolab Installation 235.1. Preparing the System for Bootstrapping ............................................................... 235.2. New Kolab Environment ..................................................................................... 245.3. Manual Bootstrap process .................................................................................. 24

6. Server Appendix 276.1. Certificate Authority (CA)-Certificates ................................................................... 27

II. Kolab Groupware Webclients 29

7. Roundcube 317.1. Installing the Database ....................................................................................... 31

Page 4: Kolab Groupware 2.4 Community Installation Guide en US

Installation Guide Draft

iv

7.2. Preparing the Database ...................................................................................... 317.3. Installation .......................................................................................................... 317.4. Configuration ...................................................................................................... 32

8. Horde 338.1. Installing the Database ....................................................................................... 338.2. Preparing the Database ...................................................................................... 33

9. Webclient-Appendix 359.1. Installation of the MySQL-Database ..................................................................... 35

III. Kolab Groupware Desktop-Clients 37

10. Kontact 3910.1. Installation ........................................................................................................ 3910.2. Configuration .................................................................................................... 39

10.2.1. Configuration through the KolabWizard ................................................... 3910.2.2. Manual Configuration of Kontact ............................................................. 39

11. Thunderbird 41

12. Outlook 43

IV. Cyrus IMAP 45

13. Installation of Cyrus IMAP 4713.1. Installation ........................................................................................................ 47

14. Configuration of Cyrus IMAP 49

15. Configuring IMAP 51

16. Securing Cyrus IMAP Communications 53

17. IMAP Partitions 55

18. IMAP Option Reference 57

19. System Configuration Defaults 59

20. Creating a Cyrus Murder Setup 6120.1. Setting up the master update server .................................................................. 61

20.1.1. Choosing the mupdate mode .................................................................. 61

21. Creating an IMAP Backend Server 6321.1. Hooking in a new backend server into a murder setup ........................................ 63

22. Creating an IMAP Frontend Server 6522.1. Hooking in a new frontend server into a murder setup ......................................... 65

A. Revision History 67

Index 69

Page 5: Kolab Groupware 2.4 Community Installation Guide en US

Draft Draft

v

Preface

1. Document ConventionsThis manual uses several conventions to highlight certain words and phrases and draw attention tospecific pieces of information.

In PDF and paper editions, this manual uses typefaces drawn from the Liberation Fonts1 set. TheLiberation Fonts set is also used in HTML editions if the set is installed on your system. If not,alternative but equivalent typefaces are displayed. Note: Red Hat Enterprise Linux 5 and later includesthe Liberation Fonts set by default.

1.1. Typographic ConventionsFour typographic conventions are used to call attention to specific words and phrases. Theseconventions, and the circumstances they apply to, are as follows.

Mono-spaced Bold

Used to highlight system input, including shell commands, file names and paths. Also used to highlightkeycaps and key combinations. For example:

To see the contents of the file my_next_bestselling_novel in your currentworking directory, enter the cat my_next_bestselling_novel command at theshell prompt and press Enter to execute the command.

The above includes a file name, a shell command and a keycap, all presented in mono-spaced boldand all distinguishable thanks to context.

Key combinations can be distinguished from keycaps by the hyphen connecting each part of a keycombination. For example:

Press Enter to execute the command.

Press Ctrl+Alt+F2 to switch to the first virtual terminal. Press Ctrl+Alt+F1 toreturn to your X-Windows session.

The first paragraph highlights the particular keycap to press. The second highlights two keycombinations (each a set of three keycaps with each set pressed simultaneously).

If source code is discussed, class names, methods, functions, variable names and returned valuesmentioned within a paragraph will be presented as above, in mono-spaced bold. For example:

File-related classes include filesystem for file systems, file for files, and dir fordirectories. Each class has its own associated set of permissions.

Proportional Bold

This denotes words or phrases encountered on a system, including application names; dialog box text;labeled buttons; check-box and radio button labels; menu titles and sub-menu titles. For example:

Choose System → Preferences → Mouse from the main menu bar to launch MousePreferences. In the Buttons tab, click the Left-handed mouse check box and click

1 https://fedorahosted.org/liberation-fonts/

Page 6: Kolab Groupware 2.4 Community Installation Guide en US

Preface Draft

vi

Close to switch the primary mouse button from the left to the right (making the mousesuitable for use in the left hand).

To insert a special character into a gedit file, choose Applications → Accessories→ Character Map from the main menu bar. Next, choose Search → Find… fromthe Character Map menu bar, type the name of the character in the Search fieldand click Next. The character you sought will be highlighted in the Character Table.Double-click this highlighted character to place it in the Text to copy field and then

click the Copy button. Now switch back to your document and choose Edit → Pastefrom the gedit menu bar.

The above text includes application names; system-wide menu names and items; application-specificmenu names; and buttons and text found within a GUI interface, all presented in proportional bold andall distinguishable by context.

Mono-spaced Bold Italic or Proportional Bold Italic

Whether mono-spaced bold or proportional bold, the addition of italics indicates replaceable orvariable text. Italics denotes text you do not input literally or displayed text that changes depending oncircumstance. For example:

To connect to a remote machine using ssh, type ssh [email protected] ata shell prompt. If the remote machine is example.com and your username on thatmachine is john, type ssh [email protected].

The mount -o remount file-system command remounts the named filesystem. For example, to remount the /home file system, the command is mount -oremount /home.

To see the version of a currently installed package, use the rpm -q packagecommand. It will return a result as follows: package-version-release.

Note the words in bold italics above — username, domain.name, file-system, package, version andrelease. Each word is a placeholder, either for text you enter when issuing a command or for textdisplayed by the system.

Aside from standard usage for presenting the title of a work, italics denotes the first use of a new andimportant term. For example:

Publican is a DocBook publishing system.

1.2. Pull-quote ConventionsTerminal output and source code listings are set off visually from the surrounding text.

Output sent to a terminal is set in mono-spaced roman and presented thus:

books Desktop documentation drafts mss photos stuff svnbooks_tests Desktop1 downloads images notes scripts svgs

Source-code listings are also set in mono-spaced roman but add syntax highlighting as follows:

package org.jboss.book.jca.ex1;

import javax.naming.InitialContext;

public class ExClient{

Page 7: Kolab Groupware 2.4 Community Installation Guide en US

Draft Notes and Warnings

vii

public static void main(String args[]) throws Exception { InitialContext iniCtx = new InitialContext(); Object ref = iniCtx.lookup("EchoBean"); EchoHome home = (EchoHome) ref; Echo echo = home.create();

System.out.println("Created Echo");

System.out.println("Echo.echo('Hello') = " + echo.echo("Hello")); }}

1.3. Notes and WarningsFinally, we use three visual styles to draw attention to information that might otherwise be overlooked.

Note

Notes are tips, shortcuts or alternative approaches to the task at hand. Ignoring a note shouldhave no negative consequences, but you might miss out on a trick that makes your life easier.

Important

Important boxes detail things that are easily missed: configuration changes that only apply tothe current session, or services that need restarting before an update will apply. Ignoring a boxlabeled 'Important' will not cause data loss but may cause irritation and frustration.

Warning

Warnings should not be ignored. Ignoring warnings will most likely cause data loss.

2. Feedback

We value feedback on our software as well as our documentation. Please find ways to contact us inthis section.

2.1. Reporting Bugs in KolabBug reports can be logged in our Bugzilla issue tracker2. Please bear in mind registration is required.

When reporting a bug, please prepare to provide the following information;

2 https://bugzilla.kolabsys.com

Page 8: Kolab Groupware 2.4 Community Installation Guide en US

Preface Draft

viii

• Your platform, and if applicable, your distribution and the distribution version.

• The version(s) of the Kolab component(s) you are using.

• If a custom version is used, any options that may have specified during the build process.

provide some text on logging a new ticket in our bugzilla, information to provide, etc. Possibly mentionthe life cycle of a product version series.

2.2. Mailing ListsFor users of Kolab software, we run a public mailing list at https://lists.kolab.org/mailman/listinfo/kolab-users. To subscribe to the list, either click the aforementioned link and fill out the informationrequested, or send an email to [email protected].

Development Mailing ListFor developers of Kolab software, as well as general discussion on bugs and patches, we run a publicmailing list at https://lists.kolab.org/mailman/listinfo/kolab-devel. To subscribe to the list and fill out theinformation requested, or send an email to [email protected].

2.2.1. ArchivesThe archives of both the user support and development discussion mailing list are available throughweb archives.

2.3. IRCRefer to irc://irc.freenode.net/kolab here.

3. About Kolab GroupwareKolab is a Groupware Solution for Emails, Appointments, Contacts and more. It supports mixed clientenvironments (Outlook/KDE) because of an open storage format. Any email client speaking standardprotocols can be served.

3.1. Free Software ComponentsTODO: Come on, be a little more verbose...

3.1.1. This documentationDescribe how this documentation can be modified to custom, internal documentation

3.2. Kolab Groupware FlavorsKolab Groupware comes in two major flavors:

1.Kolab (Vanilla)The vanilla flavor of Kolab is ideally suited for general purpose Groupware systems in which nospecialist features are required.

3 mailto:[email protected] mailto:[email protected]

Page 9: Kolab Groupware 2.4 Community Installation Guide en US

Draft Supported Platforms and System Requirements

ix

2.Hosted KolabHosted Kolab is the flavor targeted specifically at hosting providers (ISP, ASP, Cloud) offeringKolab Groupware environments to multiple customers, possibly through multiple resellers.

Furthermore, the Kolab software are divided in a community version, and an enterprise version. Thecommunity version naturally moves forward a little faster and is subject to change a lot more so thenthe enterprise version. The community version of a product series will only become available as anenterprise version after thorough Quality Assurance and Certification of partner products.

3.3. Supported Platforms and System RequirementsKolab Groupware is supported on the following platforms;

• All reasonably recent versions of Linux5, including but not limited to the following distributions, in noparticular order other then alphabetic;

• CentOS6

• Debian7

• Fedora8

• Red Hat Enterprise Linux9

Should your Linux distribution not be listed here, please refer to Section 2, “Feedback” for ways ofcontacting the Kolab Development team.

Obviously, the list is not complete

3.4. Kolab Product SeriesKolab Groupware consists of free software components, each of which are available from variousupstream development and support project organizations, including Linux distributions.

The Kolab Groupware developers, community members and Kolab Systems engineering and supportstaff maintain many of the packages related to Kolab with the Linux distributions through which thosepackages are available.

The Kolab software repositories can therefor include only those software components, or thosespecific versions of software components, that differentiate from what is available in the upstreamLinux distribution software repositories, and possibly recommended or required additional softwarerepositories.

Product series are versioned, each of them created to provide a sustainable stream of updates to theindividual software components included in that product serie.

The convention for Server Product Versioning is subject to the guidelines proposed and accepted asKEP #510.

5 By reasonably recent versions of Linux, we intend to indicate the Kolab project can manage to keep up with the latestdistribution release ear-marked stable.6 http://centos.org7 http://debian.org8 http://fedoraproject.org9 http://redhat.com10 http://wiki.kolab.org/KEP:5

Page 10: Kolab Groupware 2.4 Community Installation Guide en US

Preface Draft

x

3.4.1. Product StreamsTwo different product streams exist, a community edition and an enterprise edition.

The following are consequences of using the community edition of kolab 2.4 (as opposed to theenterprise edition):

1. No debuginfo packages are available, which would be needed in case stack traces need to begenerated for binary compiled programs such as mysql, openldap, cyrus-imapd or php.

2. The packages are not signed, and therefor the authenticity of the packages cannot be verified.

3. The packages are made available through HTTP only, as opposed to HTTPS, and therefor theauthenticity cannot be verified.

4. No builds other then the latest is made available for any package. Rolling back a software updatefoo-1.0-2.el5 to previously installed software version foo-1.0-1.el5 after a failed update is therefornot possible unless a copy of foo-1.0-1.el5 had been preserved.

5. No security errata is sent out.

3.4.2. Repository Stages4 different repository stages exist, each of them indicating the expected level of stability, and point-in-time release.

The release and updates repositories contain the most stable software (community edition) whichis supported (enterprise edition).

Page 11: Kolab Groupware 2.4 Community Installation Guide en US

Draft Draft

Part I. Kolab Groupware Server

Page 12: Kolab Groupware 2.4 Community Installation Guide en US
Page 13: Kolab Groupware 2.4 Community Installation Guide en US

Draft Chapter 1. Draft

3

Preparing the SystemThe installation of Kolab requires you prepare the system for installation.

1.1. PrerequisitesThe installation of Kolab requires one of the following operating system versions:

• Red Hat Enterprise Linux 5, see also Section 1.3, “Enterprise Linux”.

• FIXME: Other supported Operating System versions

1.2. Recommendations• We recommend a x86_64 capable version of the Operating System

1.3. Enterprise Linux1. No user or group with ID 412 may exist on the system prior to the installation of Kolab.

2. No user or group with the name kolab may exist on the system prior to the installation of Kolab.

Page 14: Kolab Groupware 2.4 Community Installation Guide en US

4

Page 15: Kolab Groupware 2.4 Community Installation Guide en US

Draft Chapter 2. Draft

5

Kolab ServerThe Kolab server is built out of the best available Free and Open Source software components,most if not all of which are available through the Linux distribution of your preference. However, suchLinux distribution may not be as up-to-date as one might wish for the Kolab Groupware to provide thelatest and greatest functionality, or may simply have a different update policy from what is typicallyacceptable for a Groupware environment.

The Kolab server consist of the following 6 components, which can be distributed among severalsystems. Each of those components can be installed using the provided meta package.

• Kolab-IMAPThe IMAP server component including a daemon which synchronizes user accounts from LDAP withIMAP mailboxes.

default meta-package:

• kolab-imap

default packages:

• cyrus-imap

• kolab-daemon

optional-packages:

• dovecot-imap

• Kolab-LDAPThe ldap directory component is used for the authentication of users.

default meta-package:

• kolab-ldap

default packages:

• openldap-server

• Kolab-MTAThe MTA including spamfilter, virus-scanner and sasl authentication FIXME ?

default meta-package:

• kolab-mta

default packages:

• postfix

• clamav

• amavis

• TODO kolab-postfix-filters?

Page 16: Kolab Groupware 2.4 Community Installation Guide en US

Chapter 2. Kolab Server Draft

6

• Kolab-WebadminAn administrator webinterface.

default meta-package:

• kolab-webadmin

• Kolab-WebclientAn email webinterface.

default meta-package:

• kolab-webclient

default packages:

• kolab-webclient-roundcube

optional-packages:

• kolab-webclient-horde

• Kolab-Webclient-DatabaseA database for the Kolab-Webclient which stores the settings of the webclient and caches data fromthe imap server. This database can, but does not have to be on the same server as the webclient.

default meta-package:

• kolab-webclient-database

default packages:

• kolab-webclient-database-roundcube

optional-packages:

• kolab-webclient-database-horde

Page 17: Kolab Groupware 2.4 Community Installation Guide en US

Draft Chapter 3. Draft

7

InstallationThe Kolab community provides APT and RPM packages for most commonly used Linux distributions.Please see Section 3.2.1, “Installation with APT Packages” and Section 3.2.2, “Installation with RPMPackages” for more information.

3.1. Kolab Server InstallationTo get a fully working Kolab installation all of the 6 components above need to be installed.

The Kolab community provides APT and RPM packages for most commonly used Linux distributions.To get a fully working Kolab server on a single system, please install the “kolab-groupware” meta-package which will install all components, and run the setup script on a single machine.

The default installation assumes that all components are installed on the same machine.

If you have a distributed deployment or want non default components, please see Section 3.2.1,“Installation with APT Packages” and Section 3.2.2, “Installation with RPM Packages” for moreinformation.

For help with your deployment please refer to the “Deployment Guide”.

3.2. Repository ConfigurationKolab provides packages in extra repositories, therefore these repositories need to be configured first.

3.2.1. Installation with APT PackagesAPT packages are provided for the following GNU/Linux distributions, and distribution versions:

Table 3.1. APT Packages Distribution Support

Distribution Information

Name CodeName Version Architectures

EOS / EOL Date

Debian Lenny (oldstable) 5.0 i386, amd64 February 6th,2012

Debian Squeeze (stable) 6.0 i386, amd64 T.B.D.

Debian Wheezy (testing) 7.0 i386, amd64 T.B.D.

Debian Sid (unstable) N/A i386, amd64 T.B.D.

Ubuntu Lucid 10.04 LTS i386, amd64 T.B.D.

Ubuntu Maverick 10.10 i386, amd64 T.B.D.

Ubuntu Natty - i386, amd64 T.B.D.

3.2.1.1. Debian

1. For Kolab 2.4 software packages for Debian Squeeze, add the following two lines to /etc/apt/sources.list:

deb http://mirror.kolabsys.com/pub/debian/kolab-2.4/ squeeze release updatesdeb-src http://mirror.kolabsys.com/pub/debian/kolab-2.4/ squeeze release updates

Page 18: Kolab Groupware 2.4 Community Installation Guide en US

Chapter 3. Installation Draft

8

Updates in Testing Phase and Packages in Development

Optionally, enable the updates-testing and development components for newer, butless stable packages.

For other versions of the Debian distribution, please replace squeeze with the correspondingdistribution codename.

Debian Volatile (Updates) Repositories

It is critically important to consider also enabling the so-called volatile repository for yourDebian version, to enable updates for components such as clamav.

To enable the volatile repository for Debian Lenny, include the following line in /etc/apt/sources.list:

deb http://volatile.debian.org/debian-volatile stable/volatile main

2. To ensure the Kolab packages have priority over the Debian packages, such as must bethe case for PHP as well as Cyrus IMAP, please make sure the APT preferences pin themirror.kolabsys.com origin as a preferred source. Put the following in /etc/apt/preferences:

Package: *Pin: origin mirror.kolabsys.comPin-Priority: 501

3. Update the repository metadata:

# apt-get update

4. Start the installation of the base package as follows:

# aptitude install kolabd

5. When asked to confirm you want to install the package and its dependencies, press Enter.

6. When asked to confirm you want to continue installing the packages of which the integrity norsource can be securely verified, press y then Enter.

3.2.1.2. Ubuntu

1. For Kolab 2.4 software packages for Ubuntu Lucid, add the following two lines to /etc/apt/sources.list:

Page 19: Kolab Groupware 2.4 Community Installation Guide en US

Draft Installation with RPM Packages

9

deb http://mirror.kolabsys.com/pub/ubuntu/kolab-2.4/ lucid release updatesdeb-src http://mirror.kolabsys.com/pub/ubuntu/kolab-2.4/ lucid release updates

For other versions of the Ubuntu distribution, please replace lucid with the correspondingdistribution codename.

2. To ensure the Kolab packages have priority over the Ubuntu packages, such as must bethe case for PHP as well as Cyrus IMAP, please make sure the APT preferences pin themirror.kolabsys.com origin as a preferred source. Put the following in /etc/apt/preferences:

Package: *Pin: origin mirror.kolabsys.comPin-Priority: 501

3.2.1.3. Troubleshooting the APT Package Manager

3.2.1.3.1. Broken PackagesIf you get an error similar to, for example:

test90-1:~# apt-get install kolabdReading package lists... DoneBuilding dependency treeReading state information... DoneSome packages could not be installed. This may mean that you haverequested an impossible situation or if you are using the unstabledistribution that some required packages have not yet been createdor been moved out of Incoming.The following information may help to resolve the situation:

The following packages have unmet dependencies: kolabd: Depends: postfix (>= 2.4) but it is not going to be installed Depends: postfix-ldap (>= 2.4) but it is not going to be installedE: Broken packages

The error is not caused by broken packages, but a broken package manager that cannot install eximand postfix in parallel.

SolutionFirst remove any non-postfix MTA you may have installed, which in a default Debian installation isprobably exim.

To remove exim, execute the following with superuser privileges:

# apt-get remove exim4 exim4-base exim4-config exim4-daemon-light

Then continue installing Kolab:

# aptitude install kolabd

3.2.2. Installation with RPM PackagesRPM packages are being provided for the following Linux distributions and versions:

Page 20: Kolab Groupware 2.4 Community Installation Guide en US

Chapter 3. Installation Draft

10

Table 3.2. RPM Packages Distribution Support

Distribution Information

Name CodeName Version Architectures

EOS / EOL Date

CentOS - 5 i386, amd64 ApproximatelyQ1, 2014

CentOS - 6 i386, amd64 ApproximatelyQ4, 2017

Fedora Laughlin 14 i386, amd64 Q4, 2011

Fedora Lovelock 15 i386, amd64 Q2, 2012

Red HatEnterprise Linux

Tikanga 5 i386, amd64 ApproximatelyQ1, 2014

Red HatEnterprise Linux

Santiago 6 i386, amd64 ApproximatelyQ4, 2017

3.2.2.1. PrerequisitesBefore the installation, it is necessary to install the configuration for the Kolab software repositories.

3.2.2.1.1. CentOSFor full instructions on installing Kolab Groupware on CentOS, please refer to the instructions inSection 3.2.2.1.3, “Red Hat Enterprise Linux”.

Disable 'addons' and 'extras' repositories

Please be aware that on CentOS, you will need to disable the 'addons' and 'extras' repositories,as they contain packages not part of the Enterprise Linux base operating system.

The disable these repositories, edit /etc/yum.repos.d/CentOS-Base.repo and append asetting enabled=0 to sections [addons] and [extras], or delete the sections entirely.

3.2.2.1.2. FedoraTo install Kolab Groupware on Fedora, additional Kolab Groupware software repositories are required.

Procedure 3.1. Installing the Kolab Groupware repositories for Fedora• Depending on the version of Fedora, install the following package:

• TODO

3.2.2.1.3. Red Hat Enterprise LinuxThe EPEL1 repository is required for Kolab Groupware on Red Hat Enterprise Linux. Install the EPELrepository using the following procedure:

1 http://fedoraproject.org/wiki/EPEL

Page 21: Kolab Groupware 2.4 Community Installation Guide en US

Draft Installation with RPM Packages

11

Procedure 3.2. Installing the epel-release Package1. Depending on the version of Red Hat Enterprise Linux, install the package as it is listed on the

following page:

• Enterprise Linux 52 (Tikanga)

• Enterprise Linux 63 (Santiago)

2. Install this package using the following command:

# wget http://url/to/rpm# yum localinstall --nogpgcheck /path/to/rpm

The Kolab software repositories for Red Hat Enterprise Linux ship two so-called -release packages:

1. kolab-2.4-community-release

Depending on the version of Red Hat Enterprise Linux, find the -release package at:

• Red Hat Enterprise Linux 5 (Tikanga)4

• Red Hat Enterprise Linux 6 (Santiago)5

2. kolab-2.4-community-release-development

You can install the kolab-2.4-community-release-development package using YUM,after having installed the kolab-2.4-community-release package;

# yum install kolab-2.4-community-release-development

Stable SoftwareStable software, versions of packages deemed ready for general availability and productionenvironments are distributed through two repositories, release and updates. These repositoriesare configured on the system, and enabled by default, by installing the kolab-2.4-community-release package;

Stable Software Currently in TestingThe kolab-2.4-community-release package also installs a repository through which upcomingupdates currently in their testing phase are distributed. This repository is called updates-testing, andis not enabled by default. Through Kolab Systems and/or community support channels, you maybe asked to test an update distributed through the updates-testing repository to see if it fixes a bugyou have reported. You would then, typically, temporarily enable the updates-testing repository bysupplying the --enablerepo=kolab-2.4-updates-testing command-line option to YUM,overriding the system configuration file setting.

2 http://download.fedora.redhat.com/pub/epel/5/i386/repoview/epel-release.html3 http://download.fedora.redhat.com/pub/epel/6/i386/repoview/epel-release.html4 http://mirror.kolabsys.com/pub/redhat/kolab-2.4/el5/release/i386/repoview/kolab-2.4-community-release.html5 http://mirror.kolabsys.com/pub/redhat/kolab-2.4/el6/release/i386/repoview/kolab-2.4-community-release.html

Page 22: Kolab Groupware 2.4 Community Installation Guide en US

Chapter 3. Installation Draft

12

Software Currently in DevelopmentSoftware that is currently in development for the product series you are running (in this case, series2.4) is available through the so-called development repository. This software is considered unstable.By default, you will not have the package installed that provides the configuration for this repository;the kolab-2.4-community-release-development package. Installing this package will causethe development repository to be enabled by default.

Procedure 3.3. Installing the kolab-2.4-community-release Package1. Depending on the version of Red Hat Enterprise Linux, install the package as it is listed on the

following page:

• Enterprise Linux 56

Enterprise Linux 57

• Enterprise Linux 68

2. Install this package using the following command:

# wget http://url/to/rpm# yum localinstall --nogpgcheck /path/to/rpm

3. To test the installation of the repository configuration, please execute:

# yum repolist(...snip...)kolab-2.4kolab-2.4-updates(...snip...)

Output Abbreviated

Note that the output is abbreviated for clarity. The output may actually include the descriptionof the repository, and the number of packages available.

Optionally, to see which repositories have been configured though not enabled, also execute:

# yum repolist all(...snip...)kolab-2.4kolab-2.4-debuginfokolab-2.4-sourcekolab-2.4-updateskolab-2.4-updates-debuginfokolab-2.4-updates-sourcekolab-2.4-updates-testingkolab-2.4-updates-testing-debuginfokolab-2.4-updates-testing-source

6 http://mirror.kolabsys.com/pub/redhat/kolab-2.4/el5/release/i386/repoview/kolab-2.4-community-release.html7 http://mirror.kolabsys.com/pub/redhat/kolab-2.4/el5/development/x86_64/8 http://mirror.kolabsys.com/pub/redhat/kolab-2.4/el6/release/i386/repoview/kolab-2.4-community-release.html

Page 23: Kolab Groupware 2.4 Community Installation Guide en US

Draft Installation with RPM Packages

13

(...snip...)

Output Abbreviated

Note that the output is abbreviated for clarity. The output may actually include the descriptionof the repository, whether the repository is enabled by default or not, and the number ofpackages available in each repository as well as the total number of packages.

4. At this stage of the Kolab Groupware 2.4 development and release cycle, you may require toinstall the development repository as well. To do so, execute the following command:

# yum -y install kolab-2.4-community-release-development

Development Repository Contains Unstable Software

The development repository contains unstable software, in that new versions of the softwarecan be released through the development repository quickly, for testing purposes, beforethey are approved to the updates-testing stage.

Please consider using yum-priorities as described in Section 3.2.2.1.4, “Using yum-priorities toAvoid Package Conflicts”. This is necessary for Enterprise Linux releases prior to Enterprise Linux 6only.

3.2.2.1.4. Using yum-priorities to Avoid Package ConflictsSince any given package may, at any time, be or become available to the system through boththe Kolab repositories as well as through the regular distribution repositories, to avoid the risk ofswitching back and forth between the two different versions continuously, by mistake or by accident,we recommend you use the following procedure including employing YUM repository priorities toeliminate the risk of running in such problems in the future.

Note

This is necessary only for Enterprise Linux 5.

Procedure 3.4. Installing and Configuring YUM priorities1. The yum-priorities is available from the package repository9. Please install it:

9 http://fedoraproject.org/wiki/EPEL

Page 24: Kolab Groupware 2.4 Community Installation Guide en US

Chapter 3. Installation Draft

14

# yum install yum-priorities

2. The repositories that have been installed using the kolab-2.4-community-releasepackage(s) have a pre-configured priority of 50. The default repository priority is 99. This willset the correct priorities, unless you have repositories configured other than the base operatingsystem repositories (not including 'addons' and 'extras' on CentOS platforms), EPEL and theKolab Groupware repositories. Should the system happen to already make use of YUM priorities,please make sure the Kolab repositories have the appropriate priority.

3.3. Full default installation on a single serverIf you want a default installation with all components on a single server, pleas run:

# yum install kolab

This meta-package will install all needed components.

Once the installation is complete, you can continue with the configuration in the next chapter.

Alternatively you can install each component individually, which will give you the same result.

3.4. PackagelistThe following packages are available to install the individual components. Please use yourdistributions package management system to install them.

The default meta-package will install the default component. The alternative package is an alternativeto the default component. Optional packages provide extra functionality which is not needed for astandard installation.

Table 3.3. Packages

Package List

Package default meta-package

alternativepackage

optionalpackages

PackageDescription

Complete Server kolab-groupware-server

- - A meta packageto installall defaultcomponents.

LDAP kolab-ldap - - The LDAPcomponent(openldap bydefault).

IMAP kolab-imap kolab-imap-dovecot

- The IMAPcomponent (cyrusby default).

MTA kolab-mta - - The MTAcomponent(postfix bydefault).

Webadmin kolab-webadmin - - -

Page 25: Kolab Groupware 2.4 Community Installation Guide en US

Draft Packagelist

15

Package List

Package default meta-package

alternativepackage

optionalpackages

PackageDescription

Webclient-Database

kolab-webclient-database

- - -

Webclient kolab-webclient - - -

Page 26: Kolab Groupware 2.4 Community Installation Guide en US

16

Page 27: Kolab Groupware 2.4 Community Installation Guide en US

Draft Chapter 4. Draft

17

Configuration

4.1. Pykolab setup utilityTo setup each component the pykolab utilty can be used.

Once the installation is complete, you can configure all components using:

# /opt/kolab/bin/kolab-setup

If you ran the script successfully the installation and configuration of the server is complete and youcan move on to the next chapter.

Mixing automated and manual configuration

It is also possible to configure only certain components using the pykolab utility, and configuratingothers manually.

4.2. Configuration through PuppetTODO move to another guide? Assuming that you have an existing Puppet environment, you canclone the kolab puppet module:

$ git clone git://git.puppetmanaged.org/puppet/kolab

4.3. Manual ConfigurationIf you cannot use the pykolab utility for some reason, all configurations can also be made manually.In the following the minimum amount of configuration needed to get a fully working single serverinstallation is described. This will give you the same result as using the pykolab utility.

4.3.1. LDAP Configuration/etc/openldap/slapd.conf

Update all example.org distinguished names.

certificates

TLSCertificateFile /etc/pki/tls/certs/host.example.org.crt

TLSCertificateKeyFile /etc/pki/tls/certs/host.example.org.key

rootDSE

rootDSE /path/to/rootDSE.ldif

Page 28: Kolab Groupware 2.4 Community Installation Guide en US

Chapter 4. Configuration Draft

18

Specify the name of an LDIF(5) file containing user defined attributes for the root DSE.These attributes are returned in addition to the attributes normally produced by slapd.TODO: this is normally shipped as a default config file

For detailed instructions for the manual setup please see:

• OpenLDAP

4.3.2. Kolab deamon ConfigurationTODO: kolabd probably also needs a configuration file?

4.3.3. Cyrus-IMAP Configuration (default)/etc/imapd.conf

servername

servername: example.org

This is the hostname visible in the greeting messages of the POP, IMAP and LMTPdaemons. If it is unset, then the result returned from gethostname(2) is used.

admin

admin: user1 user2

The list of userids with administrative rights. Separate each userid with a space. Sitesusing Kerberos authentication may use separate "admin" instances.

Note that accounts used by users should not be administrators. Administrativeaccounts should not receive mail. That is, if user "jbRo" is a user reading mail, heshould not also be in the admins line. Some problems may occur otherwise, mostnotably the ability of administrators to create top-level mailboxes visible to users, butnot writable by users.

ldap_base

ldap_base: dc=example,dc=org

Contains the LDAP base dn for the LDAP ptloader module

ldap_bind_dn

ldap_bind_dn: cn=nobody,cn=internal,dc=example,dc=org

Bind DN for the connection to the LDAP server (simple bind). Do not use foranonymous simple binds

ldap_password

ldap_password: LDAPpassword

Password for the LDAP server.

Page 29: Kolab Groupware 2.4 Community Installation Guide en US

Draft Dovecot-IMAP Configuration (Alternative)

19

ldap_group_base

ldap_group_base: ou=Groups,dc=example,dc=org

LDAP base dn for ldap_group_filter.

ldap_member_base

ldap_member_base: ou=People,dc=example,dc=org

LDAP base dn for ldap_member_filter.

tls-cert

tls_cert_file: /etc/pki/tls/certs/host.example.org.cert

File containing the certificate presented for server authentication during STARTTLS. Avalue of "disabled" will disable SSL/TLS.

tls_key_file: /etc/pki/tls/private/host.example.org.key

File containing the private key belonging to the server certificate. A value of "disabled"will disable SSL/TLS.

tls_ca_file: /etc/pki/tls/certs/host.example.org_ca.crt

File containing one or more Certificate Authority (CA) certificates.

TLS Certificates

TODO: note on generating a ca and intermediate ca and servercertificates, add to that note the multi-valued cn attribute for webservers that are tcp/ip load-balanced

For detailed instructions for the manual setup please see:

• Part IV, “Cyrus IMAP”

4.3.4. Dovecot-IMAP Configuration (Alternative)/etc/dovecot.conf

TODO placeholder

placeholder replacable

Comment.

Page 30: Kolab Groupware 2.4 Community Installation Guide en US

Chapter 4. Configuration Draft

20

Detailed Instructions

For detailed instructions for the manual setup please see:

• Dovecot-IMAP

4.3.5. MTA Configuration/etc/postfix/main.cf

The Postfix main.cf configuration file specifies a very small subset of all the parameters that control theoperation of the Postfix mail system. Parameters not explicitly specified are left at their default values.

tls-cert

smtpd_tls_cert_file = /etc/pki/tls/certs/host.example.org.cert

File with the Postfix SMTP server RSA certificate in PEM format. This file may alsocontain the Postfix SMTP server private RSA key.

smtpd_tls_key_file = /etc/pki/tls/private/host.example.org.key

File with the Postfix SMTP server RSA private key in PEM format. This file maybe combined with the Postfix SMTP server RSA certificate file specified with$smtpd_tls_cert_file. The private key must be accessible without a pass-phrase, i.e. itmust not be encrypted. File permissions should grant read-only access to the systemsuperuser account ("root"), and no access to anyone else.

SASL related configurations

Depending on the used IMAP server the SASL related configs must be replaced. See PostfixSASL documentation1 for more info.

SASL with Cyrus-IMAP

cyrus_sasl_config_path = /etc/sasl2/

smtpd_sasl_path = smtpd

smtpd_sasl_type = cyrus

SASL with Dovecot-IMAP

1 http://www.postfix.org/SASL_README.html#server_sasl

Page 31: Kolab Groupware 2.4 Community Installation Guide en US

Draft Kolab-Webadmin Configuration

21

smtpd_sasl_path = private/auth

smtpd_sasl_type = dovecot

Manpage

For further info see man 5 postconf

/etc/postfix/master.cf

The master.cf configuration file defines how a client program connects to a service, and what daemonprogram runs when a service is requested. TODO: configure kolabfilter first? Adjust the path to theconfig file of /etc/kolab/kolabfilter.conf

Manpage

man 5 master

/etc/postfix/ldap/mydestination.cf

Used for an ldap lookup of the mydestination parameter in main.cf.

/etc/postfix/ldap/local_recipient_maps.cf

Used for an ldap lookup of the local_recipient_maps parameter in main.cf

/etc/postfix/ldap/virtual_alias_maps.cf

/etc/postfix/ldap/virtual_alias_maps_mailenabled_distgroups.cf

/etc/postfix/ldap/virtual_alias_maps_mailenabled_dynamic_distgroups.cf

Used for an ldap lookup of the virtual_alias_maps parameter in main.cf

Adjust example.org domain names

Adjust the example.org rootDNs and domain names in all these files.

For detailed instructions for the manual setup please see:

• MTA

4.3.6. Kolab-Webadmin Configuration/path/to/file

Page 32: Kolab Groupware 2.4 Community Installation Guide en US

Chapter 4. Configuration Draft

22

title

var = value

blabla

For detailed instructions for the manual setup please see:

• Webadmin

4.3.7. Webclient Configuration• how to configure the webserver to show the web interface over SSL only

For detailed instructions for the manual setup please see:

• Webclient

4.3.8. Webclient Database ConfigurationThe Webclient-Database needs a mysql server installation, which should have been installed as adependency of the package.

4.3.8.1. Configuration of the MySQL server for the Horde DatabaseThe following procedure ...

For detailed instructions for the manual setup please see:

• Horde-Webclient-Database

Page 33: Kolab Groupware 2.4 Community Installation Guide en US

Draft Chapter 5. Draft

23

Bootstrapping the Kolab InstallationVarious scenarios require various installation procedures.

Infrastructure Matters

The infrastructure around the Kolab environment matters. The system's hostname, Fully QualifiedDomain Name (FQDN) and other infrastructural aspects impact the installation procedure as wellas the resulting runtime environment. The Deployment Guide has more details.

5.1. Preparing the System for BootstrappingPreparing the system for bootstrapping it requires any services that the Kolab Groupware is going tocreate, maintain and/or manage need to be shut down prior to bootstrapping.

The following ports are being checked for running services, in numeric order:

1. 24

2. 25

3. 80

4. 110

5. 143

6. 443

7. 389

8. 465

9. 587

10. 636

11. 993

12. 995

13. 2000

14. 2003

15. 9999

16. 10024

17. 10025

18. 10026

Page 34: Kolab Groupware 2.4 Community Installation Guide en US

Chapter 5. Bootstrapping the Kolab Installation Draft

24

Identifying blocked ports

If the process fails due to running services and also

# /usr/sbin/kolabsrv rc all stop

does not help, the ports can be checked using:

# lsof -Pnl +M -i4

on an IPv4 network and

# lsof -Pnl +M -i6

for iPv6. Alternatively

# netstat -tulpn

should give you the same info. Stop all services running on one of the aforementioned ports:

# /etc/rc.d/init.d/service stop

5.2. New Kolab EnvironmentIssue the following command to bootstrap a new Kolab environment:

# kolabctl start

This will start all needed services and you kolab environemt is usable now.

Congratulations! You have finished the installation of you kolab groupware server.

5.3. Manual Bootstrap processInstead of using the kolabctl utility, the services can also be started manually

Ensure that ports are free

Please ensure first that all aforementioned ports are free

The following services need to be started in this order (the order is mandatory). If you did not use thedefault components (i.e. dovecot instead of cyrus), you will have to adjust the commands accordinglyaccordingly.

Page 35: Kolab Groupware 2.4 Community Installation Guide en US

Draft Manual Bootstrap process

25

Services to start• LDAP

# /etc/init.d/ldap start

• SASL

# /etc/init.d/saslauthd start

• Amavis

# /etc/rc.d/init.d/amavisd start

• Clamav

# /etc/rc.d/init.d/clamd.amavisd start

• cyrus-IMAP

# /etc/rc.d/init.d/cyrus-imapd start

• Postfix

# /etc/rc.d/init.d/postfix start

• Kolabd

# /etc/init.d/kolabd start

• HTTP Server

# /etc/init.d/httpd start

Page 36: Kolab Groupware 2.4 Community Installation Guide en US

26

Page 37: Kolab Groupware 2.4 Community Installation Guide en US

Draft Chapter 6. Draft

27

Server Appendix

6.1. Certificate Authority (CA)-CertificatesKolab stores the CA-Certificates under the following locations:

Certificate: /etc/pki/tls/certs/host.example.org.cert

Private Key: /etc/pki/tls/private/host.example.org.key

Certificate Authority (CA) certificates: /etc/pki/tls/certs/host.example.org_ca.crt

The keys are all in the pem format.

If you already have certificates for the Kolab server, you can copy them to the above locations.

If you don't have certificates, you can generate them using:

Todo: -use pykolab to generate the certificates? -install package with the /usr/share/kolab/scripts/kolab_ca.sh scripts -generate and install cert use /etc/pki/tls/certs/Makefile from package openssl togenerate certificates?

Page 38: Kolab Groupware 2.4 Community Installation Guide en US

28

Page 39: Kolab Groupware 2.4 Community Installation Guide en US

Draft Draft

Part II. Kolab Groupware Webclients

Page 40: Kolab Groupware 2.4 Community Installation Guide en US
Page 41: Kolab Groupware 2.4 Community Installation Guide en US

Draft Chapter 7. Draft

31

RoundcubeRoundcube is the official Kolab-Webclient. Roundcube is provided trough the Kolab repositories. Seesect-Installation_Guide-Installation-Repository_Configuration

7.1. Installing the DatabaseRoundcube needs a database which is provided by the kolab-webclient-database package

# yum install kolab-webclient-database

7.2. Preparing the DatabaseRoundcube needs a MySQL database, which was installed as a dependency of the kolab-webclient-database package. Please refer to sect-Installation_Guide-Appendix-MySQL-Database if you have notalready installed the database.

The MySQL database needs to be populated with all tables relevant for roundcube.

1. open the mysql shell with

# mysql --user=root --password=MYSQLRootPassword

2. create the table with:

mysql> CREATE DATABASE roundcubemail;

mysql> GRANT ALL PRIVILEGES ON roundcubemail.* TO roundcube@localhost IDENTIFIED BY 'MYSQLRoundcubePassword';

mysql> FLUSH PRIVILEGES;

3. prepare the db with

# mysql --user=roundcube --password=MYSQLRoundcubePassword roundcubemail > /usr/share/doc/roundcubemail-0.6/SQL/

TODO the above SQL directory should be part of a roundcube-database package

7.3. InstallationTo install the complete Roundcubemail including kolab plugins:

# yum install roundcubemail-kolab

The following packages must be installed first: php-pear-MDB2-Driver-mysql.noarch

when this error occurs in /var/log/roundcubemail/errors: 06-Sep-2011 20:32:56 +0200]: DBError: unable to find package 'MDB2_Driver_mysql' file 'MDB2/Driver/mysql.php' in /usr/share/roundcubemail/program/include/rcube_mdb2.php on line 102 (GET /roundcubemail/) [06-Sep-201120:32:56] MDB2 Error: not found (-4): unable to find package 'MDB2_Driver_mysql' file 'MDB2/Driver/mysql.php'

Page 42: Kolab Groupware 2.4 Community Installation Guide en US

Chapter 7. Roundcube Draft

32

also missing: yum install php-pear-Mail-Mime.noarch

configure drafts folder, otherwise saved drafts are lost

7.4. Configurationadjust /etc/roundcubemail/db.inc.php to match the password set above(MYSQLRoundcubePassword).

Adjust /etc/httpd/conf.d/roundcubemail.conf to allow access from all desired hosts.

/etc/httpd/conf.d/roundcubemail.conf /etc/logrotate.d/roundcubemail /etc/roundcubemail/acl.inc.php /etc/roundcubemail/db.inc.php /etc/roundcubemail/main.inc.php /etc/roundcubemail/managesieve.inc.php /etc/roundcubemail/password.inc.php /etc/roundcubemail/calendar.inc.php /etc/roundcubemail/kolab.inc.php /etc/roundcubemail/ldap_authentication.inc.php

Configuring roundcube plugins: $rcmail_config['plugins'] = array( 'acl', 'calendar','redundant_attachments', 'kolab_core', 'kolab_addressbook', 'kolab_folders', 'managesieve','newmail_notifier', ); Calendar plugin: $rcmail_config['calendar_driver'] = "kolab";

Page 43: Kolab Groupware 2.4 Community Installation Guide en US

Draft Chapter 8. Draft

33

Horde

8.1. Installing the DatabaseHorde needs a database which is provided by the kolab-webclient-database package

# yum install kolab-webclient-database

8.2. Preparing the DatabaseHorde needs a MySQL database, which was installed as a dependency of the kolab-webclient-database package. Please refer to sect-Installation_Guide-Appendix-MySQL-Database if you have notalready installed the database.

Procedure 8.1. Configuring the Horde Database1. If you have not already installed mysql, please do so according to sect-Installation_Guide-

Appendix-MySQL-Database

2. Create the horde database:

# mysql -p -e 'CREATE DATABASE horde;'

3. Create the horde user and grant all privileges to the horde database to that horde user:

# mysql -p -e 'GRANT ALL PRIVILEGES on `horde`.* TO `horde`@`localhost` IDENTIFIED BY "YourPassword";'

Page 44: Kolab Groupware 2.4 Community Installation Guide en US

34

Page 45: Kolab Groupware 2.4 Community Installation Guide en US

Draft Chapter 9. Draft

35

Webclient-Appendix

9.1. Installation of the MySQL-Database

# yum install mysql mysql-sever

If you already had mysql installed you will need to update it to the version provided in the kolabrepositories.

# service mysqld start

If the install script failed to create the mysql user you can create it using

# /usr/sbin/useradd -g mysql -M -o -r -d /var/lib/mysql -s /bin/bash -c "MySQL Server" -u 27 mysql > /dev/null

in the end there should be a mysql user in a mysql group (check with 'id mysql' if the service fails tostart with an error like:

[ERROR] /usr/libexec/mysqld: Can't create/write to file '/var/run/mysqld/mysqld.pid' (Errcode: 13)

in /var/log/mysqld.log fix it with:

# chmod g+w /var/run/mysqld/

Set a new root password using

# /usr/bin/mysqladmin -u root password MYSQLRootPassword

Procedure 9.1. Configuring the Horde Database1. Configure the mysqld service to start on boot (runlevels 2 through 5):

chkconfig mysqld on

2. Edit /etc/my.cnf, and execute the following edits:

1. Set old_passwords to 0.

2. Make sure the InnoDB storage engine is enabled, by providing the MySQL server with thebinary log settings:

# Make sure all logs are flushed on shutdowninnodb_fast_shutdown=0

innodb_file_per_tableinnodb_data_file_path = ibdata1:128M:autoextend

Page 46: Kolab Groupware 2.4 Community Installation Guide en US

Chapter 9. Webclient-Appendix Draft

36

The Size Values are Defaults

Adjust the default size values as shown in this step of the procedure to your needs asappropriate.

3. Start the MySQL server for the first time:

# service mysqld start

Initializing MySQL database: Installing MySQL system tables...OKFilling help tables...OK

To start mysqld at boot time you have to copysupport-files/mysql.server to the right place for your system

PLEASE REMEMBER TO SET A PASSWORD FOR THE MySQL root USER !To do so, start the server, then issue the following commands:/usr/bin/mysqladmin -u root password 'new-password'/usr/bin/mysqladmin -u root -h test90-2.test90.kolabsys.com password 'new-password'

Alternatively you can run:/usr/bin/mysql_secure_installation

which will also give you the option of removing the testdatabases and anonymous user created by default. This isstrongly recommended for production servers.

See the manual for more instructions.

You can start the MySQL daemon with:cd /usr ; /usr/bin/mysqld_safe &

You can test the MySQL daemon with mysql-test-run.plcd mysql-test ; perl mysql-test-run.pl

Please report any problems with the /usr/bin/mysqlbug script!

The latest information about MySQL is available on the web athttp://www.mysql.comSupport MySQL by buying support/licenses at http://shop.mysql.com [ OK ]Starting MySQL: [ OK ]

4. Run the initial configuration and securing, and follow the instructions:

# /usr/bin/mysql_secure_installation

Page 47: Kolab Groupware 2.4 Community Installation Guide en US

Draft Draft

Part III. Kolab GroupwareDesktop-Clients

Page 48: Kolab Groupware 2.4 Community Installation Guide en US
Page 49: Kolab Groupware 2.4 Community Installation Guide en US

Draft Chapter 10. Draft

39

KontactKontact is the offical KDE PIM client, consisting of an email client (KMail) , an address book(KAddressbook) and an Organizer (KOrganizer). Kontact is part of the KDE Software Compilation.

10.1. InstallationKontact is available on all major linux distributions, and can be installed trough the native packagemanagement system. While the standard version provides all features, Kolab maintains enterpriseversions for improved stability.

To install the complete Kontact suite:

# yum install kontact

alternatively each component can be installed individually.

10.2. ConfigurationThe synchronisation with the Kolab Groupware server can either be configured manually or with theKolabwizard.

10.2.1. Configuration through the KolabWizardThe KolabWizard will guide you trough, the setup process step by step. If you experience anyproblems please follow the Manual Configuration.

10.2.2. Manual Configuration of Kontact

Page 50: Kolab Groupware 2.4 Community Installation Guide en US

40

Page 51: Kolab Groupware 2.4 Community Installation Guide en US

Draft Chapter 11. Draft

41

Thunderbirdpara

Page 52: Kolab Groupware 2.4 Community Installation Guide en US

42

Page 53: Kolab Groupware 2.4 Community Installation Guide en US

Draft Chapter 12. Draft

43

Outlookpara

Page 54: Kolab Groupware 2.4 Community Installation Guide en US

44

Page 55: Kolab Groupware 2.4 Community Installation Guide en US

Draft Draft

Part IV. Cyrus IMAP

Instructions on Using CyrusIMAP as the Kolab IMAP Server

This part of the Kolab 2.4 Installation Manual applies to installing, configuring, managing, upgrading,migrating and tweaking the Cyrus IMAP component of the Kolab Groupware Solution.

Page 56: Kolab Groupware 2.4 Community Installation Guide en US
Page 57: Kolab Groupware 2.4 Community Installation Guide en US

Draft Chapter 13. Draft

47

Installation of Cyrus IMAP

Kolab Systems Repository ConfigurationMake sure you have the Kolab Systems software repositories configured properly on the system,before executing any of the following commands. For more information on configuring the KolabSystems software repositories, please refer to Section 3.2, “Repository Configuration”.

13.1. InstallationThe package name for Cyrus IMAP is kolab-cyrus-imapd.

Installation Instructions for APT-based SystemsTo install Cyrus IMAP on APT-based systems such as Debian and Ubuntu Long-Term Support,execute the following command;

# apt-get -y install kolab-cyrus-imapd

Installation Instructions for RPM-based SystemsTo install Cyrus IMAP on RPM-based systems such as Fedora, Red Hat, CentOS and Scientific Linux,execute the following command;

# yum -y install kolab-cyrus-imapd

kolab-cyrus-imapd will be installed on the system, including any software Cyrus IMAP depends on.

The service cyrus-imapd will not yet be started, as you require configuration first.

TODO: We can't automatically configure the software; we don't know where the configuration shouldcome from and any hit is a lucky hit. We also don't know what the system is intended for. Nor can wefigure such out. Maybe develop and contruct in the Kolab Systems packaging a means for Cyrus IMAPto in fact be automatically configured using a slipstream command, so that the next step is to verify,not configure.

Page 58: Kolab Groupware 2.4 Community Installation Guide en US

48

Page 59: Kolab Groupware 2.4 Community Installation Guide en US

Draft Chapter 14. Draft

49

Configuration of Cyrus IMAPThe following configuration files are installed on the system:

• /etc/cyrus.confConfigure which services Cyrus IMAP is to offer, using /etc/cyrus.conf. By default, POP andIMAP services have both been enabled for normal (plaintext) only, as you require a certificate forTLS and SSL configurations. Please refer to Chapter 16, Securing Cyrus IMAP Communications formore details if you seek to secure communications.

• /etc/imapd.confThe behaviour of Cyrus IMAP is controlled using /etc/imapd.conf. Please refer to Chapter 15,Configuring IMAP for standard configurations, and Chapter 18, IMAP Option Reference for a list ofoptions.

• /etc/imapd.annotations.conf/etc/imapd.annotations.conf contains the Kolab annotations for use with the KolabGroupware Solution.

• System Configuration DefaultsWhile the location depends on whether you use an APT-based or RPM-based system, the contentsof the file describe system-wide configuration and service defaults, such as the location of /etc/cyrus.conf should you require such file to be in a different, non-default location. Please refer toChapter 19, System Configuration Defaults for more information on available options.

APT-based SystemsOn APT-based Systems, please use /etc/default/cyrus-imapd as the system configurationdefaults file.

RPM-based SystemsOn RPM-based Systems, please use /etc/sysconfig/cyrus-imapd as the systemconfiguration defaults file.

System Configuration Defaults

The system configuration defaults normally suffice, and should not have to be altered unlessyou have very specific requirements.

In addition to these configuration files, the following directories are used for Cyrus IMAP by default:

• /var/lib/imapCyrus IMAP stores it's databases and transactional data here, such as Sieve scripts.

• /var/spool/imapThe primary (default) IMAP partition. Please refer to Chapter 17, IMAP Partitions for

TODO: Quick To Go: Small deployments

Page 60: Kolab Groupware 2.4 Community Installation Guide en US

50

Page 61: Kolab Groupware 2.4 Community Installation Guide en US

Draft Chapter 15. Draft

51

Configuring IMAPTODO: While the defaults shipped in the Kolab Systems software packages are good to go for mostcommon Cyrus IMAP deployments, ...

Page 62: Kolab Groupware 2.4 Community Installation Guide en US

52

Page 63: Kolab Groupware 2.4 Community Installation Guide en US

Draft Chapter 16. Draft

53

Securing Cyrus IMAP CommunicationsTODO: Describe

Page 64: Kolab Groupware 2.4 Community Installation Guide en US

54

Page 65: Kolab Groupware 2.4 Community Installation Guide en US

Draft Chapter 17. Draft

55

IMAP PartitionsTODO

Page 66: Kolab Groupware 2.4 Community Installation Guide en US

56

Page 67: Kolab Groupware 2.4 Community Installation Guide en US

Draft Chapter 18. Draft

57

IMAP Option ReferenceTODO: list/table of options

Page 68: Kolab Groupware 2.4 Community Installation Guide en US

58

Page 69: Kolab Groupware 2.4 Community Installation Guide en US

Draft Chapter 19. Draft

59

System Configuration DefaultsThe following options are available in the system configuration defaults file (/etc/default/cyrus-imapd for APT-based systems and /etc/sysconfig/cyrus-imapd for RPM-based systems);

• CYRUS_CONFIGThe location of the Cyrus master configuration file, /etc/cyrus.conf by default. Valid options areexisting Cyrus configuration files.

• IMAPD_CONFIGThe location of the Cyrus IMAP configuration file, controlling aspects such as authentication, storagelocations, database types and other general Groupware infrastructure. /etc/imapd.conf bydefault. Valid options are existing Cyrus IMAP coniguration files.

• LISTENQUEUEThe size of the listen queue. 32 by default. Only integers are valid.

TODO: Figure out the maximum length/size of LISTENQUEUE

• CYRUS_VERBOSEWhat cyrus-master process. Not set by default.

TODO: Figure out useful values for CYRUS_VERBOSE

• CYRUS_OPTIONSAdditional options to pass on to the cyrus-master process. Not set by default. To get a list of validoptions, please refer to the cyrus-master(8) man page.

Page 70: Kolab Groupware 2.4 Community Installation Guide en US

60

Page 71: Kolab Groupware 2.4 Community Installation Guide en US

Draft Chapter 20. Draft

61

Creating a Cyrus Murder SetupTODO

20.1. Setting up the master update serverTODO

20.1.1. Choosing the mupdate modeTODO: on unified, replica, etc.

Page 72: Kolab Groupware 2.4 Community Installation Guide en US

62

Page 73: Kolab Groupware 2.4 Community Installation Guide en US

Draft Chapter 21. Draft

63

Creating an IMAP Backend ServerTODO

21.1. Hooking in a new backend server into a murder setupTODO

Page 74: Kolab Groupware 2.4 Community Installation Guide en US

64

Page 75: Kolab Groupware 2.4 Community Installation Guide en US

Draft Chapter 22. Draft

65

Creating an IMAP Frontend ServerTODO

22.1. Hooking in a new frontend server into a murder setupTODO

Page 76: Kolab Groupware 2.4 Community Installation Guide en US

66

Page 77: Kolab Groupware 2.4 Community Installation Guide en US

Draft Draft

67

Appendix A. Revision HistoryRevision 0 Sun May 16 2010 Dude McPants [email protected]

Initial creation of book by publican

Page 78: Kolab Groupware 2.4 Community Installation Guide en US

68

Page 79: Kolab Groupware 2.4 Community Installation Guide en US

Draft Draft

69

Index

Ffeedback

contact information for this manual, vii

Page 80: Kolab Groupware 2.4 Community Installation Guide en US

70