Samstag, 3. Mai 2014

100 days and no mayor probs

Since now I'm using +Kolab on my +Raspberry Pi  for 100 days.

Syncroton (Active-Sync) is working like a charme, access to my files via WebDav is also working.

After changing the webserver from +Apache  to +Nginx the performance in using roundcube is now ok and after the logrotate during midnight I had no sync problems any more with my mobile.

Power consumption is below 3W so it costs only about 7€ per year (0,60€ per month) which is really cheap. Ok you have to add 1€ per month for the domain if you use +regfish for the domain. 

A few days ago I exported all my contacts hosted on the google server and imported them into Kolab. 
So if you don't like to let google know the phone number from your grandma and so on it's up to you to change this and get your own groupware on your server at your home :-)

BTW you can do a lot of other things with your Raspberry Pi.


Greetz

Donnerstag, 17. April 2014

Storing files in Kolab does not work

Hello,

yesterday I needed the functionality of storing files in +Kolab.

I found out that this does not work on my installation.


This is a known bug in cyrus.

https://lists.kolabsys.com/pipermail/packaging-commits/2012-November/007932.html
https://bugzilla.cyrusimap.org/show_bug.cgi?id=3754


Raspbian does not have an updated package :-( so I started the compile issue again but now for a raspbian package.

To do the changes I downloaded the package cyrus-imapd and tried to compile like I did for all the +Kolab packages. But that didn't fix the error because I had to modify imap/message.c.

Ok, googling showed me that I have to use the right method with quilt.

So here are the instructions
apt-get -y source cyrus-imapd
apt-get -y build-dep cyrus-imapd
cd cyrus-imapd-2.4-2.4.16
quilt push -a
quilt new failed_asserting_during_append
quilt add imap/message.c

Edit the file imap/message.c. In line 389 add the line:
message_guid_generate(&(*body)->guid, msg.base, msg.len);
And continue with the following commands
quilt refresh
debuild -us -uc -b

and now go for coffee break :-)

After less than 2 hours you can install the new package.


cd ..
dpkg -i cyrus-imapd-2.4_2.4.16-4+deb7u1_all.deb 

To get the indexes working on the existing files you have to reconstruct the mailboxes with the following command:
cyrreconstruct -C /etc/imapd.conf -fr 'user/name/Files@domain'

You can also mount the files in Windows. For me only the command line is working. So click on Start->run (or press Windows-R) and enter the following command:
net use x: https://example.com/iRony/files/ YourPasswordGoesHere /user:primary.email@example.com
The impatient people can you use my prebuild package on my APT-Repo
deb http://kolab-deb.zion-contro.org / 
greetz


Samstag, 12. April 2014

NGINX

Hello,

I create a new page with my nginx config to cover all changes and mods which I've done on my Raspberry Pi.

The instructions are based on http://kolab.org/blog/grote/2013/07/08/using-kolab-3-nginx and https://docs.kolab.org/howtos/nginx-webserver.html.


So feel free to leave any comments and to get your Kolab running on your Pi with a bit more performance.

More tuning tips are welcome. :-)

greetz

Freitag, 11. April 2014

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;
        }

And now the ejabberd.cfg. When you install ejabberd and connect it to kolab-ldap, binding also seems to work (domain:5280/http-bind) but it doesn't. You need explicitly to activate it in the "modules"-section!
I forgot this and struggled around nearly 4 hours to find the error.

So the changes in modules section are
  {mod_shared_roster,[
                {'ldap_base', 'ou=People,dc=example,dc=com'},
                {'ldap_rfilter', '(objectClass=kolabinetorgperson)'},
                {'ldap_memberattr', 'uid'},
                {'ldap_userdesc', 'cn'},
                {'ldap_filter', '(objectClass=kolabinetorgperson)'},
                {'ldap_useruid', 'uid'}
        ]},
  {mod_http_bind,[]}

greetz 

Dienstag, 8. April 2014

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

Montag, 31. März 2014

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

Donnerstag, 13. März 2014

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