Blogs

Andreas Cordes's picture

XMPP now integrated in Kolab and working :-)

Now I got it.

I'm using converse.js.

Following the instructions on http://permalink.gmane.org/gmane.comp.kde.kolab.devel/12092  I got it.

Well, not only following the instructions but also to setup some more things:

First of all the config from the plugin. The main parts are

$config['converse_xmpp_bosh_prebind_url']= function($args) {
        return 'http://127.0.0.1:5280/http-bind';
};
$config['converse_xmpp_bosh_url']= function($args) {
        return '/http-bind';
};
$config['converse_xmpp_hostname']= function($args) {
        list($user,$host) = explode('@', $args['user']);
        return $host;
};
$config['converse_xmpp_username']= function($args) {
        list($user,$host) = explode('@', $args['user']);
        return $user;
};

Please check the variable name. It is in the config.inc.php from the plugin by default $rcmail_config, but the roundcubemail from kolab sources/binaries uses $config, so please change it :-)

To have the BOSH-Url available in roundcubemail, you have to redirect domain/http-bind to server:5280/htt-bind. My nginx config looks like this:
location /http-bind {
            proxy_pass  http://localhost:5280/http-bind;
            proxy_set_header Host $host;
            proxy_buffering off;
            tcp_nodelay on;
        }
Andreas Cordes's picture

XMPP now working

Hi,

my eJabberd server is now up and running and I can receive messages and send messages.

My next step is to setup the chat functionality in roundcubemail so you can send messages through a Jabber client or roundcubemail. :-)

I had to find the correct settings for my domain and the client to get it to work. So it's necessary to have proper DNS records for your domain and the services jabber is running on.

You must have a A/CNAME record for your domain (no wildcard, -> "nslookup domain.com" should work) and 3 SRV records for your domain where you setup your jabber server where all the clients and servers have to connect to.

Also you should use SASL for authentication purpose.

I prefer to have my domain as the jabber ID and not a subdomain.

greetz

roundcube's picture

Roundcube Webmail 1.0.0 released

We’re very proud to announce the stable version 1.0 of Roundcube Webmail. After more
than 8 years since the project was published, we feel confident to name it one-dot-oh.
From the last stable version we added to following new features:

  • Cleaned up the configuration into a single file
  • Importing email messages and contact group assignments
  • Advanced LDAP address book functionality
  • A toggle to switch between HTML and plaintext view
  • Save drafts in local storage for recovery
  • Canned responses to save and recall boilerplate texts
  • Improved keyboard navigation in messages list
  • Optimized UI to work on tablet devices
  • Attachment reminder plugin

And mainly we were busy cleaning up the codebase, fixing a lot of bugs, making it
more stable and writing more documentation.

With this release, we’d also like to introduce the Roundcube plugins repository at
plugins.roundcube.net. This central platform should help you
find the right plugins for your Roundcube installation and makes it simple to keep them up-to-date.
The installation and update mechanism is based on Composer
and Packagist.

We’d also like to encourage plugin developers to publish their plugins on this platform.
Please read the instructions how to prepare your
plugin for publishing.

After lots of testing and collecting your feedback, this version is considered stable
and we recommend to update all productive installations of Roundcube.

Download the fresh webmail and framework packages from roundcube.net/download

Read the full list of changes here: trac.roundcube.net/wiki/Changelog

Andreas Cordes's picture

XMPP Integration with eJabberd

Hi,

yesterday I started to implement a chat into Kolab.
I decided to use an XMPP Server connected to the Kolab-Ldap and decided to use eJabberD.
Installation was quite simple and the connection to Kolab-Ldap as well.
Download and install with the following command:

apt-get install ejabberd

