Fri 04 October 2013
I have mentioned in one internal email discussion (yes, on the fabled memo-list) that I have my emails in Zarafa run by me on my own server down in the living room. And one of my colleagues asked me for some comments on IRC. After we have chatted for a moment, I thought it might be nice to have these comments collected and published as my record of the real experience with the life outside of the Cloud.
First of all my colleague asked me about my experience with the biggest danger of self-hosting, downtime and possible data loss. I have to admit that this is a place where I cheat a bit. MX records for my domain are pointed towards hosted server of my relatives’ company. Messages are then pulled down via fetchmail (yes, I know there are better options for fetching mail, but so far fetchmail seems to do the job right). Yes, I don’t have UPS and only backup I do is to rsync key information to the other computer in the home LAN (I am still ignoring TWiT ads claiming that there must be one copy of backups off site … yes, they are right, but I am afraid it would be quite expensive both in terms of required bandwidth, which is not free here, and price of the service).
The second obvious problem of self-hosting email is dealing with spam. I use dspam from Fedora EPEL 6 packages, but I am actually looking for something much more simple. Configuration of dspam is pretty tough thing to do and apparently I haven’t done it correctly, for example the admin inerface doesn’t work. I think it is time to switch to something more Unixy, simple standard tools for doing simple things. In this case I am thinking about going back to procmail and per-user bogofilter, but I haven’t enough time and courage to do it yet.
Update later: So, I’ve got rid of the dspam, and with help of trivial (mostly out of the manpage) procmailrc and this trivial Python script (yes, the name of the repository is wrong) I have hacked together the three-folder system which works pretty well.
But, these are just tools around the central server, which is in my case Zarafa. Well, Zarafa. There is a good news and bad news about Zarafa. The good news is that it actually really works. It serves for me as IMAP, CalDAV, ActiveSync server, taking care of my emails, calendars, and contacts. It works flawlessly with Thunderbird/Lightning combo (no Contacts though), my wife’s Android phone (together with CalDAV-Sync, Tasks, and ActiveSync it serves emails, calendars, contacts, and even todo list), and for my Firefox OS (for emails and calendars with native apps, unfortunately I haven’t found a good CardDAV support and all ToDo apps suck, so far). That’s the good news. Bad news is that Zarafa is AFAIK the only FLOSS application I know about which provides so complete service.
It is not a crazy memory hog as I was afraid of C++/PHP/MySQL application. Configuration is a bit complicated and some parts have to be done using own scripts or third party applications (e.g., there is no anti spam bundled, support for CardDAV is community provided and unfinished hack, backup), but I guess some of these are better provided in the paid-for enterprise version (I use pure FLOSS packages from EPEL 6; do you notice the pattern?). FLOSS version doesn’t allow calendar sharing (that’s only for enterprise version, which seems to me too much crippleware … why I cannot share my calendar with my wife?).
Also, I have a huge problem with storing all my emails in some proprietary database storage. Both because of proprietary (meaning, non-standard) and database. Emails should in my opinion be stored in mbox/Maildir/MH storage and database should be used only for indexing of such store.
I understand that Zarfa is a commercial enterprise and they need to make money for their salaries (and I am grateful they provide so much software as a free software), but it seems to me generally, their goals and mine are a bit different. I would like the best possible mail/calendar/contacts/task server using only open standards (BTW, I don’t like that the only way how to access contacts is via ActiveSync). Zarafa as a company has obviously as the biggest goal to be cheap/open-source alternative to Microsoft Exchange and it seems to me that people like me are just accidental beneficiaries of this other project.
I would love to be able to replace Zarafa with truly free and open-standard based alternative. Dovecot would probably do as a email server, there are some webmails, but I don’t know about well working and stable CalDAV/CardDAV server (and Thunderbird sucks as a CardDAV client). I may try DaviCAL one of those days, but it still seems to me hacky and too large for solely a family server (Zimbra is completely out of my league with its hardware and other requirements).
Also, webmail. It is quite popular application these days, so it must be said, that the Zarafa ones sucks. Both old one (the only one which has been packaged for EPEL 6) and which is an attempt to create 100% faithful bug-by-bug compatible copy of some ancient version of the Outlook Web Access. There is also a new more Web 2.0 like version of the webmail, but it has not been packaged in the Fedora yet (there are some problems with some Flash files or something), so I have to use upstream packages (which are kindly provided for all versions of RHEL, true). Also the new version seems to be a bit slow and I cannot say I would be keen on having it as my day-to-day client. On the other hand, it certainly gets job done when one is outside of the real computer, which I think is the most important role of webmail anyway.