and follow the instructions.
Here are my specific parameter for the auth against Kolab-LDAP (the other remain as they are):
%%{auth_method, internal}.
{auth_method, ldap}.
{ldap_servers, ["localhost"]}.
{ldap_port, 389}.
{ldap_rootdn, "cn=Directory Manager"}.
{ldap_password, "DontEvenThinkAboutIt"}.
{ldap_filter, "(objectClass=mailrecipient)"}.
{ldap_uids, [{"mail", "%u@%d"}]}.
{acl, admin, {user, "admin", "zion-control.org"}}.
{hosts, ["zion-control.org"]}.
{ldap_base, "ou=People,dc=zion-control,dc=org"}.

It's not necessary to register user in eJabberd, just create one in your kolab-webadmin.

If you want to check your eJabberD, go to :

http://youraddress:5280/admin

and login with your full mail address and password which you use for Kolab.

Next part would be to have an IM in roundcube...

greets

Timotheus Pokorra's picture

Installing Demo Version of Kolab 3.1 with Docker

This describes how to install a docker image of Kolab.

Please note: this is not meant to be for production use. The main purpose is to provide an easy way for demonstration of features and for product validation.

This installation has not been tested a lot, and could still use some fine tuning. This is just a demonstration of what could be done with Docker for Kolab.

Preparing for Docker
I am using a Jiffybox provided by DomainFactory for downloading a Docker container for Kolab 3.1 running on CentOS 6.

I have installed Ubuntu 12.04 LTS on a Jiffybox.
I am therefore following Docker Installation instructions for Ubuntu for the installation instructions:

Install a kernel that is required by Docker:

sudo apt-get update
sudo apt-get install linux-image-generic-lts-raring linux-headers-generic-lts-raring

After that, in the admin website of JiffyBox, select the custom kernel Bootmanager 64 Bit (pvgrub64); see also the german JiffyBox FAQ. Then restart your JiffyBox.

After the restart, uname -a should show something like:

Linux j89610.servers.jiffybox.net 3.8.0-37-generic #53~precise1-Ubuntu SMP Wed Feb 19 21:37:54 UTC 2014 x86_64 x86_64 x86_64 GNU/Linux

Now install docker:

Timotheus Pokorra's picture

Building a Docker container for Kolab on Jiffybox

Preparation
I am using a Jiffybox provided by DomainFactory for building a Docker container for Kolab 3.1 running on CentOS 6.

I have installed Ubuntu 12.04 LTS on a Jiffybox.
I am therefore following Docker Installation instructions for Ubuntu for the installation instructions:

Install a kernel that is required by Docker:

sudo apt-get update
sudo apt-get install linux-image-generic-lts-raring linux-headers-generic-lts-raring

After that, in the admin website of JiffyBox, select the custom kernel Bootmanager 64 Bit (pvgrub64); see also the german JiffyBox FAQ. Then restart your JiffyBox.

After the restart, uname -a should show something like:

Linux j89610.servers.jiffybox.net 3.8.0-37-generic #53~precise1-Ubuntu SMP Wed Feb 19 21:37:54 UTC 2014 x86_64 x86_64 x86_64 GNU/Linux

Now install docker:

Staffe's picture

Mit dem eigenen (VPS/Root-)Server weg von Google: Centos 6.5 + Kolab 3.2 + Owncloud 6 + Plex

Es kann viele Gründe geben, Konzerne wie Microsoft, Apple oder Google zu meiden. Wer sich dazu entschließt, aber trotzdem auf Bequemlichkeiten der “Cloud” nicht verzichten will und seine Daten aber möglichst selbst unter Kontrolle haben möchte, ist mit einem gemieteten VPS oder root-Server gut beraten. Um zu einem passablen Ergebnis zu kommen, muss aber viel installiert und konfiguriert werden. Wer sich davon nicht zurückschrecken lässt, sollte zumindest ein paar Stunden Zeit einplanen. Dieses Tutorial soll helfen, die größten Probleme zu umschiffen und dem frisch gebackenen (oder auch teilweise erfahrenen Server-Admin) stundenlange Sucherei im Internet zu ersparen.
kolab
Zur eingesetzten Software: Als Betriebssystem habe ich mich für das aktuelle CentOS 6.5 entschieden. Mit der Kolab Groupware, ein auf Roundcube aufgesetztes Webinterface, installieren wir eine moderne Web-UI inklusive Mailserver (IMAP,POP3,SMTP,Spam- und Virenfilter), Adressbuch, Kalender, Aufgaben und Active Sync (Push-Mail). Als Daten-Cloud kommt ownCloud zum Einsatz und als “Schmankerl” installieren wir noch den Plex Media Server.  Die komplette Software ist kostenlos und zum größten Teil Open Source.

grote's picture

How Kolab is using Open Standards for Interoperability

Today is Document Freedom Day which started out for documents in the OOXML days, but now is much more generally about Open Standards. This is a great opportunity to show you how Kolab uses Open Standards all the way down to the storage layer.

Since Kolab is a lot about email, it uses SMTP (RFC 821) and IMAP (RFC 1730) to send and store emails which is by itself not overly exciting since at least in the free world, most email software does that. But Kolab goes further and uses IMAP as a NoSQL storage engine and therefore gets all the scalability, ACLs and sharing from IMAP for free. It uses the IMAP METADATA Extension (RFC 5464) to storage other content and even configuration in IMAP folders. Since Kolab is a Groupware Solution, it stores contacts, events and tasks in there. Of course, it does so using Open Standards as well. Contacts are stored in the xCard (RFC 6351) format and tasks as well as events are stored in the xCal (RFC 6321) format. All those objects are then encapsulated in a MIME message according to RFC 2822.

The advantage of that is that your personal data is not scattered all over the place, but in one central IMAP database which you can easily back up (e.g. with offlineimap) or move to another server (e.g. with imapsync). The new version of Kolab supports file storage and the default is to store them in IMAP as well.

Bottom up Kolab

Introduction

Kolab Sys has been putting a lot of effort
into developing
various components to provide a turn key enterprise communication
platform. Unfortunately for me,
they seem to be more of a CentOS / RedHat shop. Also, I'm not an
enterprise.

Paul Boddie has been doing lots of work trying adapt the Kolab Sys
packages for Debian.
See Minimal Kolab and
Kolab, Debian, LDAP and XMPP
for example.

For me the Kolab packages made too many assumptions about what my
environment should
look like -- that it should be using 389-ds, Cyrus IMAP, MySQL, Postfix,
and Apache-mod-php.

However I've been a long time Debian user so I've been running OpenLDAP,
Dovecot, and as a Python
programmer I've been using apache2-mpm-worker and mod-wsgi and didn't
want to switch to
apache2-mpm-prefork.

After seeing Paul's posts about the Kolab
setup-kolab,
dependency tree and then seeing Kolab from Source.
I had the idea, what if instead of trying to install all of Kolab and
use setup-kolab, I tried
to install Kolab piecemeal and manually configure just those components for my
environment?

One question I have is how many of the Kolab components do you need to
be running before you can be considered to be running "Kolab"?

Kolab 0

The most minimal way to get started with Kolab, is to run an IMAP server
and use KDEPIM
with libkolab and libkolabxml linked in. With that (and some
configuration in akonadi) you can store contacts
and calendar information on your IMAP server and access it from other
KDEPIM clients on other computers.

Andreas Cordes's picture

Kolab and vHosts

Today I played a little with the apache config to improve my performance using apache.

I noticed that my vHost setup was not working so I fixed this at first.  After a while I was wondering that I didn't receive any mail since then... Ok, something is now "kaputt" :-)

Now I had a look at the config of kolab in the apache sites-enabled directory. Kolab adds some entries in this directory, but thos "may" work for vHosts but not for my setup.

Simply moving the kolab-syncroton from sites-available to conf.d solved the problem for me.

Not the best, may be, but it's working.

greets